mirror of
https://github.com/redphx/better-xcloud.git
synced 2025-06-07 16:17:20 +02:00
Fix watchHeader() being called multiple times
This commit is contained in:
parent
5bfcf3a044
commit
9e39e80309
@ -37,6 +37,8 @@ export class HeaderSection {
|
|||||||
HeaderSection.#$settingsBtn,
|
HeaderSection.#$settingsBtn,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
static #observer: MutationObserver;
|
||||||
|
|
||||||
static #injectSettingsButton($parent?: HTMLElement) {
|
static #injectSettingsButton($parent?: HTMLElement) {
|
||||||
if (!$parent) {
|
if (!$parent) {
|
||||||
return;
|
return;
|
||||||
@ -77,11 +79,13 @@ export class HeaderSection {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let timeout: number | null;
|
let timeout: number | null;
|
||||||
const observer = new MutationObserver(mutationList => {
|
|
||||||
|
HeaderSection.#observer && HeaderSection.#observer.disconnect();
|
||||||
|
HeaderSection.#observer = new MutationObserver(mutationList => {
|
||||||
timeout && clearTimeout(timeout);
|
timeout && clearTimeout(timeout);
|
||||||
timeout = window.setTimeout(HeaderSection.checkHeader, 2000);
|
timeout = window.setTimeout(HeaderSection.checkHeader, 2000);
|
||||||
});
|
});
|
||||||
observer.observe($header, {subtree: true, childList: true});
|
HeaderSection.#observer.observe($header, {subtree: true, childList: true});
|
||||||
|
|
||||||
HeaderSection.checkHeader();
|
HeaderSection.checkHeader();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user