Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7f4974d34f8fa9965b7ec8a3f760285a0c40270c
https://github.com/WebKit/WebKit/commit/7f4974d34f8fa9965b7ec8a3f760285a0c40270c
Author: Anne van Kesteren <[email protected]>
Date: 2026-05-19 (Tue, 19 May 2026)
Changed paths:
A LayoutTests/fast/repaint/select-option-background-color-tracked.html
A
LayoutTests/platform/gtk/fast/repaint/select-option-background-color-tracked-expected.txt
A
LayoutTests/platform/mac/fast/repaint/select-option-background-color-tracked-expected.txt
A
LayoutTests/platform/wpe/fast/repaint/select-option-background-color-tracked-expected.txt
M Source/WebCore/dom/Element.cpp
M Source/WebCore/dom/Element.h
M Source/WebCore/html/HTMLOptionElement.cpp
M Source/WebCore/html/HTMLOptionElement.h
Log Message:
-----------
REGRESSION (310623@main): Style changes to <option> (or children) do not
repaint <select>
https://bugs.webkit.org/show_bug.cgi?id=314947
rdar://177200878
Reviewed by Abrar Rahman Protyasha.
310623@main removed HTMLOptionElement::willResetComputedStyle() on the
assumption that the existing test coverage was sufficient, but the
existing reference test would always repaint before comparison.
So we restore the hook, with two improvements:
- Tighten the dispatch invariant in Element::resetComputedStyle() to
only fire willResetComputedStyle for elements without a renderer.
This is relevant in the new world of appearance: base.
- Add a repaint regression test.
The FIXME about firing on no-op style resets moves to the dispatch site,
where the over-eager behavior actually lives.
Canonical link: https://commits.webkit.org/313466@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications