Repository navigation
feat(receiver): add pane fullscreen shortcut and drag-to-remove - #126
Draft
raiseCatError wants to merge 1 commit into
Draft
raiseCatError wants to merge 1 commit into
raiseCatError wants to merge 1 commit into
Conversation
… to Remove from Layout Double-tapping an existing pane's title toggles Fullscreen on This Device (presentation only; the saved arrangement is restored exactly). The first tap still acts immediately, and label taps never reach the Mac. While repositioning a whole pane with others left, a Remove from Layout target appears beside Cancel. It removes the pane from this device's layout only (one undo step) and is never offered for tabs, Stage Peek windows or apps, or the last pane. Same behavior on iOS/iPadOS/Mac receiver (shared SwiftUI) and Android. Refs #120
This was referenced Nov 2, 2026
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements parts A and B of #120 (and the wording part of C).
Behavior
Double-tap a pane title → Fullscreen on This Device; double-tap again → the previous arrangement.
enterLocalFullscreen/exitLocalFullscreen(presentation only: the saved tree, pane order, sizes and tabs are untouched, so restore is exact). No Mac window geometry or display-mode change.Drag an existing pane → Cancel or Remove from Layout.
.pane(id, tab: nil)drags in Window mode with another pane left. Never for tabs, Stage Peek windows/apps, new panes, or the last pane (its menu still has Remove from Layout).removeTile(one undo step). It never sendswindowCloseorwindowAction(asserted in tests).Wording: menu accessibility hints now state that fullscreen affects only this device and that Remove keeps the Mac window open.
WINDOW_MODE.mdandRECEIVER_CONTROLS.mdare updated to the shipped behavior.Verification
OpenSidecarMacTests/WorkspaceClientTests: 22/22 pass, including the newtestDoubleTapFullscreenToggleRestoresTheExactLayoutandtestDraggingAPaneToRemoveTakesItOutOfTheLayoutOnly.OpenSidecariOS): succeeds.:app:compileDebugKotlin: succeeds. No Android unit test (the controller needs aContext; there's no Robolectric).Limitation
A pane holding several tabs can't be dragged to Remove, because each of its labels is a tab drag; its menu still offers Remove from Layout.