Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 678dffbdeee18b4293c530c8793ba7a0430bd9a4
      
https://github.com/WebKit/WebKit/commit/678dffbdeee18b4293c530c8793ba7a0430bd9a4
  Author: Kiet Ho <[email protected]>
  Date:   2026-03-17 (Tue, 17 Mar 2026)

  Changed paths:
    M LayoutTests/TestExpectations
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-color-scheme-property-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-color-scheme-property.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-meta-color-scheme-dynamic-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-meta-color-scheme-dynamic.html
    R 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-property-expected.txt
    R 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-property.html
    M Source/WebCore/css/CSSProperties.json
    M Source/WebCore/style/StyleBuilderCustom.h
    M 
Source/WebCore/style/computed/StyleComputedStyleProperties+InitialCustomInlines.h
    M Source/WebCore/style/computed/data/StyleInheritedData.cpp

  Log Message:
  -----------
  color: initial is incorrect with dark appearance
rdar://172320282
https://bugs.webkit.org/show_bug.cgi?id=309726

Reviewed by Antti Koivisto.

The generated code to assign initial value to "color" property uses
ComputedStyleProperties::initialColor(), which returns black regardless
of the used color scheme. Therefore, color: initial on an dark color scheme
page would result in black text on dark background.

This patch adds a custom initial function for "color" property. The function
sets its value to CanvasText, the initial color according to spec. It then
gets resolved to the appropriate color depending on the used color scheme.

Tests: 
imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-color-scheme-property.html
       
imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-meta-color-scheme-dynamic.html
       
imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-visited-link-initial.html

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-color-scheme-property-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-color-scheme-property.html:
 Renamed from 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-property.html.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-meta-color-scheme-dynamic-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-initial-affected-by-meta-color-scheme-dynamic.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-property-expected.txt:
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyInitialColor):
    - Duplicate logic in BuilderCustom::applyValueColor to set color to 
CanvasText.

* 
Source/WebCore/style/computed/StyleComputedStyleProperties+InitialCustomInlines.h:
(WebCore::Style::ComputedStyleProperties::initialColor):
    - Remove this method; it's only used to initialize Style::InheritedData,
      and the return value is misleading anyway.

* Source/WebCore/style/computed/data/StyleInheritedData.cpp:
(WebCore::Style::InheritedData::InheritedData):

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



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

Reply via email to