fix(tabs): restore the header height and clear the scroll fades - #6965
fix(tabs): restore the header height and clear the scroll fades#6965waleedlatif1 wants to merge 1 commit into
Conversation
Selecting a partly-hidden tab scrolled it flush against the container edge, which is exactly where the fade gradient sits, so it arrived half-faded and still looked cut off. Reveal now insets by the fade width and clamps at the scroll extremes, where no gradient is drawn. The header also went back to its pre-port 43px: the port had taken it to 34px while growing the tabs to 30px, leaving about a pixel and a half of air instead of ten. Floating tabs cap at 160px so no single tab dominates the row.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
PR SummaryLow Risk Overview Selecting a partly hidden tab now scrolls it clear of the 16px edge fade, not flush under the gradient. First/last tabs still sit flush because the target is clamped at scroll extremes where no fade is drawn. The same Floating tabs in the resource header cap at 160px via Reviewed by Cursor Bugbot for commit b1672f6. Configure here. |
Greptile SummaryThis PR restores the resource header’s intended height and narrows its floating tabs while improving selected-tab reveal behavior around scroll-edge fades.
Confidence Score: 5/5The PR appears safe to merge, with no concrete changed-code failure identified. The revised dimensions remain internally consistent, and the fade-aware reveal calculation correctly clamps targets to valid scroll bounds while preserving flush positioning at either extreme.
|
| Filename | Overview |
|---|---|
| apps/sim/app/workspace/[workspaceId]/home/components/mothership-view/components/resource-tabs/resource-tab-controls.ts | Restores resource-header geometry and configures a 160px floating-tab width without introducing a concrete layout defect. |
| packages/emcn/src/components/tab-strip/tab-strip.tsx | Adds configurable floating-tab width and fade-aware active-tab reveal with bounded scroll targets. |
| packages/emcn/src/components/tab-strip/tab-strip.dom.test.tsx | Updates reveal expectations and verifies that the final tab clamps to the maximum scroll position. |
Reviews (1): Last reviewed commit: "improvement(tabs): restore the header he..." | Re-trigger Greptile
|
Superseded by the branch off the current staging tip — same reveal fix plus the header spacing regression. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit b1672f6. Configure here.
| tabLeft < viewLeft | ||
| ? tabLeft - EDGE_FADE_PX | ||
| : tabRight > viewRight | ||
| ? tabRight - node.clientWidth + EDGE_FADE_PX |
There was a problem hiding this comment.
Reveal scrolls wrong for wide tabs
Medium Severity
revealActiveTab always shrinks the visible band by EDGE_FADE_PX on both sides and prefers the left branch. When a tab’s left edge sits in the left fade zone but its right edge is past the real viewport (common for attached/floating tabs once the scrollport is only slightly wider than the tab), it scrolls left to clear the fade and leaves the tab more clipped on the right. The old physical-overflow check would have scrolled right instead.
Reviewed by Cursor Bugbot for commit b1672f6. Configure here.


Summary
TabStrip, so the browser and terminal strips get it tooType of Change
Testing
Tested manually
Checklist