feat(ui): open the move history at the newest move; scale the landscape rack glyphs
CI / changes (pull_request) Successful in 3s
CI / unit (pull_request) Has been skipped
CI / integration (pull_request) Has been skipped
CI / ui (pull_request) Successful in 1m18s
CI / conformance (pull_request) Successful in 10s
CI / gate (pull_request) Successful in 0s
CI / deploy (pull_request) Successful in 2m6s
CI / changes (pull_request) Successful in 3s
CI / unit (pull_request) Has been skipped
CI / integration (pull_request) Has been skipped
CI / ui (pull_request) Successful in 1m18s
CI / conformance (pull_request) Successful in 10s
CI / gate (pull_request) Successful in 0s
CI / deploy (pull_request) Successful in 2m6s
The move table fills top to bottom, oldest first, so it used to open on the opening moves — the least interesting end of a long game. Pin it to its last row when it is shown (the portrait drawer and the landscape dock alike), once per showing rather than on every arriving move, so a player reading back through the journal is not yanked to the bottom by an opponent's move. The landscape tray shares the narrow left panel, so its tiles — and with them the cqw-sized glyphs — come out markedly smaller than the full-width portrait tray. Scale the letter and Erudit's blank star up a quarter there; the point value keeps its size (it reads fine small, and growing it would crowd the letter on a tile that size).
This commit is contained in:
+10
-1
@@ -202,6 +202,11 @@ e2e and the screenshots.
|
||||
the **move history** — a fixed-height slide-down drawer whose bottom border (and its
|
||||
shadow) pins to the board as the board slides down, instead of tracking the table as
|
||||
moves accumulate; its scrollbar gutter is reserved so the centred cells do not jitter. The
|
||||
table is shown **scrolled to its newest row**: the grid fills top to bottom, oldest first, so an
|
||||
untouched scroller would open on the opening moves — the least interesting end. It is pinned once
|
||||
per showing (in landscape, once the moves reach the already-docked table), never on each arriving
|
||||
move, so a player reading back through a long game is not yanked to the bottom by an opponent's
|
||||
move. The
|
||||
history is a **ruled matrix** — one column per seat, aligned under the score plaques, each
|
||||
seat's moves filling its column top to bottom: no player names (the plaque heads the column)
|
||||
and no running total, just the word(s) and the move score, `WORD (12)`, centred. A non-play
|
||||
@@ -247,7 +252,11 @@ e2e and the screenshots.
|
||||
portrait layout is byte-for-byte unchanged; both layouts render from the same snippets, so the
|
||||
behaviour and markup stay single-sourced. The rack is a **seven-column grid** filling the tray
|
||||
width in both layouts, so the tiles are square and as large as the row allows (the confirm ✅ takes
|
||||
the fixed 7th slot while a play is staged).
|
||||
the fixed 7th slot while a play is staged). The landscape tray shares the narrow left panel, so its
|
||||
tiles — and with them the `cqw`-sized glyphs — come out smaller than the full-width portrait tray:
|
||||
the **letter** and Erudit's **blank star** are scaled up a quarter there (a `(orientation:
|
||||
landscape)` query in `Rack.svelte`) to stay comfortably legible, while the point value keeps its
|
||||
size — it reads fine small, and growing it would crowd the letter on a tile that size.
|
||||
- **Highlights**: while composing a play the staged tiles are **tinted by legality** — a light
|
||||
green once they form a word (a shade darker on the committed board tiles the word runs through —
|
||||
in a **single-word game** only the main word lights up, since the engine ignores cross words),
|
||||
|
||||
Reference in New Issue
Block a user