From 67fcbd16781db96e341d7c9207fe7a707b142fd2 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Mon, 16 Feb 2026 12:23:32 +0100 Subject: [PATCH] Keep custom theme active after reload (#32506) * fix: keep custom theme active after reload * test: add e2e test * test: fix matrix chat test --- .../appearance-user-settings-tab/index.ts | 10 +++++++++ .../theme-choice-panel.spec.ts | 21 ++++++++++++++++++ .../window-custom-theme-linux.png | Bin 0 -> 59200 bytes src/components/structures/MatrixChat.tsx | 3 +++ .../components/structures/MatrixChat-test.tsx | 1 + 5 files changed, 35 insertions(+) create mode 100644 playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/window-custom-theme-linux.png diff --git a/playwright/e2e/settings/appearance-user-settings-tab/index.ts b/playwright/e2e/settings/appearance-user-settings-tab/index.ts index d27b472017..a7c49bc2f1 100644 --- a/playwright/e2e/settings/appearance-user-settings-tab/index.ts +++ b/playwright/e2e/settings/appearance-user-settings-tab/index.ts @@ -36,6 +36,9 @@ class Helpers { name: "Custom theme", isDark: false, colors: {}, + compound: { + "--cpd-color-bg-canvas-default": "tomato", + }, }; constructor( @@ -50,6 +53,13 @@ class Helpers { return this.app.settings.openUserSettings("Appearance"); } + /** + * Close the appearance tab + */ + closeAppearanceTab() { + return this.app.settings.closeDialog(); + } + /** * Compare screenshot and hide the matrix chat * @param locator diff --git a/playwright/e2e/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts b/playwright/e2e/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts index 7198e1fd82..8b7cf720c8 100644 --- a/playwright/e2e/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts +++ b/playwright/e2e/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts @@ -88,6 +88,27 @@ test.describe("Appearance user settings tab", () => { await expect(util.getThemePanel()).toMatchScreenshot("theme-panel-custom-theme-removed.png"); }, ); + + test( + "should keep custom theme when reloading the page", + { tag: "@screenshot" }, + async ({ page, app, user, util }) => { + await util.addCustomTheme(); + await util.getCustomTheme().click(); + await util.closeAppearanceTab(); + + await expect(page).toMatchScreenshot("window-custom-theme.png"); + + await page.reload(); + + await util.openAppearanceTab(); + // Assert that the custom theme is still selected after reloading the page + await expect(util.getCustomTheme()).toBeChecked(); + + await util.closeAppearanceTab(); + await expect(page).toMatchScreenshot("window-custom-theme.png"); + }, + ); }); }); }); diff --git a/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/window-custom-theme-linux.png b/playwright/snapshots/settings/appearance-user-settings-tab/theme-choice-panel.spec.ts/window-custom-theme-linux.png new file mode 100644 index 0000000000000000000000000000000000000000..66963ae433cdcaf30f729243da71e281364810f0 GIT binary patch literal 59200 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 { return; } + // Re-apply theme now that account data (including custom_themes) is loaded, otherwise we might end up with the wrong theme applied if the user has custom themes enabled + setTheme(); + this.firstSyncComplete = true; this.firstSyncPromise.resolve(); diff --git a/test/unit-tests/components/structures/MatrixChat-test.tsx b/test/unit-tests/components/structures/MatrixChat-test.tsx index 8bffcda5d6..fe9676d753 100644 --- a/test/unit-tests/components/structures/MatrixChat-test.tsx +++ b/test/unit-tests/components/structures/MatrixChat-test.tsx @@ -78,6 +78,7 @@ jest.mock("matrix-js-sdk/src/oidc/authorize", () => ({ // Stub out ThemeWatcher as the necessary bits for themes are done in element-web's index.html and thus are lacking here, // plus JSDOM's implementation of CSSStyleDeclaration has a bunch of differences to real browsers which cause issues. jest.mock("../../../../src/settings/watchers/ThemeWatcher"); +jest.mock("../../../../src/theme"); /** The matrix versions our mock server claims to support */ const SERVER_SUPPORTED_MATRIX_VERSIONS = ["v1.1", "v1.5", "v1.6", "v1.8", "v1.9"];