You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
A self-painting component may ignore an animated background colour #324
Eight components paint their own background — badge, callout, tooltip, notification, stat, kbd, caption, codeblock — and they read it from the clone with_cascaded_style produces.
That clone does not carry animation overrides. The cascade only propagates inheritable properties, and background is not one, so resolve_transition_css_overrides writes the interpolated colour onto css.background where the paint pass would have read it — and these eight read their own copy instead.
Before ee173f6 the generic background step still painted, so an animated colour landed under the component's own static one and the result was at least partly right on a translucent fill. Now that the generic step steps aside for these eight, an animated background on one of them should paint the author's static colour for the whole animation.
Reproduce with a badge carrying a timeline step that changes style.background, rendered at a time inside the transition.
Raised by the paint lot on chantier/audit-2026-09-25 from reading the code, not from a render — it is a consequence of that commit that the lot could not verify inside its own scope, and it is a different finding from the double-painting it fixed.
with_cascaded_style still has 11 call sites, so the mechanism is unchanged — the clone still does not carry animation overrides. The reproducer this issue names (badge with a timeline step on style.background) is intact and still the right one.
Activity
LeadcodeDev commentedon Sep 26, 2026
Triaged against
mainat 187cf7c. Still live, on a smaller surface: six of the eight self-painting components remain.mainbadgecallouttooltipstatkbdcaptionnotificationcodeblockwith_cascaded_stylestill has 11 call sites, so the mechanism is unchanged — the clone still does not carry animation overrides. The reproducer this issue names (badgewith atimelinestep onstyle.background) is intact and still the right one.