Per-shape hide + dimmed shape list in review editor (REQ-185, amended REQ-183)
- ReviewPage: hiddenShapeIds/overriddenShapeIds session Sets, H toggles selected/marked shapes, purge effect removed (dimmed rows selectable from list), auto-override on draw/assist/copy into hidden class, class-eye toggle clears that class's overrides - ReviewSidebar: all rows listed, dimmed rows get restore eye, header count = total shapes - ShortcutsPanel: H entry - docs: REQ-183 amended + REQ-185 added; design/ui-spec/tasks synced
This commit is contained in:
1 parent
96a00267d9
commit
6a36f102c9
7 files changed
+175
-57
No files matched your search
+21
-5
@@ -1285,14 +1285,16 @@ failure modes to the counting path. The saving was always on the browser side.
|
||||
|
||||
## Task — Per-class hide toggle in review editor (REQ-183) `[DONE]`
|
||||
|
||||
1. Eye button on each sidebar class row — a hidden class's shapes leave the canvas, the
|
||||
"Shapes on this frame" list and every selection path while the row keeps its real
|
||||
per-frame count and eye state; the choice is session-only (survives frame changes, resets
|
||||
1. Eye button on each sidebar class row — a hidden class's shapes leave the canvas and every
|
||||
canvas selection path but stay in the "Shapes on this frame" list, dimmed, each with its
|
||||
own restore eye (amended by REQ-185; the old leave-the-list and "not deletable" semantics
|
||||
are superseded — see the REQ-185 entry below), while the row keeps its real per-frame count
|
||||
and eye state; the choice is session-only (survives frame changes, resets
|
||||
when the review page is left, stored data untouched) → verify: **[DONE]** `cd frontend &&
|
||||
npm run build` passes (✓ 535 ms, 69 modules); `wc -l` caps hold —
|
||||
`frontend/src/components/Icons.jsx` (172) and
|
||||
`frontend/src/components/ReviewSidebar.jsx` (129) ≤ 400,
|
||||
`frontend/src/pages/ReviewPage.jsx` (666) exempt (pre-existing over the 400 cap, not
|
||||
`frontend/src/components/ReviewSidebar.jsx` (145) ≤ 400,
|
||||
`frontend/src/pages/ReviewPage.jsx` (725) exempt (pre-existing over the 400 cap, not
|
||||
split by this task); rebuilt Docker frontend serves the new bundle (HTTP 200 on :9000,
|
||||
`aria-pressed` present in the shipped JS); browser click-test of the eye toggle is NOT
|
||||
automated — manual click-test pending.
|
||||
@@ -1321,6 +1323,20 @@ The REQ-031 amendment rides on this entry: cross-class greedy NMS with the per-c
|
||||
override and the containment carve-out is only real once the flag exists and both live sites
|
||||
read it.
|
||||
|
||||
## Task — Per-shape hide + dimmed shape list (REQ-183 amended, REQ-185) `[DONE]`
|
||||
|
||||
1. `H` hides/shows the selected or marked shapes; hidden shapes (by `H` or by their class)
|
||||
stay listed dimmed in "Shapes on this frame", each dimmed row with a restore eye that
|
||||
un-hides or overrides; shapes created into a hidden class (draw, assist, copy)
|
||||
auto-override; the class-eye toggle clears that class's overrides; the old purge effect
|
||||
and its "not deletable" invariant are gone → verify: **[DONE]** `cd frontend && npm run
|
||||
build` passes (✓ 545 ms, 69 modules); `wc -l` — `frontend/src/components/ReviewSidebar.jsx`
|
||||
≤ 400 (145), `frontend/src/components/ShortcutsPanel.jsx` ≤ 400 (69),
|
||||
`frontend/src/pages/ReviewPage.jsx` exempt (725, pre-existing over the 400 cap, not
|
||||
split); `grep` proofs that `'h', 'H'` is in `isShortcutKey` (`ReviewPage.jsx:407`) and
|
||||
that the removed purge effect (`while a class is hidden`) has zero hits left in
|
||||
`ReviewPage.jsx`; browser `H`/eye click-test is NOT automated — manual click-test pending.
|
||||
|
||||
## Known open points
|
||||
|
||||
- *Not closed by any task, by choice:* **any rebuild kills the running job.** Task 14's resume
|
||||
|
||||
Reference in new issue
Block a user