diff --git a/LOTUS_TESTING.md b/LOTUS_TESTING.md index 3bca4e865..9ad4122e7 100644 --- a/LOTUS_TESTING.md +++ b/LOTUS_TESTING.md @@ -675,6 +675,8 @@ Run the axe DevTools extension (or Lighthouse → Accessibility) on a room view, ## Outstanding verification backlog +**Custom Window Chrome (Beta) fix (2026-07):** on the desktop build, Settings → General → toggle **Custom Window Chrome** — it should reload and come up with the Lotus title bar and a normal, stable feed (no screen-expand / auto-scroll-into-the-past). Toggle back off → reloads to the native frame. + _Ported from the retired `LOTUS_BUGS.md` (2026-07). Compact index of shipped-but-not-live-tested items; the detailed steps are in the lettered sections above._ Implemented and gate-green; confirm each per `LOTUS_TESTING.md`, then delete the row. diff --git a/src/app/features/settings/general/General.tsx b/src/app/features/settings/general/General.tsx index 528cf6c74..adb5c5295 100644 --- a/src/app/features/settings/general/General.tsx +++ b/src/app/features/settings/general/General.tsx @@ -118,12 +118,21 @@ import { SettingsSelect } from '../../../components/settings-select/SettingsSele function DesktopChromeSetting() { const [customChrome, setCustomChrome] = useAtom(customWindowChromeAtom); if (!isTauriEnv()) return null; + // Persist the flag, then reload so the window layout is rebuilt from scratch. + // Toggling live reflows the whole app while the room timeline is mounted, which + // resizes its virtualized scroll container and triggers runaway back-pagination + // (the "screen expands + auto-scrolls into the past" bug). A reload applies the + // chrome cleanly against a fresh, correct layout. + const handleToggle = (value: boolean) => { + setCustomChrome(value); + window.location.reload(); + }; return ( } + description="Replace the system title bar with a Lotus-styled one. Desktop only — reloads to apply." + after={} /> ); diff --git a/src/app/pages/App.tsx b/src/app/pages/App.tsx index 1ca919eb0..0632a2777 100644 --- a/src/app/pages/App.tsx +++ b/src/app/pages/App.tsx @@ -110,7 +110,11 @@ function DesktopChrome({ children }: { children: ReactNode }) {