feat: Settings uses the width of a wide screen: groups sit in two columns, each narrow enough that a row's control stays near its name (M503 #5595)
release / govulncheck (push) Successful in 15s
release / web (push) Successful in 1m24s
release / go (push) Successful in 1m41s
release / integration (push) Successful in 5m13s
release / android (push) Successful in 5m15s
release / Build signed APK (releases and dev) (push) Successful in 5m25s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Successful in 26s
release / Verify release artifacts (tag releases only) (push) Skipped

The content was capped at max-w-3xl, so a wide window showed one narrow
strip and a lot of empty space. SettingsColumns lays a page's groups out as
one column on a phone or narrow window and two side by side from xl up;
the page cap moves to 100rem so the columns don't stretch on a very wide
screen.

- Account: Android app, Profile and Password, with Signed-in devices beside.
- Playback: "Between tracks" (crossfade) beside "Volume leveling".
- Connections: ListenBrainz beside Subsonic apps.
- Appearance, Notifications, About: one column's width.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-11 10:28:06 -04:00
co-authored by Claude Opus 5.5
parent ace7e22e6a
commit 864eb45580
9 changed files with 291 additions and 208 deletions
+15 -10
View File
@@ -1,4 +1,5 @@
<script lang="ts">
import SettingsColumns from '#lib/components/settings/SettingsColumns.svelte';
import { pageTitle } from '#lib/branding.js';
import { user } from '#lib/auth/user.svelte.js';
import ServerVersion from '#lib/components/ServerVersion.svelte';
@@ -8,13 +9,17 @@
<svelte:head><title>{pageTitle('Settings · About')}</title></svelte:head>
<SettingsGroup title="About">
<SettingRow label="Server version">
<ServerVersion />
</SettingRow>
{#if user.value}
<SettingRow label="Signed in as">
<span class="text-sm text-text-secondary">{user.value.username}</span>
</SettingRow>
{/if}
</SettingsGroup>
<SettingsColumns>
{#snippet main()}
<SettingsGroup title="About">
<SettingRow label="Server version">
<ServerVersion />
</SettingRow>
{#if user.value}
<SettingRow label="Signed in as">
<span class="text-sm text-text-secondary">{user.value.username}</span>
</SettingRow>
{/if}
</SettingsGroup>
{/snippet}
</SettingsColumns>