Skip to content

fix(mobile): support pre-Liquid-Glass iOS bottom toolbar - #4984

Merged
gabrielelpidio merged 3 commits into
mainfrom
t3code/fix-ios-18-bottom-toolbar
Jul 30, 2026
Merged

fix(mobile): support pre-Liquid-Glass iOS bottom toolbar#4984
gabrielelpidio merged 3 commits into
mainfrom
t3code/fix-ios-18-bottom-toolbar

Conversation

@gabrielelpidio

@gabrielelpidio gabrielelpidio commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

What Changed

Added a fallback bottom toolbar for iOS versions before Liquid Glass support. Older iOS versions now use standard navigation search and toolbar primitives, while iOS 26 continues using the native Liquid Glass toolbar integration.

Why

The native mail-style toolbar is only supported by the iOS 26 Liquid Glass implementation. On older iOS versions, those toolbar items were silently dropped, leaving search and thread actions unavailable. This restores the expected controls across supported iOS versions.

UI Changes

1-home-ios18-toolbar 2-filter-sort-menu-open 3-search-active

Checklist

  • This PR is small and focused
  • I explained what changed and why
  • I included before/after screenshots for any UI changes
  • I included a video for animation/interaction changes

Note

Low Risk
UI-only navigation chrome and list inset changes on older iOS; Liquid Glass paths stay gated behind the existing capability flag with no auth or data-layer impact.

Overview
On iOS without Liquid Glass, the native mail-style header toolbar was dropped entirely, so search, filters, and new-task were missing. This PR gates that integration behind NATIVE_MAIL_SEARCH_TOOLBAR_SUPPORTED and restores standard pull-down search plus a bottom NativeHeaderToolbar on home (and aligned behavior on archived threads and thread files).

Home moves filter/sort and new-task into the fallback bottom bar; thread list v2 still hides sort menus when sorting is ignored. HomeScreen adds 44pt list padding and scroll inset clearance so list content isn’t covered by the overlay toolbar when automatic inset adjustment is off.

StackHeader supports a flexible spacer and assigns spacing item index so spacers don’t jump ahead of earlier toolbar siblings.

Reviewed by Cursor Bugbot for commit 591a7f1. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Fix mobile home screen layout and toolbar for pre-Liquid-Glass iOS

  • Adds NATIVE_MAIL_SEARCH_TOOLBAR_SUPPORTED flag (aliasing NATIVE_LIQUID_GLASS_SUPPORTED) to gate use of the integrated mail-style toolbar to iOS 26+.
  • On pre-Liquid-Glass iOS, HomeHeader falls back to a pull-down search bar and renders a bottom toolbar with filter menus and a compose button instead of the integrated toolbar.
  • HomeScreen reserves 44pt of bottom padding on pre-Liquid-Glass iOS to prevent list content from being obscured by the bottom toolbar overlay.
  • ArchivedThreadsScreen and ThreadFilesRouteScreen similarly gate compact mail toolbar and integratedButton search placement behind the new flag.
  • Fixes NativeHeaderToolbarSpacer to support a flexible prop and corrects insertion-order bugs for spacing items in native header toolbars.

Macroscope summarized 591a7f1.

- Fall back to standard search and toolbar primitives on older iOS
- Preserve bottom-toolbar spacing and list content insets
@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 Jul 30, 2026
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 1746e614-c47f-4bff-bc7c-f72c3053098b

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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.

Comment thread apps/mobile/src/features/home/HomeScreen.tsx
@macroscopeapp

macroscopeapp Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Needs human review

This PR changes runtime UI behavior across multiple screens to support pre-Liquid-Glass iOS versions, including conditional toolbar rendering, search placement changes, and padding adjustments. The multi-screen scope and feature flag interactions warrant verification that both old and new iOS versions behave as expected.

You can customize Macroscope's approvability policy. Learn more.

@github-actions github-actions Bot added size:L 100-499 changed lines (additions + deletions). and removed size:M 30-99 changed lines (additions + deletions). labels Jul 30, 2026

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 2488a2d. Configure here.

Comment thread apps/mobile/src/features/home/HomeScreen.tsx
…tom-toolbar

# Conflicts:
#	apps/mobile/src/features/home/HomeScreen.tsx
@gabrielelpidio
gabrielelpidio merged commit 323dc32 into main Jul 30, 2026
17 checks passed
@gabrielelpidio
gabrielelpidio deleted the t3code/fix-ios-18-bottom-toolbar branch July 30, 2026 16:01
github-actions Bot added a commit to omarcresp/t3code-flake that referenced this pull request Jul 30, 2026
## What's Changed
* fix(mobile): support pre-Liquid-Glass iOS bottom toolbar by @gabrielelpidio in pingdotgg/t3code#4984
* fix(server): restore PR detection without HOME by @StiensWout in pingdotgg/t3code#4985
* fix(web): fill fast mode icon by @maria-rcks in pingdotgg/t3code#5004
* fix: cache project favicons across web and mobile by @gabrielelpidio in pingdotgg/t3code#4767
* perf(ci): cut stale runs and redundant setup by @t3dotgg in pingdotgg/t3code#4802


**Full Changelog**: pingdotgg/t3code@v0.0.32-nightly.20260730.957...v0.0.32-nightly.20260730.958

Upstream release: https://github.com/pingdotgg/t3code/releases/tag/v0.0.32-nightly.20260730.958
aaditagrawal pushed a commit to aaditagrawal/t3code that referenced this pull request Aug 1, 2026
aaditagrawal added a commit to aaditagrawal/t3code that referenced this pull request Aug 1, 2026
sync: port upstream mobile perf, OTA updates, Thread List v2 default (pingdotgg#4607pingdotgg#4984)
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: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