Tabelkolommen, cel-focus en logo-ruimte #2093

Merged
brenno merged 3 commits from fix/table-columns-focus-logo into main 2026-09-14 16:53:18 +00:00
Owner

Summary

  • Closes #2090, Closes #2092. Kolom links/rechts (en de rest van de tabelwerkbalk) blurren de cel vóór onPressed. De werkbalk hield daardoor geen selectie vast, de kolom verscheen niet, en de cursor lag buiten de tabel. De controller houdt de actieve cel vast tijdens de tap en zet de caret daarna terug in de logische cel.
  • Closes #2091. logoSafeReserve ruimde alleen de inzet achter het logo op. Een tabel of grafiek die de resterende hoogte vult, tekende door het merkteken heen. Occupancy reserveert de hele overlay-box voor table, chart en gantt. Code- en scorecard-dia's blijven op de gereduceerde strip (#1932). Finding/cockpit blijven corner: true (logo op het paneel).

Tests

  • In-place: unfocus-then-Kolom-rechts, Kolom-links verschuift de focus, klik buiten sluit de werkbalk.
  • Layout: onderkant van tabel/grafiek blijft boven size * (1 + kLogoBottomInsetFraction).
  • HTML-export: .logo-safe.logo-occupy krijgt occupancy-padding.

Bewaker

Overgeslagen. Geen bestandsformaat, opslag, afhankelijkheid of nieuwe publieke belofte. Occupancy is layoutrekenkunde; logo-occupy is alleen export-CSS. FILE_FORMAT documenteert bestaande logo-safe-ruimte, geen nieuw token.

Scans

  • make check groen (exit 0) op deze tak.
  • make check-secrets groen (gitleaks + trufflehog).
  • make sast groen (semgrep aanwezig, 0 findings).
  • DAST/ZAP niet gedraaid: ZAP en docker staan hier niet.

Goldens

Geen PNG-baselines meegenomen. 27 golden-diffs na Flutter 3.47.2 waren subpixel-rendering, niet occupancy. make check slaat goldens over.

Test plan

  • Tabeldia: cursor in een cel, Kolom rechts — kolom verschijnt rechts, cursor blijft in de tabel.
  • Zelfde cel, Kolom links — kolom verschijnt links, focus volgt de oorspronkelijke cel.
  • Klik buiten de tabel — werkbalk verdwijnt.
  • Tabel- en grafiekdia met huisstijllogo linksonder: inhoud loopt niet door het logo.
  • Code-dia: paneel tot de volle hoogte, logo in de hoek (ongewijzigd).
  • Presentator live-edit heeft nog steeds geen kolomknoppen (buiten scope).
## Summary - **Closes #2090, Closes #2092.** Kolom links/rechts (en de rest van de tabelwerkbalk) blurren de cel vóór `onPressed`. De werkbalk hield daardoor geen selectie vast, de kolom verscheen niet, en de cursor lag buiten de tabel. De controller houdt de actieve cel vast tijdens de tap en zet de caret daarna terug in de logische cel. - **Closes #2091.** `logoSafeReserve` ruimde alleen de inzet achter het logo op. Een tabel of grafiek die de resterende hoogte vult, tekende door het merkteken heen. Occupancy reserveert de hele overlay-box voor `table`, `chart` en `gantt`. Code- en scorecard-dia's blijven op de gereduceerde strip (#1932). Finding/cockpit blijven `corner: true` (logo op het paneel). ## Tests - In-place: unfocus-then-Kolom-rechts, Kolom-links verschuift de focus, klik buiten sluit de werkbalk. - Layout: onderkant van tabel/grafiek blijft boven `size * (1 + kLogoBottomInsetFraction)`. - HTML-export: `.logo-safe.logo-occupy` krijgt occupancy-padding. ## Bewaker Overgeslagen. Geen bestandsformaat, opslag, afhankelijkheid of nieuwe publieke belofte. Occupancy is layoutrekenkunde; `logo-occupy` is alleen export-CSS. FILE_FORMAT documenteert bestaande `logo-safe`-ruimte, geen nieuw token. ## Scans - `make check` groen (exit 0) op deze tak. - `make check-secrets` groen (gitleaks + trufflehog). - `make sast` groen (semgrep aanwezig, 0 findings). - DAST/ZAP niet gedraaid: ZAP en docker staan hier niet. ## Goldens Geen PNG-baselines meegenomen. 27 golden-diffs na Flutter 3.47.2 waren subpixel-rendering, niet occupancy. `make check` slaat goldens over. ## Test plan - [ ] Tabeldia: cursor in een cel, **Kolom rechts** — kolom verschijnt rechts, cursor blijft in de tabel. - [ ] Zelfde cel, **Kolom links** — kolom verschijnt links, focus volgt de oorspronkelijke cel. - [ ] Klik buiten de tabel — werkbalk verdwijnt. - [ ] Tabel- en grafiekdia met huisstijllogo linksonder: inhoud loopt niet door het logo. - [ ] Code-dia: paneel tot de volle hoogte, logo in de hoek (ongewijzigd). - [ ] Presentator live-edit heeft nog steeds geen kolomknoppen (buiten scope).
A tap on Kolom links/rechts blurred the cell before onPressed, so the
toolbar vanished and the column never appeared. Hold the selection
across that tap and put the caret back in the logical cell.

Co-authored-by: Cursor <cursoragent@cursor.com>
logoSafeReserve only cleared the inset behind the logo, so a table or
chart that fills remaining height drew through the mark. Occupancy
reserves the whole overlay box on those slide types.

Co-authored-by: Cursor <cursoragent@cursor.com>
docs: record table toolbar focus and logo occupancy
All checks were successful
scans / scans (pull_request) Successful in 3m3s
static-gate / static-gate (pull_request) Successful in 6m10s
db0a14c2df
The column buttons keep the caret in the table, and filled slides
reserve the whole logo box rather than the reduced text strip.

Co-authored-by: Cursor <cursoragent@cursor.com>
brenno merged commit 8de2af4ec4 into main 2026-09-14 16:53:18 +00:00
brenno deleted branch fix/table-columns-focus-logo 2026-09-14 16:53:19 +00:00
Sign in to join this conversation.
No description provided.