diff options
Diffstat (limited to 'ext/js/pages/generic-page-main.js')
-rw-r--r-- | ext/js/pages/generic-page-main.js | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/ext/js/pages/generic-page-main.js b/ext/js/pages/generic-page-main.js index 3d5356ba..5f82257e 100644 --- a/ext/js/pages/generic-page-main.js +++ b/ext/js/pages/generic-page-main.js @@ -16,11 +16,28 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ +import {ThemeController} from '../app/theme-controller.js'; +import {Application} from '../application.js'; import {DocumentFocusController} from '../dom/document-focus-controller.js'; import {ExtensionContentController} from './common/extension-content-controller.js'; +import {SettingsController} from './settings/settings-controller.js'; + +await Application.main(true, async (application) => { + const settingsController = new SettingsController(application); + await settingsController.prepare(); + /** @type {ThemeController} */ + const themeController = new ThemeController(document.documentElement); + themeController.prepare(); + const optionsFull = await application.api.optionsGetFull(); + const {profiles, profileCurrent} = optionsFull; + const primaryProfile = (profileCurrent >= 0 && profileCurrent < profiles.length) ? profiles[profileCurrent] : null; + if (primaryProfile !== null) { + themeController.theme = primaryProfile.options.general.popupTheme; + themeController.siteOverride = true; + themeController.updateTheme(); + } + document.body.hidden = false; -/** Entry point. */ -function main() { const documentFocusController = new DocumentFocusController(); documentFocusController.prepare(); @@ -28,6 +45,4 @@ function main() { extensionContentController.prepare(); document.documentElement.dataset.loaded = 'true'; -} - -main(); +}); |