perf: prevent background from being mounted when not in use

This commit is contained in:
SethBurkart123
2024-02-09 18:22:58 +11:00
parent 410b817cca
commit 871cef91cb
9 changed files with 53 additions and 10 deletions
+11
View File
@@ -11,6 +11,7 @@ import {
} from '../../SEQTA';
import { updateBgDurations } from '../ui/Animation';
import { getDarkMode, updateAllColors } from '../ui/colors/Manager';
import { appendBackgroundToUI } from '../ui/ImageBackgrounds';
export default class StorageListener {
@@ -21,6 +22,7 @@ export default class StorageListener {
}
handleStorageChanges(changes: any) {
console.log('Storage changed:', changes);
Object.keys(changes).forEach((changeKey) => {
switch (changeKey) {
@@ -80,6 +82,15 @@ export default class StorageListener {
document.documentElement.classList.remove('transparencyEffects');
}
break;
case 'theme':
if (changes.theme.newValue === '' && changes.theme.oldValue !== '') {
document.querySelector('iframe#background')?.remove();
} else if (changes.theme.newValue !== '' && changes.theme.oldValue === '') {
appendBackgroundToUI();
}
break;
// Add default case if you need to handle a case where changeKey does not match any case
default: