You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(web): keep sidebar icons aligned on non-Retina displays - #31323
On a non-Retina display, the sidebar toggle and enabled Back arrow render one pixel below the T3 mark and disabled Forward arrow. Their layout boxes are centered, but the enabled buttons have a persistent will-change: scale hint that changes how Chromium rasterizes them. This is visible with 20pt interface text.
Change
Remove the idle scale hint from the shared Button primitive. Its existing pressed scale and transition remain. The logo, enabled buttons, and disabled buttons now align at rest.
This addresses the vertical rendering defect independently of #31125, which moves the history controls to the right edge.
Scope and approval
Alex reported this visible alignment defect and requested the fix. This is a small, focused visual bug fix under the existing exception. The shared Button CSS covers web and desktop controls; native mobile controls, providers, contracts, and connection behavior need no changes.
Verification
vp run check:changed passed formatting, lint, both knip checks, affected web/scripts typechecks, and the React Compiler check.
Actual macOS Electron app with isolated Demo Studio data, 20pt interface text: matched captures on a physical 1× external display and the built-in 2× Retina display. Removing only the hint corrects the 1× toggle/Back offset. The 2× control centers stay aligned. Also checked zoom level 2 on both displays.
Clicked Back to the previous draft and Forward to the same demo thread, checking enabled/disabled states. Collapsed and reopened the sidebar. No cosmetic UI test added; native captures provide the regression proof. Windows and Linux were not exercised.
The comparison below enlarges the original 1× pixels threefold and adds a cyan center guide. Unannotated matched captures follow.
Display
Before
After
1× external
2× Retina
Model: GPT-6.1 Sol (xhigh reasoning) | Harness: Codex in T3 Code
Macroscope's review found this PR approvable — Removes a rendering hint from shared button styles to address icon alignment on non-Retina displays. The change is presentation-only and preserves button interactions and product defaults.
You can add or adjust custom eligibility rules. Learn more.
pingdotgg/t3code#30122: Both changes address button scaling; this PR removes the shared idle will-change: scale hint and retains the pressed scale.
Suggested reviewers:t3dotgg
Merge Risk: Minimal · up to bc1a1
No actionable merge-blocking risk is evident in this focused styling change.
Pre-merge checks: 4
Check name
Status
Explanation
Title check
The title clearly identifies the focused visual fix: keeping sidebar icons aligned on non-Retina displays.
Description check
The description includes the required Problem, Change, Scope and approval, and Verification sections. It explains the defect, implementation, scope, test results, limitations, and UI evidence.
Linked Issues check
Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check
Check skipped because no linked issues were found for this pull request.
Finishing Touches
Generate unit tests (beta)
Create a new PR
Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Reviewing files that changed from the base of the PR and between 67eebac and bc1a107.
Files selected for processing: 1
apps/web/src/components/ui/button.tsx
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 7 remain after this review.
This branch has not been deployed
No deployments
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
size:XS0-9 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.
1 participant
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.
Problem
On a non-Retina display, the sidebar toggle and enabled Back arrow render one pixel below the T3 mark and disabled Forward arrow. Their layout boxes are centered, but the enabled buttons have a persistent
will-change: scalehint that changes how Chromium rasterizes them. This is visible with 20pt interface text.Change
Remove the idle scale hint from the shared Button primitive. Its existing pressed scale and transition remain. The logo, enabled buttons, and disabled buttons now align at rest.
This addresses the vertical rendering defect independently of #31125, which moves the history controls to the right edge.
Scope and approval
Alex reported this visible alignment defect and requested the fix. This is a small, focused visual bug fix under the existing exception. The shared Button CSS covers web and desktop controls; native mobile controls, providers, contracts, and connection behavior need no changes.
Verification
vp run check:changedpassed formatting, lint, both knip checks, affected web/scripts typechecks, and the React Compiler check.The comparison below enlarges the original 1× pixels threefold and adds a cyan center guide. Unannotated matched captures follow.
Model: GPT-6.1 Sol (xhigh reasoning) | Harness: Codex in T3 Code