Skip to content

polish terminal selector sheets - #66

Merged
h3nock merged 3 commits into
mainfrom
feature/terminal-selector-sheets
Aug 13, 2026
Merged

polish terminal selector sheets#66
h3nock merged 3 commits into
mainfrom
feature/terminal-selector-sheets

Conversation

@h3nock

@h3nock h3nock commented Aug 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • Use native navigation chrome across the Sessions, Windows, and Panes sheets.
  • Align their context labels and pinned bottom actions consistently.
  • Keep fitted Window and Pane sheets within the available screen height, with scrolling when their content exceeds it.
  • Place session discovery refresh beside the Available section it affects.

Testing

  • Verified Sessions, Available Sessions, Windows, and Panes on a physical iPhone and the iPhone simulator.
  • Verified portrait and landscape layouts, fitted heights, scrolling, navigation, and pinned actions.
  • Focused session, discovery, and picker-layout tests pass.

Summary by CodeRabbit

  • New Features
    • Updated session switching with inline navigation, contextual labels, refresh controls, and a close action.
    • Refreshed selection sheets with native navigation, clearer controls, and improved accessibility.
  • Bug Fixes
    • Improved selection-sheet sizing across screen dimensions and landscape layouts.
    • Preserved more usable content space by accounting for navigation-bar height.

@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying remux with  Cloudflare Pages  Cloudflare Pages

Latest commit: 411cf5f
Status: ✅  Deploy successful!
Preview URL: https://1581e904.remux-agx.pages.dev
Branch Preview URL: https://feature-terminal-selector-sh.remux-agx.pages.dev

View logs

@coderabbitai

coderabbitai Bot commented Aug 13, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 7201c898-4a10-4f16-8592-cce338e4b680

📥 Commits

Reviewing files that changed from the base of the PR and between 38c1b48 and 411cf5f.

📒 Files selected for processing (5)
  • RemuxApp/Sources/App/SessionSwitcherView.swift
  • RemuxApp/Sources/Ghostty/GhosttySurfaceScreen.swift
  • RemuxApp/Sources/Ghostty/GhosttySurfaceSelectionSheet.swift
  • RemuxApp/Sources/Ghostty/TerminalSelectionSheetStyle.swift
  • RemuxAppTests/PanePreviewLayoutTests.swift

📝 Walkthrough

Walkthrough

The change replaces scaffold-based selector sheets with inline navigation layouts. It adds native navigation-bar-aware sizing, toolbar close controls, inline refresh controls, and a bottom session-creation action bar.

Changes

Selection sheet navigation

Layer / File(s) Summary
Shared navigation-aware layout contract
RemuxApp/Sources/Ghostty/TerminalSelectionSheetStyle.swift
TerminalSelectionSheetLayout measures native navigation chrome. TerminalSelectionSheetContent replaces the scaffold header and adds spacing below the navigation bar.
Selection sheet presentation and sizing
RemuxApp/Sources/Ghostty/GhosttySurfaceSelectionSheet.swift, RemuxApp/Sources/Ghostty/GhosttySurfaceScreen.swift, RemuxAppTests/PanePreviewLayoutTests.swift
Window and pane sheets use NavigationStack with toolbar dismiss buttons. Sheet content and detent calculations include navigation-bar height. Tests use the updated sizing APIs.
Session switcher inline navigation
RemuxApp/Sources/App/SessionSwitcherView.swift
The session switcher uses an inline title, toolbar close button, inline refresh control, session context label, and bottom create-session action bar.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Mergeability Score: ⚪ Minimal · up to 411cf

This PR refines terminal selector sheet navigation, sizing, scrolling, and action placement; no actionable merge-blocking risk remains beyond normal checks and review.

Possibly related PRs

  • h3nock/remux#21: Introduced the session and terminal selector sheet implementations refined here.
  • h3nock/remux#48: Modified the same selector views and scaffold-based presentation.
  • h3nock/remux#64: Shared the terminal selection-sheet layout and sizing APIs.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main changes to the terminal selector sheets.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/terminal-selector-sheets

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying getremux with  Cloudflare Pages  Cloudflare Pages

Latest commit: 411cf5f
Status: ✅  Deploy successful!
Preview URL: https://f863ebd0.getremux.pages.dev
Branch Preview URL: https://feature-terminal-selector-sh.getremux.pages.dev

View logs

@h3nock
h3nock marked this pull request as ready for review August 13, 2026 11:56
@h3nock
h3nock merged commit f520952 into main Aug 13, 2026
6 checks passed
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