Tab-group focus ring is invisible on the inactive group
The reviewer asked for changes
2 blocking, 1 suggestion. Addressing them continues the same branch and PR — the next review will be incremental.
Review findings
elitebook · 4m 51s · $0.38
blocking
quadraui/src/tabs/focus.rs:214
The focus ring is drawn before the group's active state is resolved
On the inactive group, draw_focus_ring reads self.active while it is still the previous frame's value, so the ring renders with the inactive palette and disappears against the surface. Resolve the active state first, then draw.
- let style = if self.active { RING_ACTIVE } else { RING_IDLE }; + let active = self.resolve_active(ctx); + let style = if active { RING_ACTIVE } else { RING_IDLE };
blocking
no test added
Behavior change ships without a black-box test
The repo's acceptance bar requires a test that drives the running app and asserts on rendered output. This changes what the user sees on screen, so it is not exempt as an internal refactor. A TuiDriver case asserting the ring's cells on the inactive group would cover it.
suggestion
quadraui/src/tabs/focus.rs:198
RING_IDLE and RING_DIM are now identical
Both resolve to the same token after this change. Not blocking, but one of them is now dead and will confuse the next reader.
Session
4 sessions- Branch
- issue-1289-focus-ring · 5 commits ahead of develop
- PR
- #372 · mergeable · CI green
- Acceptance
- ms-08 slice · 12 passed · 0 failed
- Total spend
- $2.44 · 51m wall-clock
- Interventions
- 1 (this review)