diff --git a/src/pages/problems/problems.js b/src/pages/problems/problems.js
index df7156ffa..b3d9d5a3c 100644
--- a/src/pages/problems/problems.js
+++ b/src/pages/problems/problems.js
@@ -59,7 +59,7 @@ export default function Problems() {
});
$content.addEventListener("click", clickHandler);
- $page.content = $content;
+ $page.body = $content;
app.append($page);
helpers.showAd();
diff --git a/src/pages/quickTools/quickTools.js b/src/pages/quickTools/quickTools.js
index 5970fa7f6..81c4c7b1b 100644
--- a/src/pages/quickTools/quickTools.js
+++ b/src/pages/quickTools/quickTools.js
@@ -31,7 +31,7 @@ export default function QuickTools() {
* @param {WCPage} $page
*/
function render($page) {
- $page.content = (
+ $page.body = (
{(() => {
const totalRows = settings.QUICKTOOLS_ROWS * settings.QUICKTOOLS_GROUPS;
diff --git a/src/theme/builder.js b/src/theme/builder.js
index 0d61ff4bd..293248518 100644
--- a/src/theme/builder.js
+++ b/src/theme/builder.js
@@ -283,6 +283,10 @@ export default class ThemeBuilder {
.hex.toString();
}
+ matches(id) {
+ return this.id.toLowerCase() === id.toLowerCase();
+ }
+
/**
* Creates a theme from a CSS string
* @param {string} name
diff --git a/src/theme/list.js b/src/theme/list.js
index b8f13a57a..50023c6eb 100644
--- a/src/theme/list.js
+++ b/src/theme/list.js
@@ -14,13 +14,6 @@ let firstTime = true;
function init() {
themes.forEach((theme) => add(theme));
- const { appTheme } = settings.value;
- if (appTheme !== "system") {
- apply(appTheme);
- } else {
- updateSystemTheme(isDeviceDarkTheme());
- themeApplied = true;
- }
}
/**
@@ -68,6 +61,17 @@ function add(theme) {
if (appThemes.has(theme.id)) return;
appThemes.set(theme.id, theme);
+
+ const { appTheme } = settings.value;
+
+ if (theme.matches(appTheme)) {
+ if (appTheme !== "system") {
+ apply(appTheme);
+ } else {
+ updateSystemTheme(isDeviceDarkTheme());
+ themeApplied = true;
+ }
+ }
}
/**