[webkit-changes] [WebKit/WebKit] 431aa8: Sample panels on https://colorsublime.github.io ar...

Antti Koivisto noreply at github.com
Tue Jan 28 10:19:42 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 431aa8dced21476808597782a920f664355508d9
      https://github.com/WebKit/WebKit/commit/431aa8dced21476808597782a920f664355508d9
  Author: Antti Koivisto <antti at apple.com>
  Date:   2025-01-28 (Tue, 28 Jan 2025)

  Changed paths:
    A LayoutTests/fast/css/fast-path-explicit-inherit-expected.html
    A LayoutTests/fast/css/fast-path-explicit-inherit.html
    M Source/WebCore/rendering/style/RenderStyle.cpp
    M Source/WebCore/rendering/style/RenderStyle.h
    M Source/WebCore/rendering/style/SVGRenderStyle.cpp
    M Source/WebCore/rendering/style/SVGRenderStyle.h
    M Source/WebCore/style/StyleChange.cpp
    M Source/WebCore/style/StyleChange.h
    M Source/WebCore/style/StyleTreeResolver.cpp

  Log Message:
  -----------
  Sample panels on https://colorsublime.github.io are missing the black background until click
https://bugs.webkit.org/show_bug.cgi?id=286365
rdar://137988602

Reviewed by Simon Fraser.

Fast-path inheritance can not be used if the current style has explicitly inherited properties.

* LayoutTests/fast/css/fast-path-explicit-inherit-expected.html: Added.
* LayoutTests/fast/css/fast-path-explicit-inherit.html: Added.
* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::nonInheritedEqual const):

Add comparison for non-inherited properties.

* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/SVGRenderStyle.cpp:
(WebCore::SVGRenderStyle::operator== const):
(WebCore::SVGRenderStyle::nonInheritedEqual const):
* Source/WebCore/rendering/style/SVGRenderStyle.h:
* Source/WebCore/style/StyleChange.cpp:
(WebCore::Style::determineChange):
* Source/WebCore/style/StyleChange.h:

Add a new style change type for when a fast-path property and a non-inherited property both change.

* Source/WebCore/style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::computeDescendantsToResolve const):
(WebCore::Style::TreeResolver::determineResolutionType):

In that case we also need to check if the style has had any explicitly inherited properties applied and
not use the fast path if so.

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



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


More information about the webkit-changes mailing list