fix #381: Options-panel footer needs an opaque backing field
Root cause: a live-DAT probe found retail authors NO backing element behind the Character/Chat/Config tabs' Apply/Reset/Defaults footer — each page root has exactly five children (the row ListBox, its scrollbar, and the three buttons) with zero direct-state media on the root itself. Scrolled row content therefore bled through visibly between/behind the three buttons; the bleed-through is a rendering gap in our own composition, not a missing import. Fix: new minimal widget UiSolidSpriteFill tiles RetailChromeSprites.CenterFill (the SAME panel-background sprite the Options window's own chrome already draws behind everything, not an invented color) across the footer strip's rect, derived from the three buttons' own resolved Top/Height and z-ordered strictly behind every other child so it can never intercept input or occlude the buttons. Register row AP-205 records the synthesis. Regressed by OptionsPanelControllerTests. Bind_SynthesizesOneOpaqueFooterBacking_PerPageWithApplyResetDefaults, which pins exactly one backing field per page, sized from the live button rects, z-ordered behind every sibling. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
2a248c0d48
commit
a31fd631ad
7 changed files with 234 additions and 17 deletions
|
|
@ -205,7 +205,12 @@ TrySetOption` seam every other Options-panel consumer already uses.
|
|||
FAILURE shape, not a crash, but still worth flagging which row).
|
||||
2. **Scroll the list** via the scrollbar. All 50+6 rows are reachable;
|
||||
the list does not clip or overlap the Apply/Reset/Defaults buttons at
|
||||
the bottom.
|
||||
the bottom. **Gate-4 re-test note (#381):** the footer strip behind the
|
||||
three buttons previously had NO backing — scrolled row text/content was
|
||||
visible bleeding through between and behind Apply/Reset/Defaults. The
|
||||
footer now has an opaque backing field; report if any content is still
|
||||
visible through or around the three buttons (this applies identically
|
||||
on the Chat and Config tabs' own footer strips, OP5/OP6 below).
|
||||
3. **Confirm the checkboxes reflect your character's actual state** —
|
||||
e.g. if you have `IgnoreAllegianceRequests` on from a prior session,
|
||||
its row should show checked on open (seeded from the live server bit
|
||||
|
|
@ -411,7 +416,9 @@ chat windows already read when deciding which lines to show.
|
|||
cleanly at the panel's bottom edge — scrolling reveals the rest
|
||||
smoothly. A block that disappears ENTIRELY while its header stays (the
|
||||
pre-fix void your gate-3 screenshot review caught) is a regression —
|
||||
report it.
|
||||
report it. **Gate-4 re-test note (#381):** see the Character-tab (OP4)
|
||||
step 2 note — the SAME opaque-footer-backing fix applies to this tab's
|
||||
own Apply/Reset/Defaults strip.
|
||||
3. **Look closely at a row whose mask covers MULTIPLE underlying message
|
||||
types** (Gameplay, Combat, Allegiance, or Fellowship — the composite-mask
|
||||
rows per the research doc) versus a single-bit row (e.g. "Error" or
|
||||
|
|
@ -590,7 +597,8 @@ should show no caption.
|
|||
invented English when a string fails to resolve).
|
||||
2. **Scroll the list** via the scrollbar. All 27 rows are reachable; the
|
||||
list does not clip or overlap the Apply/Reset/Defaults buttons at the
|
||||
bottom.
|
||||
bottom. **Gate-4 re-test note (#381):** see the Character-tab (OP4)
|
||||
step 2 note above — the SAME opaque-footer-backing fix applies here.
|
||||
|
||||
### Live rows — audio
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue