Skip to content

feat(data-table): mark every column's resize edge in the header - #144

Merged
kirillDevPro merged 2 commits into
masterfrom
feat/data-table-resize-mark
Nov 5, 2026
Merged

kirillDevPro merged 2 commits into
masterfrom
feat/data-table-resize-mark

Conversation

@kirillDevPro

Copy link
Copy Markdown
Collaborator

What & why

Traders could not see where a column ends in a data-table header, so finding the resize edge meant hunting blind (Moonbot-Tech/MoonTerminal#1144). The header drew no resting mark, and a hairline in the separator colour would be invisible on the dark header.

  • Each resizable column's resize strip now paints a resting mark: a 1 px hairline, half the header height, centred in the 6 px strip, in the header's muted ink (denser alpha on the near-black dark header).
  • Hovering the strip grows it into a full-height 2 px accent bar over the existing 14% accent wash. The hover form is driven by a keyed hover flag, because GPUI applies hover styles at paint time only and a hover style cannot change the mark's size.
  • A narrowed column's title now clips with an ellipsis inside the cell padding, so it never runs under the mark.

Sort-on-title, the hit-target width, resize logic and body rows are unchanged. No new palette token.

How to verify

  • cargo test -p moon-ui-components data_table covers Terminal, Light and Graphite: every column (including the last, at 40 px under a long title) has the mark, centred at half height and clear of the title, and the hover form after a simulated mouse move.
  • tools/run-component-guardrails.ps1 passes locally.

A trader could not find a column divider in the header without hunting for it blind (MoonTerminal#1144). Each resizable column's resize strip now paints a short hairline in the header's muted ink, denser on the near-black dark header, and hovering the strip grows it into a full-height accent bar. The hover form is driven by a keyed hover flag because GPUI applies hover styles at paint time only, so a hover style can not change the mark's size.
…ize mark

A long title in a minimum-width column overflowed into the resize strip and the resting mark painted over it. The title now clips with an ellipsis inside the cell padding.
@kirillDevPro
kirillDevPro merged commit 0c89342 into master Nov 5, 2026
4 checks passed
@kirillDevPro
kirillDevPro deleted the feat/data-table-resize-mark branch November 5, 2026 11:39
kirillDevPro added a commit to Moonbot-Tech/MoonTerminal that referenced this pull request Nov 5, 2026
Traders could not see where a column ends in a table header, so the
resize edge had to be found blind. MoonUI's shared data-table header
now paints a resting mark on each column's resize strip that grows
into an accent bar on hover (Moonbot-Tech/MoonUI#144). Re-pin MoonUI
to that merge so the Report, Orders, Screener, Figures, Assets and
Core status tables pick it up.
kirillDevPro added a commit to Moonbot-Tech/MoonTerminal that referenced this pull request Nov 5, 2026
…1254)

Traders could not see where a column ends in a table header, so the
resize edge had to be found blind. MoonUI's shared data-table header
now paints a resting mark on each column's resize strip that grows
into an accent bar on hover (Moonbot-Tech/MoonUI#144). Re-pin MoonUI
to that merge so the Report, Orders, Screener, Figures, Assets and
Core status tables pick it up.
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