Skip to content

fix(mobile): add close controls to tablet files and terminal - #11115

Merged
juliusmarminge merged 1 commit into
mainfrom
t3code/fix-tablet-pane-close
Sep 10, 2026
Merged

fix(mobile): add close controls to tablet files and terminal#11115
juliusmarminge merged 1 commit into
mainfrom
t3code/fix-tablet-pane-close

Conversation

@juliusmarminge

@juliusmarminge juliusmarminge commented Sep 10, 2026

Copy link
Copy Markdown
Member

On iPad, the persistent Files pane has no local close control, and the split-view Terminal screen hides the navigation back button. Add explicit close buttons so users can dismiss Files or return from Terminal to their thread. This addresses items 7 and 8 in #10985.

Files uses the existing auxiliary-pane visibility action. Terminal goes back when possible and replaces an initial terminal route with its thread when there is no history. The Android header uses the same terminal handler; the iPhone native back-button layout is unchanged. Closing Terminal keeps the shell alive.

Verified on an iPad Pro 13-inch simulator running iPadOS 27: open/close Files, open an existing shell, close Terminal with the keyboard visible, and return to the conversation. Before/after captures use the actual base/head UI source with the same fixture and viewport. The integrated phone compact/expanded composer and keyboard-up send checks passed. Mobile typecheck, targeted lint, and 45 layout/adaptive-navigation/voice-presentation tests passed. Android runtime verification has not been performed.

This PR is independent of the composer animation fix in #11114. It changes only navigation controls.

Files before Files after
Files without a close button Files with a close button
Terminal before Terminal after
Terminal without a close button Terminal with a close button

Closing Files, opening an existing terminal, and returning to the thread, at normal speed:

Files and Terminal close flow

Implemented and verified with GPT-6 in Codex.

Summary by CodeRabbit

  • New Features
    • Added controls to close the file navigator pane on iOS and other mobile layouts.
    • Added consistent terminal closing behavior, including an iOS split-view close button and Android header navigation.
    • Terminal closing now returns to the previous screen when possible, or the thread screen otherwise.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M 30-99 changed lines (additions + deletions). labels Sep 10, 2026
@macroscopeapp

macroscopeapp Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at f3a3cc1

Macroscope's review found this PR approvable — The changes add localized close controls to existing tablet file and terminal surfaces, reusing established pane visibility and navigation behavior. Runtime impact is limited to dismissing those surfaces or returning to the thread, with no schema, security, billing, deployment, or default-setting changes.

You can add or adjust custom eligibility rules. Learn more.

@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Team

Run ID: 683d5d8e-8b26-42e8-ae77-d8025f341378

📥 Commits

Reviewing files that changed from the base of the PR and between d2eeacd and f3a3cc1.

📒 Files selected for processing (2)
  • apps/mobile/src/features/files/thread-file-navigator-pane.tsx
  • apps/mobile/src/features/terminal/ThreadTerminalRouteScreen.tsx

Included review availability: Your plan provides up to 10 included reviews per hour; 5 remain after this review.


📝 Walkthrough

Walkthrough

The mobile file navigator now closes through adaptive workspace layout controls. The terminal screen now uses shared close navigation for Android back handling and an iOS split-view close button.

Changes

Mobile workspace navigation

Layer / File(s) Summary
File navigator close controls
apps/mobile/src/features/files/thread-file-navigator-pane.tsx
The file navigator uses toggleAuxiliaryPane for the iOS “Close files” header button and the non-iOS close button.
Terminal close navigation
apps/mobile/src/features/terminal/ThreadTerminalRouteScreen.tsx
Terminal close handling pops when possible and replaces the route with the thread screen otherwise. Android back handling and the iOS split-view close button use this callback.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to f3a3c

The change adds mobile close controls for Files and Terminal while preserving terminal sessions. No merge-blocking product or runtime risk is currently evident.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 2 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description check ✅ Passed The description clearly explains the Files and Terminal changes, the reason for the changes, UI evidence, verification results, and the unperformed Android runtime verification. It omits the template …
Title check ✅ Passed The title clearly and concisely identifies the primary change: adding close controls for tablet Files and Terminal views on mobile.
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.
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch t3code/fix-tablet-pane-close

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

@github-actions

Copy link
Copy Markdown
Contributor

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.6 KiB 13.6 KiB +18 B (+0.1%) 15.1 KiB
Codex Thread snapshot wire 7.0 KiB 7.1 KiB +9 B (+0.1%) 7.3 KiB
Codex Live turn WebSocket wire 6.6 KiB 6.6 KiB +9 B (+0.1%) 7.8 KiB
Codex Live turn WebSocket decoded 57.1 KiB 57.1 KiB 0 B (0.0%) 66.4 KiB
Codex Live turn messages 10 10 0 (0.0%) 21
Claude Total thread wire 13.6 KiB 13.6 KiB −34 B (−0.2%) 15.1 KiB
Claude Thread snapshot wire 7.1 KiB 7.1 KiB +7 B (+0.1%) 7.3 KiB
Claude Live turn WebSocket wire 6.5 KiB 6.5 KiB −41 B (−0.6%) 7.8 KiB
Claude Live turn WebSocket decoded 57.8 KiB 57.8 KiB −44 B (−0.1%) 66.4 KiB
Claude Live turn messages 9 8 −1 (−11.1%) 21

Baseline: d2eeacd · PR result: f3a3cc1 · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 113.9 KiB
  • Claude decoded thread snapshot: 114.6 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@juliusmarminge
juliusmarminge merged commit 47dbb06 into main Sep 10, 2026
22 checks passed
@juliusmarminge
juliusmarminge deleted the t3code/fix-tablet-pane-close branch September 10, 2026 20:31
github-actions Bot added a commit to omarcresp/t3code-flake that referenced this pull request Sep 11, 2026
## What's Changed
* fix(ui): simplify multiple linked pull request badges by @maria-rcks in pingdotgg/t3code#11104
* fix(preview): return to pip when closing the right panel by @maria-rcks in pingdotgg/t3code#11102
* fix: quiet settled threads and simplify PR badges by @juliusmarminge in pingdotgg/t3code#11101
* fix(web): emphasize primary pull request actions by @juliusmarminge in pingdotgg/t3code#11105
* fix(web): prevent seams in the topbar scroll fade by @caezium in pingdotgg/t3code#10914
* fix(web): fit provider update text inside sidebar notices by @MatthewFeroz in pingdotgg/t3code#11034
* fix(web): align floating browser preview corners by @caezium in pingdotgg/t3code#10915
* fix(web): save PR body edits with Cmd/Ctrl+Enter by @flamboh in pingdotgg/t3code#10660
* fix(web): collapse a tool call by clicking its expanded label by @maria-rcks in pingdotgg/t3code#11017
* feat(devices): add simulator and emulator support by @juliusmarminge in pingdotgg/t3code#10677
* feat(devices): scope targets and sessions to their hosts by @juliusmarminge in pingdotgg/t3code#10854
* feat(devices): target concurrent agent sessions across hosts by @juliusmarminge in pingdotgg/t3code#10855
* feat(devices): connect simulator hosts over SSH by @juliusmarminge in pingdotgg/t3code#10856
* feat(web): use a compact right-panel surface menu by @maria-rcks in pingdotgg/t3code#11111
* fix(mobile): keep Android markdown icons aligned by @none23 in pingdotgg/t3code#11118
* fix(mobile): add close controls to tablet files and terminal by @juliusmarminge in pingdotgg/t3code#11115
* fix(mobile): preserve the final composer animation frame by @juliusmarminge in pingdotgg/t3code#11114
* fix(mobile): keep composer transitions aligned by @juliusmarminge in pingdotgg/t3code#11127
* refactor(mobile): name shared markdown renderer without iOS suffixes by @SunkenInTime in pingdotgg/t3code#11128
* fix(media): preserve playback during fullscreen transitions by @maria-rcks in pingdotgg/t3code#11113
* fix(marketing): redirect /app to app.t3.codes by @t3-code[bot] in pingdotgg/t3code#11145
* chore(marketing): update to 300k users and 22k stars by @t3-code[bot] in pingdotgg/t3code#11146
* feat(command-palette): show environments in search results by @Cyberlane in pingdotgg/t3code#10722

## New Contributors
* @Cyberlane made their first contribution in pingdotgg/t3code#10722

**Full Changelog**: pingdotgg/t3code@v0.0.41-nightly.20260910.1507...v0.0.41-nightly.20260911.1520

Upstream release: https://github.com/pingdotgg/t3code/releases/tag/v0.0.41-nightly.20260911.1520
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30-99 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant