Skip to content

feat(mobile): Android tablet Chats/PRs switch floats inside the sidebar - #18686

Closed
SamarpitSantoki wants to merge 1 commit into
pingdotgg:mainfrom
SamarpitSantoki:feat/android-tablet-floating-tab-switch
Closed

SamarpitSantoki wants to merge 1 commit into
pingdotgg:mainfrom
SamarpitSantoki:feat/android-tablet-floating-tab-switch

Conversation

@SamarpitSantoki

Copy link
Copy Markdown

Problem

On Android tablets, the split layout puts the Chats / PRs switch in its own 80dp navigation rail to the left of the sidebar. The rail holds two tabs centered in an otherwise empty column, takes width from the panes, and sits far from the other sidebar controls.

Change

  • AdaptiveWorkspaceLayout no longer renders the rail, so the sidebar and detail panes get the full width.
  • AndroidWorkspaceSidebar floats a compact two-icon switch at the sidebar's bottom left, opposite the New thread FAB. It uses the FAB height, a 16dp corner radius, elevation 6, and the existing androidWorkspaceNavigationColors for the selected-tab indicator.
  • When the sidebar is too narrow for the switch and the extended New thread FAB side by side (tablet portrait), the switch rises to the filter row.
  • Tab selection moved into useSelectAndroidWorkspaceTab, shared by the phone bottom bar and the tablet switch. Behavior is unchanged: switching tabs resets to the list and closes the open detail.
  • The native T3WorkspaceNavigation view drops its now-unused rail branch. Phones keep the Material bottom navigation bar. iOS is untouched.

Scope and approval

This changes product UI, so it needs maintainer approval of the direction first. Proposal: #18683

This PR stays in draft until the direction is approved there.

Verification

  • tsc-rs --noEmit in apps/mobile: clean.
  • vp test run src/features/workspace/android-workspace-navigation-colors.test.ts: 11 passed. The test now covers the floating switch instead of the rail.
  • Manual, Pixel Tablet emulator (Android 16, API 36), debug build of this branch:
    • Landscape: switch on the New thread row. Tapping PRs and Chats switches the sidebar list.
    • Portrait: switch rises to the filter row and does not overlap New thread. Both tabs work.
    • The rail column is gone, and the sidebar starts at the left edge.

Not checked: phones (the bottom bar code changed only by removing the rail prop), large font sizes, and a real tablet with this branch.

Screenshots

Before: Xiaomi Pad 6. After: Pixel Tablet emulator. Thread and PR titles are blurred.

Before: landscape After: landscape (Chats) After: landscape (PRs)
Before: portrait After: portrait (Chats) After: portrait (PRs)

Claude Opus 5.5 via Claude Code in T3 Code.

The split layout gave the Chats/PRs switch its own 80dp navigation rail,
mostly empty space beside the sidebar. Replace the rail with a compact
switch floating at the sidebar's bottom left, opposite the New thread FAB.
It rises to the filter row when the sidebar is too narrow for both.
Phones keep the bottom navigation bar.
@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:L 100-499 changed lines (additions + deletions). labels Oct 12, 2026
@maria-rcks

Copy link
Copy Markdown
Collaborator

Note

Written by gpt-6.1-sol on behalf of Maria

Thanks for proposing the Android tablet navigation change. The prior-approval rule applies because this replaces the native navigation rail with a floating sidebar switch, and the description says direction approval is still pending in #18683. Please obtain explicit maintainer approval of the direction and scope in that discussion before requesting reconsideration.

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

Labels

size:L 100-499 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants