Skip to content

fix(web): truncate thread titles before the workspace toggle - #15371

Closed
NikitaMGrimm wants to merge 1 commit into
pingdotgg:mainfrom
NikitaMGrimm:fix/workspace-header-overlap
Closed

NikitaMGrimm wants to merge 1 commit into
pingdotgg:mainfrom
NikitaMGrimm:fix/workspace-header-overlap

Conversation

@NikitaMGrimm

Copy link
Copy Markdown

When a Windows desktop window has the right panel open, a long thread title can run underneath the Workspace toggle as the chat pane shrinks. The toggle keeps the native titlebar-controls inset, but the breadcrumb reserves a fixed 40px.

Reserve the existing controls-right inset plus the existing toggle width, so the title's existing ellipsis stops before the icon. Normal browser spacing remains 40px. The icon position and Workspace inline/popover behavior are unchanged. This qualifies as the small, obvious bug-fix exception: it corrects overlapping header content without adding a feature or changing product defaults.

Evidence

Before left, after right

One side-by-side resize video: BEFORE left / AFTER right, with mouse-drag indicators

Reproduced on upstream 00eb8f6183 through T3's collaborative Browser at 1280x800, using isolated worktree data and a long thread title. The Browser simulates the Windows WCO controls-right inset at 156px; this is not a rebuilt native Electron recording. With the right panel initially 540px wide, the baseline title extends to x=608 while the icon starts at x=556. Resizing toward the 384px chat minimum keeps the overlap reproducible.

After the fix, the title ends 38px before the icon at chat widths of 739px, 479px, and 384px. The same resize sequence now truncates the title while preserving the toggle position. The full title remains in its accessible label. Clicking the Workspace toggle still opens its popover. A normal 12px browser inset keeps 40px of reserved space; closing the right panel retains the existing 96px padding.

Validation

  • vp test run apps/web/src/components/chat/ChatHeader.test.ts: 3 tests passed.
  • vp lint apps/web/src/components/chat/ChatHeader.tsx apps/web/src/index.css: no errors; one pre-existing effect-dependency warning at ChatHeader.tsx:154.
  • Targeted formatting, vp run --filter @t3tools/web typecheck, and git diff --check passed.
  • Integrated header bounds and toggle checks through test-t3-app; final video fully decode-checked.

This changes the shared web/Electron header only. React Native has a separate header; providers, wire contracts, connection modes, and documentation are unaffected. Native Electron was not rebuilt.

Model: GPT-6.1-Sol. Harness: Codex through T3 Code.

@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:XS 0-9 changed lines (additions + deletions). labels Oct 3, 2026
Comment thread apps/web/src/components/chat/ChatHeader.tsx
@macroscopeapp

macroscopeapp Bot commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 0a9d409

Macroscope's review found this PR approvable — This is a focused header-layout fix that replaces a fixed padding value with the existing titlebar geometry so long thread titles stop before the workspace toggle. It adds no new capability, schema, deployment behavior, or static-analysis override, and leaves the closed-panel path unchanged.

Notes:

  • Diff unchanged. Approvability was decided on eligibility alone.

You can add or adjust custom eligibility rules. Learn more.

@coderabbitai

coderabbitai Bot commented Oct 3, 2026

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: pingdotgg/t3code/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 28996165-3ea0-410e-bb10-f42f1e347e9e
📥 Commits

Reviewing files that changed from the base of the PR and between 00eb8f6 and 0a9d409.

📒 Files selected for processing (2)
  • apps/web/src/components/chat/ChatHeader.tsx
  • apps/web/src/index.css

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review.


📝 Walkthrough

Walkthrough

The chat header now uses a CSS variable for right padding when the right panel is open. The variable combines the workspace controls inset and titlebar control size. When the panel is closed, the existing padding remains unchanged.

Changes

Chat header inset

Layer / File(s) Summary
Define and apply the title inset
apps/web/src/index.css, apps/web/src/components/chat/ChatHeader.tsx
The CSS adds --workspace-thread-title-end-inset from two existing workspace variables. The chat header uses it as right padding when the right panel is open; closed-panel padding remains pr-24.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Bug fix

Suggested reviewers: juliusmarminge

Merge Risk: ⚪ Minimal · up to 0a9d4

The open-panel title inset accounts for the workspace controls, while closed-panel spacing remains unchanged. The change is ready to merge after normal checks.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: thread titles now truncate before the Workspace toggle.
Description check ✅ Passed The description explains the problem and change, justifies the small-fix scope exception, and provides detailed verification results with visual evidence. It covers the required template information, …
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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

macroscopeapp[bot]
macroscopeapp Bot previously approved these changes Oct 3, 2026
@juliusmarminge juliusmarminge added the macroscope-review Opt PRs made by unvouched contributors in for Macroscope review. Vouched contributors auto-reviews label Oct 11, 2026 — with ChatGPT Codex Connector
@macroscopeapp
macroscopeapp Bot dismissed their stale review October 11, 2026 05:49

Dismissing prior approval to re-evaluate 0a9d409

@juliusmarminge

Copy link
Copy Markdown
Member

Note

Grok responding on behalf of Julius.

Thanks for this! The same Windows desktop overlap between the thread title and the workspace toggle was fixed by #16869, which just merged and moves the toggle to the chat header's edge instead of reserving extra title padding. Closing this one as superseded, but if you still see the title running under the toggle on current main, let us know.

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

Labels

macroscope-review Opt PRs made by unvouched contributors in for Macroscope review. Vouched contributors auto-reviews size:XS 0-9 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