summaryrefslogtreecommitdiff
path: root/ext/js/pages/generic-page-main.js
diff options
context:
space:
mode:
authorKuuuube <61125188+Kuuuube@users.noreply.github.com>2024-06-20 13:10:07 -0400
committerGitHub <noreply@github.com>2024-06-20 17:10:07 +0000
commit8f33cb76cbe7c86ad6ee3cd6700c40f82dc7230d (patch)
tree712b8b873dc0b406028b7f61d899cb33bedc0106 /ext/js/pages/generic-page-main.js
parent9f4e595c7264a52ab85eb07c4d1411e4efb09ab1 (diff)
Fix scrollbars on info, legal, and issues; add theming to legal and issues (#1096)
* Add theming support to generic-page-main.js * Mark scrollbars on info, issues, and legal * Remove quick-start-guide-main.js in favor of generic-page-main.js * Default body to hidden on issues and legal
Diffstat (limited to 'ext/js/pages/generic-page-main.js')
-rw-r--r--ext/js/pages/generic-page-main.js25
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();
+});