Preserve authored media presentation and slideshow behavior - #1505
Open
chubes4 wants to merge 7 commits into
Open
Preserve authored media presentation and slideshow behavior#1505chubes4 wants to merge 7 commits into
chubes4 wants to merge 7 commits into
Conversation
The generated button border neutralizer decided whether a control had no
border by inspecting only the `border` shorthand from the resolved source
cascade. When a CSS reset zeroed the shorthand (e.g. `a { border: 0 }`) but
a later, higher-specificity rule declared the real border through longhands
(`border-top`/`-right`/`-bottom`/`-left`, or `border-width`/`-style` and
their per-side variants), the neutralizer still fired and force-killed the
authored border with `border-style:none!important`/`border-width:0!important`,
even though the engine had already transposed that border correctly
elsewhere. This is most visible with `var(...)`-driven custom-property
borders, which cannot be proven zero by the shorthand check at all.
Only suppress the neutralizer when none of the shorthand or longhands
contribute a visible border; treat any longhand referencing `var(...)`/
`calc(...)` as potentially visible since it cannot be resolved statically.
…h sizing receivesDefiniteBlockSize() disqualified a stretch-derived-size candidate whenever its min-height was a literal zero, treating it the same as a genuine intrinsic-sizing keyword (min-content). A zero minimum imposes no floor and never itself prevents grid/flex stretch from resolving an item's height -- page builders commonly pair it with height:auto specifically to opt out of the browser's default min-height:auto. Separately, the heuristic only modeled top-down stretch propagation from an ancestor's definite size. A CSS Grid container with height:auto sizes itself, bottom-up, to its own row tracks; when a track's minimum sizing function is itself definite (a length, or minmax(<length>, ...)), the container's auto height is definite too, independent of any ancestor. Neither gap was reachable by the previous synthetic fixture, which put a literal pixel height at the top of its chain and never declared a zero min-height anywhere in it -- which is why the prior fix passed its own test while remaining broken on the real captured document. Reproduced against the real rmamusiclessons.com capture (both the full document and a minimized excerpt of it): #comp-motpujyc3, #comp-motpujyc3 .comp-motpujyc3-container, and [id^="comp-motpujyg1__"] all collapsed their fractional row track to min-content before this fix and keep it after, with zero fallback blocks and the authored object-position focal point intact throughout.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Verification
composer testgit diff --checkcore/imagechildren, 4-second autoplay, 1-second transition, and valid block serialization4bb3bb726e51, Blocks Enginea316e0085b92, ZIP SHA-2564c5c6dd42e98964c11e4bb6818d112dd0d4a143321782041dfaf21e2650b3dc7core/html, freeform, invalid, content-loss, unsafe-SVG, SVG-materialization, or interaction-parity failureshttp://localhost:8913: distinct slide advancement at 4.2s and 8.4s, hover pause/resume passed, reduced-motion pause passed, and zero console errors0px noneto1px solid538x0to538x402Scope
This restores captured static media presentation and explicit authored slideshow behavior through generic transformer and companion-block contracts. The unrelated homepage card hover behavior remains outside this PR because it is absent from the captured CSS/runtime evidence.
AI assistance
OpenCode with Claude Sonnet 5, GPT-5.6 Terra, and GPT-5.6 Sol was used to investigate cascade, geometry, and slideshow behavior; implement and review regression-tested fixes; run package/import verification; and compare browser behavior against the source. Chris Huber directed the scope and reviewed the rendered evidence.