Make the four seat states readable across the table (re-targeted at master) #20

Closed
jheaps wants to merge 1 commits from feature/casino-holdem-seat-legibility into master
Owner

Re-opens PR #18 against master. #18 was merged, but into feature/casino-holdem-undo-toasts — which had already been merged upward into quick-split and on into master — so its commit never propagated and the change is not in master today. Same single commit, no conflicts.


Visual polish on the table. No new capabilities.

A seat can be live in the hand, folded, sitting out, or empty — and three of those looked nearly the same: a plain dark puck, or a dimmed one. An unclaimed chair was indistinguishable from a nameless player, and nothing positively said "this player is in"; the dealer had to infer it from whether a dollar badge happened to be showing.

Each state now has exactly one look:

  • Live — green edge, full brightness
  • Folded — red edge and a struck-through name, so it reads as out rather than merely faint
  • Empty — the only dashed outline, and it says EMPTY
  • Sitting out — just fades, and fades less than before (0.4 → 0.58): that player is still someone the dealer may need to deal back in, and at 0.4 the name was nearly gone

Validated with Playwright at 1280px and 390px against a table seeded to show all four states at once: each seat resolves to exactly one state class with no overlap, and the computed border colour, border style and opacity differ per state. Also walked the transition most likely to regress — click an empty chair, type a name (Empty → sitting out), tick In hand (→ live) — confirming the puck updates at each step, since that path goes through the cheap refreshPuck rather than a full re-render. No console errors.

Re-opens PR #18 against `master`. #18 was merged, but into `feature/casino-holdem-undo-toasts` — which had already been merged upward into quick-split and on into master — so its commit never propagated and the change is not in `master` today. Same single commit, no conflicts. --- Visual polish on the table. No new capabilities. A seat can be **live in the hand**, **folded**, **sitting out**, or **empty** — and three of those looked nearly the same: a plain dark puck, or a dimmed one. An unclaimed chair was indistinguishable from a nameless player, and nothing positively said "this player is in"; the dealer had to infer it from whether a dollar badge happened to be showing. Each state now has exactly one look: - **Live** — green edge, full brightness - **Folded** — red edge and a struck-through name, so it reads as *out* rather than merely faint - **Empty** — the only dashed outline, and it says EMPTY - **Sitting out** — just fades, and fades less than before (0.4 → 0.58): that player is still someone the dealer may need to deal back in, and at 0.4 the name was nearly gone Validated with Playwright at 1280px and 390px against a table seeded to show all four states at once: each seat resolves to exactly one state class with no overlap, and the computed border colour, border style and opacity differ per state. Also walked the transition most likely to regress — click an empty chair, type a name (Empty → sitting out), tick In hand (→ live) — confirming the puck updates at each step, since that path goes through the cheap refreshPuck rather than a full re-render. No console errors.
jheaps added 1 commit 2026-08-31 19:18:55 -06:00
jheaps closed this pull request 2026-08-31 23:56:24 -06:00

Pull request closed

Please reopen this pull request to perform a merge.
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: jheaps/JoshHeaps.Net#20