summaryrefslogtreecommitdiff
path: root/ext/js/pages/settings
diff options
context:
space:
mode:
Diffstat (limited to 'ext/js/pages/settings')
-rw-r--r--ext/js/pages/settings/settings-display-controller.js11
-rw-r--r--ext/js/pages/settings/settings-main.js13
2 files changed, 17 insertions, 7 deletions
diff --git a/ext/js/pages/settings/settings-display-controller.js b/ext/js/pages/settings/settings-display-controller.js
index e179b835..a2150a15 100644
--- a/ext/js/pages/settings/settings-display-controller.js
+++ b/ext/js/pages/settings/settings-display-controller.js
@@ -47,9 +47,9 @@ export class SettingsDisplayController {
}
/** */
- prepare() {
+ async prepare() {
this._themeController.prepare();
- void this._updateTheme();
+ await this._setTheme();
const onFabButtonClick = this._onFabButtonClick.bind(this);
for (const fabButton of /** @type {NodeListOf<HTMLElement>} */ (document.querySelectorAll('.fab-button'))) {
@@ -99,6 +99,13 @@ export class SettingsDisplayController {
}
/** */
+ async _setTheme() {
+ this._themeController.theme = (await this._settingsController.getOptions()).general.popupTheme;
+ this._themeController.siteOverride = true;
+ this._themeController.updateTheme();
+ }
+
+ /** */
async _updateTheme() {
const theme = this._themeDropdown?.value;
if (theme === 'site' || theme === 'light' || theme === 'dark' || theme === 'browser') {
diff --git a/ext/js/pages/settings/settings-main.js b/ext/js/pages/settings/settings-main.js
index a315eac4..ebb51276 100644
--- a/ext/js/pages/settings/settings-main.js
+++ b/ext/js/pages/settings/settings-main.js
@@ -91,6 +91,14 @@ await Application.main(true, async (application) => {
const settingsController = new SettingsController(application);
await settingsController.prepare();
+ const settingsDisplayController = new SettingsDisplayController(settingsController, modalController);
+ await settingsDisplayController.prepare();
+
+ document.body.hidden = false;
+
+ const popupPreviewController = new PopupPreviewController(settingsController);
+ popupPreviewController.prepare();
+
const persistentStorageController = new PersistentStorageController(application);
preparePromises.push(persistentStorageController.prepare());
@@ -124,9 +132,6 @@ await Application.main(true, async (application) => {
const ankiTemplatesController = new AnkiTemplatesController(application, settingsController, modalController, ankiController);
preparePromises.push(ankiTemplatesController.prepare());
- const popupPreviewController = new PopupPreviewController(settingsController);
- popupPreviewController.prepare();
-
const scanInputsController = new ScanInputsController(settingsController);
preparePromises.push(scanInputsController.prepare());
@@ -169,8 +174,6 @@ await Application.main(true, async (application) => {
const sortFrequencyDictionaryController = new SortFrequencyDictionaryController(settingsController);
preparePromises.push(sortFrequencyDictionaryController.prepare());
- const settingsDisplayController = new SettingsDisplayController(settingsController, modalController);
- settingsDisplayController.prepare();
await Promise.all(preparePromises);