Skip to content

fix(desktop): remove 880px reading cap in focus-mode thread - #4007

Draft
treywood wants to merge 1 commit into
block:mainfrom
treywood:focus-thread-full-width
Draft

fix(desktop): remove 880px reading cap in focus-mode thread#4007
treywood wants to merge 1 commit into
block:mainfrom
treywood:focus-thread-full-width

Conversation

@treywood

Copy link
Copy Markdown
Contributor

What

Removes the 880px reading-column cap in focus-mode thread view so thread content fills the drawer edge-to-edge, matching every sibling reading surface.

Previously, focus mode capped its thread content at an 880px centered column (mx-auto) with a px-10 inner gutter, producing large empty side gutters on wide drawers. The split thread view, the channel timeline, and the inbox all render the same message content full-width — the cap was unique to focus mode.

How

  • threadPanelLayout.ts — the focus branch of getThreadPanelLayout now passes columnMaxWidthPx: undefined instead of THREAD_FOCUS_COLUMN_MAX_WIDTH_PX, which is exactly what split mode already does. This drops the max-width, the mx-auto centering, and the px-10 gutter. The gate flows through the message list, the composer, and the loading skeleton via the shared hasConstrainedColumn check, so nothing shifts when replies load in.
  • threadFocusLayout.ts — removes the now-unused THREAD_FOCUS_COLUMN_MAX_WIDTH_PX constant and its import.

Net: 2 files, +4/−13.

Verification

  • tsc --noEmit — clean
  • biome check on touched files — clean
  • Full desktop test suite — 3870/3870 pass

Context

Discussed in the buzz-focus-thread-width channel — the 880px cap was a deliberate reading-measure choice from #2108 but a lightly-held one (single author, never iterated, inconsistent with sibling views). Removing it for consistency and to eliminate the distracting gutters.

Opening as draft — a human will move it to Ready for Review.

Focus mode capped its thread content at an 880px centered column with
mx-auto margins and a px-10 inner gutter, producing large empty side
gutters on wide drawers. Every sibling reading surface — split thread
view, the channel timeline, and the inbox — renders the same message
content full-width; the cap was unique to focus mode.

Drop the cap by passing columnMaxWidthPx: undefined in the focus branch
of getThreadPanelLayout, matching split mode. This flows through both
the message list and composer columns and the loading skeleton via the
shared hasConstrainedColumn gate, so nothing shifts when replies load.

Removes the now-unused THREAD_FOCUS_COLUMN_MAX_WIDTH_PX constant and its
import.

Co-authored-by: Trey Wood <treyw@squareup.com>
Signed-off-by: Trey Wood <treyw@squareup.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant