From d9521c58bf9b9fef0c8b1248bf6ce8c69351fc16 Mon Sep 17 00:00:00 2001 From: Kuuuube <61125188+Kuuuube@users.noreply.github.com> Date: Wed, 19 Jun 2024 12:57:21 -0400 Subject: Remove flickering on page loads, reduce flashbangs, fix settings and popup themes applying correctly (#1088) * Pull theme from settings on page load * Make dark mode default * Fix flickering on load * Invert shadow for auto shadow theme * Revert "Make dark mode default" This reverts commit 4cdfc39686a9faa3ce7a620be23025f97816f5f9. * Improve page load times * Fix flicker on load for popup preview without breaking theming when auto is selected * Revert shadow invert --- ext/js/pages/welcome-main.js | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'ext/js/pages/welcome-main.js') diff --git a/ext/js/pages/welcome-main.js b/ext/js/pages/welcome-main.js index 56a7e7d8..6771b31e 100644 --- a/ext/js/pages/welcome-main.js +++ b/ext/js/pages/welcome-main.js @@ -58,6 +58,17 @@ async function checkNeedsCustomTemplatesWarning() { } await Application.main(true, async (application) => { + const modalController = new ModalController(); + modalController.prepare(); + + const settingsController = new SettingsController(application); + await settingsController.prepare(); + + const settingsDisplayController = new SettingsDisplayController(settingsController, modalController); + await settingsDisplayController.prepare(); + + document.body.hidden = false; + const documentFocusController = new DocumentFocusController(); documentFocusController.prepare(); @@ -74,12 +85,6 @@ await Application.main(true, async (application) => { const preparePromises = []; - const modalController = new ModalController(); - modalController.prepare(); - - const settingsController = new SettingsController(application); - await settingsController.prepare(); - const genericSettingController = new GenericSettingController(settingsController); preparePromises.push(setupGenericSettingsController(genericSettingController)); @@ -92,9 +97,6 @@ await Application.main(true, async (application) => { const languagesController = new LanguagesController(settingsController); preparePromises.push(languagesController.prepare()); - const settingsDisplayController = new SettingsDisplayController(settingsController, modalController); - settingsDisplayController.prepare(); - await Promise.all(preparePromises); document.documentElement.dataset.loaded = 'true'; -- cgit v1.2.3