From 70cda2325f2d3bc5bb16bb0ba6d08b785866639c Mon Sep 17 00:00:00 2001 From: Samuel K Date: Sun, 20 Sep 2026 22:21:17 -0600 Subject: [PATCH 1/2] fix(desktop): remove broken settings section navigation Signed-off-by: Samuel K --- desktop/src/renderer/src/pages/SettingsPage.svelte | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/desktop/src/renderer/src/pages/SettingsPage.svelte b/desktop/src/renderer/src/pages/SettingsPage.svelte index ca7b9b8a5..e8d016acb 100644 --- a/desktop/src/renderer/src/pages/SettingsPage.svelte +++ b/desktop/src/renderer/src/pages/SettingsPage.svelte @@ -142,15 +142,7 @@ function toggleLocal(key: keyof LocalOptions) {

Settings

-
- - -
+

General

{#if loading} @@ -370,6 +362,5 @@ function toggleLocal(key: keyof LocalOptions) {
-
From 210326b7f4dcb8a0d9a7a738c122cb4f5886884e Mon Sep 17 00:00:00 2001 From: Samuel K Date: Sun, 20 Sep 2026 22:21:46 -0600 Subject: [PATCH 2/2] test(desktop): cover continuous settings layout Signed-off-by: Samuel K --- .../renderer/src/pages/SettingsPage.test.ts | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 desktop/src/renderer/src/pages/SettingsPage.test.ts diff --git a/desktop/src/renderer/src/pages/SettingsPage.test.ts b/desktop/src/renderer/src/pages/SettingsPage.test.ts new file mode 100644 index 000000000..aae0ce7c5 --- /dev/null +++ b/desktop/src/renderer/src/pages/SettingsPage.test.ts @@ -0,0 +1,25 @@ +import { render, screen } from "@testing-library/svelte" +import { afterEach, describe, expect, it, vi } from "vitest" + +vi.mock("$lib/components/update/UpdatesPanel.svelte", () => ({ + default: vi.fn(), +})) + +import SettingsPage from "./SettingsPage.svelte" + +describe("SettingsPage layout", () => { + afterEach(() => { + document.body.innerHTML = "" + }) + + it("renders all settings sections as one page without section navigation links", () => { + render(SettingsPage) + + expect(screen.queryByRole("navigation", { name: "Settings sections" })).toBeNull() + expect(document.querySelectorAll('a[href^="#"]')).toHaveLength(0) + + for (const name of ["General", "Appearance", "Updates", "Advanced"]) { + expect(screen.getByRole("heading", { name, level: 2 })).toBeTruthy() + } + }) +})