Branch: refs/heads/webkitglib/2.50
  Home:   https://github.com/WebKit/WebKit
  Commit: 6a20f6ccab796d9aa022feea67e589f2db129b6e
      
https://github.com/WebKit/WebKit/commit/6a20f6ccab796d9aa022feea67e589f2db129b6e
  Author: David Kilzer <[email protected]>
  Date:   2025-11-10 (Mon, 10 Nov 2025)

  Changed paths:
    M Source/WebCore/svg/SVGCircleElement.h
    M Source/WebCore/svg/SVGRectElement.h

  Log Message:
  -----------
  Cherry-pick 299969@main (4397d9f07bfd). 
https://bugs.webkit.org/show_bug.cgi?id=298817

    Fix static_assert() in 
WebCore::SVGPropertyOwnerRegistry::fastAnimatedPropertyLookup() with upstream 
clang
    <https://bugs.webkit.org/show_bug.cgi?id=298817>
    <rdar://157029024>

    Reviewed by Matthieu Dubet.

    The issue is that the `propertyForAttribute()` method on `SVGRectElement`
    and `SVGCircleElement` is declared `private`, but concept evaluation
    occurs during template instantiation, before `friend` relationships are
    considered.

    No new tests since this fixes a compiler error and there is no change in
    behavior.

    * Source/WebCore/svg/SVGCircleElement.h:
    (WebCore::SVGCircleElement::propertyForAttribute):
    - Move from private to public method.
    - Remove unneeded friend declaration.
    * Source/WebCore/svg/SVGRectElement.h:
    (WebCore::SVGRectElement::propertyForAttribute): Ditto.

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

Canonical link: https://commits.webkit.org/298234.237@webkitglib/2.50


  Commit: 9ddc37ff3fa3a0ea277ced444592568f9213c4b1
      
https://github.com/WebKit/WebKit/commit/9ddc37ff3fa3a0ea277ced444592568f9213c4b1
  Author: Antti Koivisto <[email protected]>
  Date:   2025-11-10 (Mon, 10 Nov 2025)

  Changed paths:
    M Source/WebCore/style/ChildChangeInvalidation.cpp
    M Source/WebCore/style/ClassChangeInvalidation.cpp
    M Source/WebCore/style/RuleFeature.cpp
    M Source/WebCore/style/RuleFeature.h
    M Source/WebCore/style/StyleInvalidator.cpp

  Log Message:
  -----------
  Cherry-pick 299162@main (197ddc80fe10). 
https://bugs.webkit.org/show_bug.cgi?id=297893

    Limit the scope of invalidation traversal for `:has(> .changed) .subject`
    https://bugs.webkit.org/show_bug.cgi?id=297893
    rdar://159173631

    Reviewed by Simon Fraser.

    It is sufficient to traverse the subtree of the parent to invalidate in 
this case, rather than the entire DOM.

    This helps with GitHub performance as it uses selectors of this type.

    * Source/WebCore/style/ChildChangeInvalidation.cpp:
    (WebCore::Style::ChildChangeInvalidation::invalidateForChangedElement):
    * Source/WebCore/style/ClassChangeInvalidation.cpp:
    (WebCore::Style::ClassChangeInvalidation::computeInvalidation):
    * Source/WebCore/style/RuleFeature.cpp:
    (WebCore::Style::isSiblingOrSubject):
    (WebCore::Style::isScopeBreaking):
    (WebCore::Style::computeHasPseudoClassMatchElement):
    (WebCore::Style::computeSubSelectorMatchElement):

    Add two new MatchElement types for these cases:

    `:has(> .changed) .subject
    `:has(> .changed) > .subject

    * Source/WebCore/style/RuleFeature.h:
    * Source/WebCore/style/StyleInvalidator.cpp:
    (WebCore::Style::Invalidator::invalidateStyleWithMatchElement):

    Traverse only the required subtrees for the new types.
    Also document each invalidation traversal case.

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

Canonical link: https://commits.webkit.org/298234.238@webkitglib/2.50


Compare: https://github.com/WebKit/WebKit/compare/6d8963c9a27d...9ddc37ff3fa3

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

Reply via email to