Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4694b41f3b653b53153be246755cb29b37924d00
      
https://github.com/WebKit/WebKit/commit/4694b41f3b653b53153be246755cb29b37924d00
  Author: Tim Nguyen <[email protected]>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation-002-expected.xht
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation-002.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation-002-expected.xht
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation-002.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-002-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-002-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-002.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-002-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-002-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-002.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation.html
    M Source/WebCore/style/StyleTreeResolver.cpp
    M Source/WebCore/style/Styleable.cpp

  Log Message:
  -----------
  [appearance: base] Support animations on ::checkmark pseudo-element
https://bugs.webkit.org/show_bug.cgi?id=308912
rdar://171446434

Reviewed by Antti Koivisto.

Make sure CSS & Web Animations work on <option>, <input type=checkbox>, <input 
type=radio>.

Tests: 
imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation-002.html
       
imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation.html
       
imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation-002.html
       
imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation.html
       
imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-002.html
       
imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation.html
       
imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-002.html
       
imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation.html

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation-002-expected.xht:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation-002.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/checkbox-checkmark-animation.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation-002-expected.xht:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation-002.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-forms/radio-checkmark-animation.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-002-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-002-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-002.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/checkmark-animation.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-002-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-002-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-002.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/picker-icon-animation.html:
 Added.
Add test coverage for checkboxes, radio buttons & selects. Also add coverage 
for ::picker-icon.

* Source/WebCore/style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::resolvePseudoElement):
Fix faulty logic where we would never evaluate the ::checkmark animated style 
on option elements, due to the early return on the input branch.

* Source/WebCore/style/Styleable.cpp:
(WebCore::Styleable::fromRenderer):
(WebCore::Styleable::renderer const):
Make animations work from the Web Animations API, by implementing 
Styleable::fromRenderer and Styleable::renderer.

Canonical link: https://commits.webkit.org/308465@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to