Skip to content

The Save bar stops hiding, and every control wears the shell - #26

Merged
AllTerrainDeveloper merged 1 commit into
mainfrom
fix/child-window-footer-and-shell-controls
Aug 21, 2026
Merged

AllTerrainDeveloper merged 1 commit into
mainfrom
fix/child-window-footer-and-shell-controls

Conversation

@AllTerrainDeveloper

Copy link
Copy Markdown
Owner

Two review findings on the custom-rule child window (follow-up to #25):

The half-cut Save bar

The sticky action bar carried inset-block-end: -14px — meant to cancel the host's bottom padding, but a negative sticky offset parks part of the bar past the scrollport edge, where the window body's overflow: hidden clips it. Hence the half-cut buttons at some window sizes. Fixed properly: the host gives up its bottom padding, the bar owns the bottom edge at inset-block-end: 0, fully visible at every size and scroll position.

os-* everywhere

The last native controls in the validation UI now use the shell's components:

  • "The answer should be" picker → <os-select>. It has no optgroup concept, so the group headings (Contact, Numbers & codes, Text shape, Web, Your own) ride along as disabled <os-option> rows — the listbox paints them muted and unpickable, the same reading an optgroup heading gives.
  • Easy blocks / Expression tabs → <os-segmented>.
  • Character-group tick boxes → the checkbox() helper's <os-checkbox-label>, which also sidesteps the wp-admin raw-checkbox styling traps that helper documents.

The native select with real optgroups (and plain buttons/checkboxes) remains as the fallback on the plain admin page, where the components don't exist.

QA'd live on 8889: bar fully visible and pinned, segmented switch works, grouped listbox renders, picks write through, cancel-on-X still reverts the picker.

🤖 Generated with Claude Code

https://claude.ai/code/session_0119U4sRRWGcTQdwYreTwpAp

`inset-block-end: 0`, exactly: the sticky action bar carried a -14px
offset meant to cancel the host's bottom padding, which parked half
the bar past the scrollport edge where the window body's overflow
clipped it. The host gives up its bottom padding instead — the bar
owns the bottom edge now, at zero, fully visible at every size.

And the last three native controls in the validation UI become the
shell's own: the answer-shape picker is an <os-select> (group
headings ride along as disabled options, painted muted and
unpickable — the reading an optgroup heading gives), the editor's
two modes are an <os-segmented>, and the character-group tick boxes
go through the checkbox() helper's <os-checkbox-label>. The native
select with real optgroups stays as the plain-admin-page fallback.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0119U4sRRWGcTQdwYreTwpAp
@AllTerrainDeveloper
AllTerrainDeveloper merged commit 40406e8 into main Aug 21, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant