Skip to content

Make the thread composer read as elevated liquid glass#3668

Merged
juliusmarminge merged 2 commits into
mainfrom
glass-composer-elevation
Jul 3, 2026
Merged

Make the thread composer read as elevated liquid glass#3668
juliusmarminge merged 2 commits into
mainfrom
glass-composer-elevation

Conversation

@juliusmarminge

@juliusmarminge juliusmarminge commented Jul 3, 2026

Copy link
Copy Markdown
Member

Summary

The glass composer had the glass effect but blended into the background instead of floating above it like the native search bar. Three fixes in ThreadComposer.tsx:

  • effect="clear"effect="regular" — the native search bar uses the regular liquid glass material (built-in rim highlight, adaptive shading, system shadow). clear is the flat variant meant for glass over media; over a white feed it disappears.
  • Dropped the ~50% tint — regular glass supplies its own milky base; the heavy tint on top flattened it. Untinted regular matches the system search-bar recipe.
  • Added a drop shadow (0.12 light / 0.35 dark, radius 14, y-offset 6; elevation: 10 for Android/fallback). Lives on a wrapper view since overflow: "hidden" on the surface would clip it on iOS. The opaque fallback path gets the same shadow.
  • Softened the backdrop gradient (0.85 @ 40% → 0.95 down to 0.6 @ 55% → 0.9) so feed content stays faintly visible under the pill — previously the glass sat on near-opaque white with nothing to refract.

Testing

  • Collapsed pill + expanded card, light and dark mode, on an iOS 26 device (liquid glass path)
  • Fallback path (non-glass devices / Android) still renders opaque surface with shadow

🤖 Generated with Claude Code


Note

Low Risk
Visual-only styling in the mobile thread composer; no messaging, auth, or data-path changes.

Overview
Updates ComposerSurface in ThreadComposer.tsx so the composer reads as floating above the feed instead of blending in.

On the liquid-glass path, LiquidGlassView switches from effect="clear" to effect="regular" and drops tintColor, relying on the system material. Both glass and opaque fallbacks are wrapped in an outer View that carries a theme-aware drop shadow (and elevation on Android), so clipping from overflow: "hidden" on the pill/card does not eat the shadow on iOS.

The composer chrome backdrop gradient is softened (mid stop 40% → 55%, opacities 0.85/0.95 → 0.6/0.9) in light and dark mode so more feed shows through under the pill.

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

Note

Render thread composer with elevated liquid glass effect and drop shadow

  • Updates ComposerSurface in ThreadComposer.tsx to wrap the surface in a shadow container (radius 14, offset {0,6}, elevation 10) on all platforms.
  • Switches the LiquidGlassView effect from "clear" to "regular" and removes the tintColor prop on supported iOS devices.
  • Reduces opacity of the background gradient behind the composer (mid-stop moves from 40%→55%, mid opacity 0.85→0.6, end opacity 0.95→0.9) in both light and dark modes.

Macroscope summarized 053d14a.

The composer pill used effect="clear" with a ~50% tint over a
near-opaque backdrop gradient, so it blended into the background
instead of floating like the native search bar. Switch to the
regular glass material (untinted — the system recipe the search bar
uses), add a drop shadow on a wrapper view (overflow: hidden on the
surface would clip it), and soften the backdrop gradient so feed
content stays faintly visible under the glass.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 3, 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

Run ID: c7bd676a-0aab-4ac4-a6d6-98533c307760

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
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch glass-composer-elevation

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

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:S 10-29 changed lines (additions + deletions). labels Jul 3, 2026
@juliusmarminge
juliusmarminge enabled auto-merge (squash) July 3, 2026 07:02
@juliusmarminge
juliusmarminge merged commit cabc93b into main Jul 3, 2026
16 checks passed
@juliusmarminge
juliusmarminge deleted the glass-composer-elevation branch July 3, 2026 07:05
wizzoapp Bot pushed a commit to agriffiths-bots/t3code that referenced this pull request Jul 3, 2026
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
adamfgr pushed a commit to agriffiths-bots/t3code that referenced this pull request Jul 3, 2026
* fix(dev): Fix electron dev launch and add test (pingdotgg#3662)

* Add adaptive split-view layout for iPad/mobile workspace (pingdotgg#3514)

Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius@mac.lan>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* fix(mobile): compile patched native pods from source on EAS (pingdotgg#3667)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* Make the thread composer read as elevated liquid glass (pingdotgg#3668)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* fix(sync): repair upstream sync CI fallout

---------

Co-authored-by: Theo Browne <me@t3.gg>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius@mac.lan>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: wizzoapp[bot] <254688279+wizzoapp[bot]@users.noreply.github.com>
1337hero pushed a commit to 1337hero/t3code that referenced this pull request Jul 4, 2026
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
tarik02 added a commit to tarik02/t3code that referenced this pull request Jul 13, 2026
* Add middle-click close for right panel tabs (pingdotgg#3161)

Co-authored-by: Julius Marminge <jmarminge@gmail.com>

* fix: warm WSL before preflight in WSL-only backend mode (pingdotgg#3588)

* Add Claude Sonnet 5 as the default Claude model (pingdotgg#3620)

* Restore the ultrathink frame border effect (pingdotgg#3625)

* fix(dev): Fix electron dev launch and add test (pingdotgg#3662)

* Add adaptive split-view layout for iPad/mobile workspace (pingdotgg#3514)

Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius@mac.lan>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* fix(mobile): compile patched native pods from source on EAS (pingdotgg#3667)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* Make the thread composer read as elevated liquid glass (pingdotgg#3668)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* Upgrade Vite Plus and enable bundled dev opt-in (pingdotgg#3679)

* Surface pending tasks in mobile home and draft flow (pingdotgg#3670)

* fix(mobile): combined test branch — scroll, back-swipe, thread lists, computer switching (pingdotgg#3687)

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>

* Add repo-root favicon.svg so t3 code shows its own icon (pingdotgg#3683)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* Load thread snapshots over HTTP before live sync (pingdotgg#3719)

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>

* Fix mobile legend anchor under automatic iOS insets (pingdotgg#3684)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* Improve live activity routing and diagnostics (pingdotgg#3685)

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>

* Prevent Add Project sheet from collapsing on relayout (pingdotgg#3759)

* Use variant-specific splash icons in mobile app (pingdotgg#3762)

* Fix Expo widget asset wiring order (pingdotgg#3763)

* Extend Done display to 15 minutes and show up to 5 Live Activity banner rows (pingdotgg#3761)

* Clear VCS presentation state on finish (pingdotgg#3764)

* Lead with the outcome when no agents are active in the Live Activity (pingdotgg#3768)

* Add T3 Connect onboarding for mobile and web (pingdotgg#3765)

* Revert "Add T3 Connect onboarding for mobile and web" (pingdotgg#3776)

* Expose Clerk Google sign-in env vars to Expo (pingdotgg#3772)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* Set up Cursor Cloud dev environment (web + Android toolchain) (pingdotgg#3755)

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Theo Browne <t3dotgg@users.noreply.github.com>

* Revert "Revert "Add T3 Connect onboarding for mobile and web"" (pingdotgg#3777)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

* Use rounded depth logo for production splash screen (pingdotgg#3780)

Co-authored-by: Cursor Agent <cursoragent@cursor.com>

* fix(release): stage pnpm 11 allowBuilds for desktop installs (pingdotgg#3781)

Co-authored-by: Cursor Agent <cursoragent@cursor.com>

* Upgrade Clerk toolchain to latest versions (pingdotgg#3785)

* fix(release): bump electron-builder so pnpm 11 deduped deps land in the asar (pingdotgg#3790)

* Fix desktop native optional dependency packaging (pingdotgg#3816)

* [codex] Upgrade Clerk stack (pingdotgg#3821)

Co-authored-by: codex <codex@users.noreply.github.com>

* [codex] Preserve worktree metadata during branch sync (pingdotgg#3822)

Co-authored-by: codex <codex@users.noreply.github.com>

* feat(client): persist offline environment data and mobile preferences (pingdotgg#3795)

Co-authored-by: Julius Marminge <julius@mac.lan>
Co-authored-by: codex <codex@users.noreply.github.com>

* [codex] Label max and ultra reasoning (pingdotgg#3824)

Co-authored-by: codex <codex@users.noreply.github.com>

* fix(mobile): embed fonts and render project favicons reliably (pingdotgg#3823)

Co-authored-by: codex <codex@users.noreply.github.com>

* Show compact PR number badges in mobile thread rows (pingdotgg#3827)

Co-authored-by: codex <codex@users.noreply.github.com>

* Expose mobile PR indicator labels to accessibility (pingdotgg#3828)

Co-authored-by: codex <codex@users.noreply.github.com>

* Fix truncated chat error alert layout (pingdotgg#3899)

* fix(marketing): show platform-appropriate commit shortcut on the website (pingdotgg#3644)

* [codex] Add Android mobile support (pingdotgg#3579)

Co-authored-by: Horus Lugo <horusgoul@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: Shivam Sharma <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: Ben Davis <45952064+bmdavis419@users.noreply.github.com>
Co-authored-by: Alex <me@pixp.cc>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius@mac.lan>

---------

Co-authored-by: Hugo Blom <6117705+huxcrux@users.noreply.github.com>
Co-authored-by: Julius Marminge <jmarminge@gmail.com>
Co-authored-by: Utkarsh Patil <73941998+UtkarshUsername@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: Theo Browne <me@t3.gg>
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius@mac.lan>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Theo Browne <t3dotgg@users.noreply.github.com>
Co-authored-by: Rowan <rowan@cardow.co>
Co-authored-by: Patricio Gómez Meneses <107218376+Prgm-code@users.noreply.github.com>
Co-authored-by: Jake Leventhal <jakeleventhal@me.com>
Co-authored-by: Vedank Purohit <VedankPurohit2@gmail.com>
Co-authored-by: Horus Lugo <horusgoul@gmail.com>
Co-authored-by: maria-rcks <maria@kuuro.net>
Co-authored-by: Shivam Sharma <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: Ben Davis <45952064+bmdavis419@users.noreply.github.com>
Co-authored-by: Alex <me@pixp.cc>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S 10-29 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