Skip to content

fix(desktop): open Settings as an overlay so it doesn't end the session#26

Merged
ralyodio merged 1 commit into
masterfrom
fix/settings-overlay-keeps-session
Jun 23, 2026
Merged

fix(desktop): open Settings as an overlay so it doesn't end the session#26
ralyodio merged 1 commit into
masterfrom
fix/settings-overlay-keeps-session

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

Bug

In an active session, opening Settings and coming back closed the session.

Settings was a sibling route under AppLayout, so navigate('/settings') unmounted HomePage → which ran CapturePreview's unmount cleanup (stopHosting) → dropped the host from the LiveKit room and ended the session (also restarting egress, which traps YouTube on "Preparing"). Returning landed on a fresh HomePage with no session.

Fix

Settings now renders as a full-screen overlay (new useUIStore) over the still-mounted Home, so the session keeps running underneath. All entry points covered:

  • main-process menu/tray IPC ('navigate' -> '/settings') intercepted in main.tsx (this is the Linux path — TitleBar is null on Linux)
  • mac/win TitleBar button opens the overlay
  • Back button closes it

The unmounting /settings route is removed; the overlay is scoped to the content area so the custom title bar stays usable.

Tests

useUIStore open/close; AppLayout keeps children mounted and toggles the overlay. Full desktop suite green (472 tests).

Ships in the Electron app (desktop release).

🤖 Generated with Claude Code

Settings was a sibling route under AppLayout, so navigating to it unmounted
HomePage — which ran CapturePreview's unmount cleanup (stopHosting), dropping
the host from the LiveKit room and ending the live session (and restarting
egress, which traps YouTube on "Preparing"). Coming back landed on a fresh
HomePage with no session.

Settings now renders as a full-screen overlay (new useUIStore) over the still
-mounted Home, so the session keeps running underneath. All entry points are
covered: the main-process menu/tray IPC ('navigate' -> '/settings') is
intercepted in main.tsx, the mac/win TitleBar button opens the overlay, and
the Back button closes it. The unmounting '/settings' route is removed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@ralyodio ralyodio merged commit c7cda0f into master Jun 23, 2026
10 checks passed
@ralyodio ralyodio deleted the fix/settings-overlay-keeps-session branch June 23, 2026 08:36
@github-actions

Copy link
Copy Markdown

vu1nz Security Review

0 finding(s) in PR #?

No security issues found.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant