[webkit-changes] [WebKit/WebKit] 9f0a44: [view-transitions] Names should be tree-scoped

2024-05-13 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9f0a58dd7345fc047aaeff53e7e8aef5ec55
  
https://github.com/WebKit/WebKit/commit/9f0a58dd7345fc047aaeff53e7e8aef5ec55
  Author: Tim Nguyen 
  Date:   2024-05-13 (Mon, 13 May 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/platform/glib/TestExpectations
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  [view-transitions] Names should be tree-scoped
https://bugs.webkit.org/show_bug.cgi?id=273883
rdar://127995859

Reviewed by Antti Koivisto.

Corresponding spec issue: https://github.com/w3c/csswg-drafts/issues/10145
Corresponding spec PR: https://github.com/w3c/csswg-drafts/pull/10306

This ignores view-transition names from shadow DOM, given the pseudo-elements 
are linked to the document element,
exposing shadow DOM names to the view transition pseudo-elements would be a 
violation of shadow DOM principles.

We don't check for the tree scope directly in `forEachRendererInPaintOrder` 
because a shadow DOM element might have
flat tree descendants that have an outer tree scope.

We also use the `Styleable`'s element instead of `RenderElement`'s element 
because for pseudo-elements we want to consider
the associated element's tree scope.

* LayoutTests/TestExpectations:
* LayoutTests/platform/glib/TestExpectations:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::captureOldState):
(WebCore::ViewTransition::captureNewState):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 8f767a: Re-import css/css-color WPT

2024-05-13 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8f767adb0b680848a5c23dfeca7e4df409a9382e
  
https://github.com/WebKit/WebKit/commit/8f767adb0b680848a5c23dfeca7e4df409a9382e
  Author: Tim Nguyen 
  Date:   2024-05-13 (Mon, 13 May 2024)

  Changed paths:
M LayoutTests/imported/w3c/resources/resource-files.json
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/009900-image-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/009900-tagged-image-ref.html
R LayoutTests/imported/w3c/web-platform-tests/css/css-color/LICENSE
M LayoutTests/imported/w3c/web-platform-tests/css/css-color/WEB_FEATURES.yml
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/a98rgb-003-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/a98rgb-004-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/animation/opacity-animation-ending-correctly-001-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/animation/w3c-import.log
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/background-color-hsl-001-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/background-color-hsl-002-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/background-color-hsl-003-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/background-color-hsl-004-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/background-color-rgb-001-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/background-color-rgb-002-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/background-color-rgb-003-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/blacksquare-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/blacktext-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/border-color-currentcolor-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/border-color-ref.xht
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/clip-opacity-out-of-flow-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-basic-001-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-001-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-002-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-003-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-nested-for-color-property-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-non-srgb-001-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-percents-01-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/composited-filters-under-opacity-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-003-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-004-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-visited-fallback-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-ButtonBorder-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-ButtonFace-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-Canvas-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-CanvasText-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-GrayText-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/display-p3-004-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/greensquare-090-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/greensquare-display-p3-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/greensquare-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/greentext-ref.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-color/hex-003-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/hsl-clamp-negative-saturation-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/hsla-clamp-negative-saturation-ref.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-color/hwb-003-ref.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-color/hwb-004-ref.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-color/hwb-005-ref.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-004-ref.html

[webkit-changes] [WebKit/WebKit] 000602: Re-import css/css-view-transitions WPT

2024-05-13 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 000602eb47afcc73832ebf98aec64e8fa58c7b6a
  
https://github.com/WebKit/WebKit/commit/000602eb47afcc73832ebf98aec64e8fa58c7b6a
  Author: Tim Nguyen 
  Date:   2024-05-13 (Mon, 13 May 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/hit-test-unpainted-element-from-point.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-new-iframe.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-new-main-old-iframe.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-new-iframe.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-old-iframe.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-old-main.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-and-main-frame-transition-with-name-on-iframe.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/names-are-tree-scoped-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/names-are-tree-scoped-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/names-are-tree-scoped.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-cssom-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-cssom.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-layer-cascade-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-layer-cascade-external-stylesheet-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-layer-cascade-external-stylesheet.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-layer-cascade.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-layer-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-layer.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-matching-media-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-matching-media.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-non-matching-media-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-non-matching-media.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-shadow-dom-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/at-rule-in-shadow-dom.html

[webkit-changes] [WebKit/WebKit] 516913: [view-transitions] Refactor timing of "update call...

2024-05-10 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5169139ac1127c419017b37d9f2106a2c199070f
  
https://github.com/WebKit/WebKit/commit/5169139ac1127c419017b37d9f2106a2c199070f
  Author: Tim Nguyen 
  Date:   2024-05-10 (Fri, 10 May 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/duplicate-tag-rejects-start.html
M Source/JavaScriptCore/runtime/JSPromise.cpp
M Source/JavaScriptCore/runtime/JSPromise.h
M Source/WebCore/bindings/js/JSDOMPromiseDeferred.h
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  [view-transitions] Refactor timing of "update callback done" and related
https://bugs.webkit.org/show_bug.cgi?id=273969
rdar://127834364

Reviewed by Darin Adler.

Implements:
https://github.com/w3c/csswg-drafts/commit/9d5ed6f403cc02b62674e7dd645eaec7598b8135

https://github.com/w3c/csswg-drafts/commit/f62c43823f27926efeadfea7945487a6126a7bb8

This makes the algorithm only react to the update callback from a single place.

Also fix duplicate-tag-rejects-start.html to not check for updateCallbackDone 
promise timing twice.
The correct timing is: “update callback done -> ready rejects -> finished 
resolves” (as the "Skip the view transition" algorithm expects)

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/duplicate-tag-rejects-start.html:
* Source/JavaScriptCore/runtime/JSPromise.cpp:
(JSC::JSPromise::markAsHandled):
(JSC::JSPromise::rejectAsHandled):
* Source/JavaScriptCore/runtime/JSPromise.h:
* Source/WebCore/bindings/js/JSDOMPromiseDeferred.h:
(WebCore::DeferredPromise::markAsHandled const):
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::callUpdateCallback):
(WebCore::ViewTransition::setupViewTransition):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] c8fc95: Re-import css/css-view-transitions WPT

2024-05-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c8fc955f74a3ba462e3738aace67c17544db90f8
  
https://github.com/WebKit/WebKit/commit/c8fc955f74a3ba462e3738aace67c17544db90f8
  Author: Tim Nguyen 
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/hit-test-unpainted-element-from-point-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/hit-test-unpainted-element-from-point-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-transition-destroyed-document-crash.html
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-with-classes-match-wildard-expected.html
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-with-classes-match-wildard.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-with-classes-match-wildcard-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-with-classes-match-wildcard.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-element-display-none-during-transition-crash.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-to-shared-animation-incoming-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-to-shared-animation-incoming-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/w3c-import.log
M LayoutTests/platform/glib/TestExpectations
M LayoutTests/platform/ios/TestExpectations
M LayoutTests/platform/mac/TestExpectations

  Log Message:
  ---
  Re-import css/css-view-transitions WPT
https://bugs.webkit.org/show_bug.cgi?id=273664
rdar://127467132

Reviewed by Matt Woodrow.

Upstream commit: 
https://github.com/web-platform-tests/wpt/commit/8fdc5d7317af5c0d7812c26366d066843bc523ae

* LayoutTests/TestExpectations:
* LayoutTests/imported/w3c/resources/resource-files.json:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/hit-test-unpainted-element-from-point-expected.html:
 Removed.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/hit-test-unpainted-element-from-point-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-transition-destroyed-document-crash.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-with-classes-match-wildcard-expected.html:
 Renamed from 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-with-classes-match-wildard-expected.html.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-with-classes-match-wildcard.html:
 Renamed from 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-with-classes-match-wildard.html.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-element-display-none-during-transition-crash.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-to-shared-animation-incoming-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-to-shared-animation-incoming-ref.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/w3c-import.log:
* LayoutTests/platform/glib/TestExpectations:
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac/TestExpectations:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4a5646: [view-transitions] Make some ViewTransition class ...

2024-05-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4a564661862405915a26b884f143172d6246fd3f
  
https://github.com/WebKit/WebKit/commit/4a564661862405915a26b884f143172d6246fd3f
  Author: Tim Nguyen 
  Date:   2024-05-02 (Thu, 02 May 2024)

  Changed paths:
M Source/WebCore/dom/ViewTransition.h

  Log Message:
  ---
  [view-transitions] Make some ViewTransition class methods private
https://bugs.webkit.org/show_bug.cgi?id=273641
rdar://127444086

Reviewed by Matt Woodrow.

Make methods unused outside of the ViewTransition class private.

* Source/WebCore/dom/ViewTransition.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 88b97c: `UIScriptControllerIOS::sendEventStream` sometimes...

2024-05-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 88b97cdbbb91799427d8144d6425d8743fdf301e
  
https://github.com/WebKit/WebKit/commit/88b97cdbbb91799427d8144d6425d8743fdf301e
  Author: Tim Nguyen 
  Date:   2024-05-02 (Thu, 02 May 2024)

  Changed paths:
M Tools/TestRunnerShared/Bindings/JSWrappable.h

  Log Message:
  ---
  `UIScriptControllerIOS::sendEventStream` sometimes asserts on debug builds
https://bugs.webkit.org/show_bug.cgi?id=273601
rdar://124414379

Reviewed by Wenson Hsieh.

Fix following assertion by making JSWrappable inherit from ThreadSafeRefCounted:

```
ASSERTION FAILED: Unsafe to ref/deref from different threads
m_isOwnedByMainThread == isMainThread()
/System/Volumes/Data/otmp/case-sensitive/od.luxon/lw.luxon/sandbox-0/Desktop/Build/Build/Products/webkit/usr/local/include/wtf/RefCounted.h(119)
 : void WTF::RefCountedBase::applyRefDerefThreadingCheck() const
1   0x10f2736d9 WTFCrash
2   0x10a16f24a WTF::RefCountedBase::applyRefDerefThreadingCheck() const
3   0x10a16f059 WTF::RefCountedBase::derefAllowingPartiallyDestroyedBase() const
4   0x10a16eff0 WTF::RefCountedBase::derefBase() const
5   0x10a1ada69 WTF::RefCounted>::deref() const
6   0x10a1cbda2 
WTF::DefaultRefDerefTraits::derefIfNotNull(WTR::UIScriptControllerIOS*)
7   0x10a1cbd61 WTF::Ref, 
WTF::DefaultRefDerefTraits>::~Ref()
8   0x10a1b57a5 WTF::Ref, 
WTF::DefaultRefDerefTraits>::~Ref()
9   0x10a1c6079 WTR::UIScriptControllerIOS::sendEventStream(OpaqueJSString*, 
OpaqueJSValue const*)::$_15::~$_15()
10  0x10a1b9195 WTR::UIScriptControllerIOS::sendEventStream(OpaqueJSString*, 
OpaqueJSValue const*)::$_15::~$_15()
```

* Tools/TestRunnerShared/Bindings/JSWrappable.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b134d3: [@starting-style] Fix double whitespace in seriali...

2024-04-29 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b134d32eb7db41231e46c100adef1169ef0fd3fa
  
https://github.com/WebKit/WebKit/commit/b134d32eb7db41231e46c100adef1169ef0fd3fa
  Author: Tim Nguyen 
  Date:   2024-04-29 (Mon, 29 Apr 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/parsing/starting-style-parsing-expected.txt
M Source/WebCore/css/CSSStartingStyleRule.cpp

  Log Message:
  ---
  [@starting-style] Fix double whitespace in serialization
https://bugs.webkit.org/show_bug.cgi?id=273438
rdar://127257305

Reviewed by Cameron McCormack.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/parsing/starting-style-parsing-expected.txt:
* Source/WebCore/css/CSSStartingStyleRule.cpp:
(WebCore::CSSStartingStyleRule::cssText const):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 432988: REGRESSION (277958@main): [ macOS ASan GuardMalloc...

2024-04-29 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4329889dd57ff859ecff6cf57f82c821ece9ff92
  
https://github.com/WebKit/WebKit/commit/4329889dd57ff859ecff6cf57f82c821ece9ff92
  Author: Tim Nguyen 
  Date:   2024-04-29 (Mon, 29 Apr 2024)

  Changed paths:
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  REGRESSION (277958@main): [ macOS ASan GuardMalloc wk2 ] Multiple 
css-view-transitions tests are flaky crash
https://bugs.webkit.org/show_bug.cgi?id=273451
rdar://127258163

Reviewed by Chris Dumez.

Set `ViewTransition::m_phase` before 
`document->setActiveViewTransition(nullptr);` is called in 
`ViewTransition::clearViewTransition()` to prevent UAF.

* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::stop):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e2ac48: Re-import css/css-transitions WPT

2024-04-29 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e2ac4828cf48421940986b2a73c003eb8f00643e
  
https://github.com/WebKit/WebKit/commit/e2ac4828cf48421940986b2a73c003eb8f00643e
  Author: Tim Nguyen 
  Date:   2024-04-29 (Mon, 29 Apr 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/CSSTransition-effect.tentative.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/parsing/starting-style-parsing-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/parsing/starting-style-parsing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/parsing/w3c-import.log
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/w3c-import.log

  Log Message:
  ---
  Re-import css/css-transitions WPT
https://bugs.webkit.org/show_bug.cgi?id=273439
rdar://127264296

Reviewed by Matt Woodrow.

Upstream commit: 
https://github.com/web-platform-tests/wpt/commit/8c6b479fae23badbb86e9c993f5b5fbb66e16905

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/CSSTransition-effect.tentative.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/parsing/starting-style-parsing-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/parsing/starting-style-parsing.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/parsing/w3c-import.log:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-transitions/w3c-import.log:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] c260b2: Re-import css/css-view-transitions WPT

2024-04-25 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c260b2daba967cdd051caf9f706517684a2cffdb
  
https://github.com/WebKit/WebKit/commit/c260b2daba967cdd051caf9f706517684a2cffdb
  Author: Tim Nguyen 
  Date:   2024-04-24 (Wed, 24 Apr 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/3d-transform-incoming.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/3d-transform-outgoing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/block-with-overflowing-text.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/break-inside-avoid-child.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/capture-with-offscreen-child.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/capture-with-opacity-zero-child.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/capture-with-visibility-mixed-descendants.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/clip-path-larger-than-border-box-on-child-of-named-element.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transform-new-image.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transform-old-image.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/css-tags-paint-order-with-entry.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/dialog-in-rtl-iframe.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/far-away-capture.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/fractional-box-with-overflow-children-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/fractional-box-with-overflow-children-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-new-has-scrollbar.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-old-has-scrollbar.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/iframe-transition.sub.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/inline-with-offset-from-containing-block.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-below-viewport-offscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-below-viewport-offscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-left-of-viewport-offscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-left-of-viewport-partially-onscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-on-top-of-viewport-offscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-on-top-of-viewport-partially-onscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-right-of-viewport-offscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-right-of-viewport-partially-onscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/multiline-span-with-overflowing-text-and-box-decorations.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css

[webkit-changes] [WebKit/WebKit] f6ed29: [view-transitions] Clear view transition on naviga...

2024-04-24 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f6ed29f91fc8f5d7fbde9c3d4a825b07dd6111fb
  
https://github.com/WebKit/WebKit/commit/f6ed29f91fc8f5d7fbde9c3d4a825b07dd6111fb
  Author: Tim Nguyen 
  Date:   2024-04-24 (Wed, 24 Apr 2024)

  Changed paths:
M LayoutTests/platform/mac-wk1/TestExpectations
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/dom/ViewTransition.h
M Source/WebCore/dom/ViewTransition.idl

  Log Message:
  ---
  [view-transitions] Clear view transition on navigation
https://bugs.webkit.org/show_bug.cgi?id=272792
rdar://126590072

Reviewed by Chris Dumez.

The VT crashtests were causing the following test to flakily crash. To fix 
this, clear the view transition when the user navigates by
using ActiveDOMObject and defining a stop method.

Also protect the document in `ViewTransition::callUpdateCallback`.

* LayoutTests/platform/mac-wk1/TestExpectations:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::ViewTransition):
(WebCore::ViewTransition::create):
(WebCore::ViewTransition::skipViewTransition):
(WebCore::ViewTransition::callUpdateCallback):
(WebCore::ViewTransition::setupViewTransition):
(WebCore::ViewTransition::captureOldState):
(WebCore::ViewTransition::captureNewState):
(WebCore::ViewTransition::setupTransitionPseudoElements):
(WebCore::ViewTransition::handleTransitionFrame):
(WebCore::ViewTransition::clearViewTransition):
(WebCore::ViewTransition::updatePseudoElementStyles):
(WebCore::ViewTransition::stop):
* Source/WebCore/dom/ViewTransition.h:
(WebCore::ViewTransition::document const):
(WebCore::ViewTransition::protectedDocument const):
* Source/WebCore/dom/ViewTransition.idl:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] cd5d1b: heap-use-after-free | WebCore::RenderLayer::update...

2024-04-20 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: cd5d1b32f5a4b4348623a5171df6bfba1f92b4f2
  
https://github.com/WebKit/WebKit/commit/cd5d1b32f5a4b4348623a5171df6bfba1f92b4f2
  Author: Tim Nguyen 
  Date:   2024-04-20 (Sat, 20 Apr 2024)

  Changed paths:
A 
LayoutTests/fast/css/view-transitions-update-layer-lists-crash-expected.txt
A LayoutTests/fast/css/view-transitions-update-layer-lists-crash.html
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  heap-use-after-free | WebCore::RenderLayer::updateLayerListsIfNeeded; 
WebCore::forEachElementInPaintOrder; WebCore::forEachElementInPaintOrder
https://bugs.webkit.org/show_bug.cgi?id=272868
rdar://126636219

Reviewed by Ryosuke Niwa.

The code inside the `forEachElementInPaintOrder` callback can end up destroying 
RenderLayers indirectly through `updateStyleIfNeeded` which is invoked through 
`Element::checkVisibility`.

Call `document->updateStyleIfNeeded()` before the callback is invoked to avoid 
destroying RenderLayers while iterating through layers.

* LayoutTests/fast/css/view-transitions-update-layer-lists-crash-expected.txt: 
Added.
* LayoutTests/fast/css/view-transitions-update-layer-lists-crash.html: Added.
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::captureOldState):
(WebCore::ViewTransition::activateViewTransition):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] c0585c: REGRESSION (277481@main): [ MacOS iOS ] TestWebKit...

2024-04-18 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c0585c6e126aad91705960171cfc6317a6c3051f
  
https://github.com/WebKit/WebKit/commit/c0585c6e126aad91705960171cfc6317a6c3051f
  Author: Tim Nguyen 
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in

  Log Message:
  ---
  REGRESSION (277481@main): [ MacOS iOS ] 
TestWebKitAPI.IPCTestingAPI.SerializedTypeInfo is a consistent failure
https://bugs.webkit.org/show_bug.cgi?id=272871
rdar://126657596

Reviewed by Aditya Keerthi.

The test log showed an item with leading whitespace that was introduced by 
277481@main:

{(
CTFontDescriptorOptions,
"NSObject",
WKDDActionContext,
PKSecureElementPass,
"WebKit::ObjCObjectGraph",
GCGLErrorCodeSet,
NSURLRequest,
CGDisplayChangeSummaryFlags,
" WebCore::ColorInterpolationMethod::XYZD50",
MachSendRight,
CGBitmapInfo,
"WebCore::ContextMenuAction",
NSParagraphStyle
)}

Fix it by removing that extra leading whitespace.

* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9c5697: [view-transitions] Update WPT fuzzy metadata

2024-04-17 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9c569710b6ad72d777d1631c933717c4e9f0b171
  
https://github.com/WebKit/WebKit/commit/9c569710b6ad72d777d1631c933717c4e9f0b171
  Author: Tim Nguyen 
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-captures-spans.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/rotated-cat-off-top-edge.html
M LayoutTests/platform/ios/TestExpectations

  Log Message:
  ---
  [view-transitions] Update WPT fuzzy metadata
https://bugs.webkit.org/show_bug.cgi?id=272834
rdar://126632308

Reviewed by Matt Woodrow.

There are more fuzzy failures, but this PR focuses on the ones that are not 
visible to the naked eye.

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-below-and-on-top-of-viewport-partially-onscreen-old.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-below-viewport-partially-onscreen-old.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/massive-element-right-and-left-of-viewport-partially-onscreen-old.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-captures-spans.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/rotated-cat-off-top-edge.html:
* LayoutTests/platform/ios/TestExpectations:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 40db97: Re-import css/css-view-transitions WPT

2024-04-17 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 40db97d2841b69caaa93967274fd248d27301e93
  
https://github.com/WebKit/WebKit/commit/40db97d2841b69caaa93967274fd248d27301e93
  Author: Tim Nguyen 
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/3d-transform-incoming-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/3d-transform-incoming-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/3d-transform-incoming.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/3d-transform-outgoing-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/3d-transform-outgoing-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/3d-transform-outgoing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-object-fit-fill-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-object-fit-none-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-smaller-than-box-size-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-smaller-than-box-size-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-smaller-than-box-size.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-visibility-auto-shared-element-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-visibility-auto-shared-element-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-visibility-auto-shared-element.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-child-with-transparent-background-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-child-with-transparent-background-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-child-with-transparent-background.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-clip-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-clip-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-clip-root-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-clip-root-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-clip-root.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-clip.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-inline-child-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-inline-child-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-inline-child.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-object-view-box-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-overflow-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-overflow-zoomed-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transform-new-image-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transform-new-image.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transform-old-image-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transform-old-image.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transform-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transparent-background-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transparent-background-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/content-with-transparent-background.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/css-tags-paint-order-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/css-tags-paint-order-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/css-tags-paint-order-with-entry-expected.html
M 
LayoutTests/imported/w3c/web-platform

[webkit-changes] [WebKit/WebKit] 23f98c: Garden imported/w3c/web-platform-tests/css/css-vie...

2024-04-16 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 23f98c802a0f73d334af47b40aa380a1445df506
  
https://github.com/WebKit/WebKit/commit/23f98c802a0f73d334af47b40aa380a1445df506
  Author: Tim Nguyen 
  Date:   2024-04-16 (Tue, 16 Apr 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/platform/ios/TestExpectations
M LayoutTests/platform/mac/TestExpectations

  Log Message:
  ---
  Garden 
imported/w3c/web-platform-tests/css/css-view-transitions/window-resize-aborts-transition*
 tests
https://bugs.webkit.org/show_bug.cgi?id=271388
rdar://125172108

Unreviewed, test gardening.

imported/w3c/web-platform-tests/css/css-view-transitions/window-resize-aborts-transition.html
 only fails on Ventura/Monterey, update to reflect this.

imported/w3c/web-platform-tests/css/css-view-transitions/window-resize-aborts-transition-before-ready.html
 fails on iOS because it relies on resizable popups.

* LayoutTests/TestExpectations:
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac/TestExpectations:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 84ebf5: heap-use-after-free | Style::Resolver::setViewTran...

2024-04-15 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 84ebf5141996487b18210ca5c38429477fc7eb23
  
https://github.com/WebKit/WebKit/commit/84ebf5141996487b18210ca5c38429477fc7eb23
  Author: Tim Nguyen 
  Date:   2024-04-15 (Mon, 15 Apr 2024)

  Changed paths:
A 
LayoutTests/fast/css/view-transitions-update-pseudo-element-crash-expected.txt
A LayoutTests/fast/css/view-transitions-update-pseudo-element-crash.html
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  heap-use-after-free | Style::Resolver::setViewTransitionStyles; 
WebCore::ViewTransition::updatePseudoElementStyles; 
WebCore::ViewTransition::activateViewTransition
https://bugs.webkit.org/show_bug.cgi?id=272709
rdar://125944789

Reviewed by Chris Dumez.

Adopt `Ref` smart pointer to fix the UAF.

* 
LayoutTests/fast/css/view-transitions-update-pseudo-element-crash-expected.txt: 
Added.
* LayoutTests/fast/css/view-transitions-update-pseudo-element-crash.html: Added.
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::setupDynamicStyleSheet):
(WebCore::ViewTransition::updatePseudoElementStyles):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d24163: Cherry-pick 277035@main (fef30aefacf7). https://bu...

2024-04-12 Thread Tim Nguyen
  Branch: refs/heads/webkitglib/2.44
  Home:   https://github.com/WebKit/WebKit
  Commit: d24163a104986bb3b4db2337da67389dd1f822d6
  
https://github.com/WebKit/WebKit/commit/d24163a104986bb3b4db2337da67389dd1f822d6
  Author: Jer Noble 
  Date:   2024-04-12 (Fri, 12 Apr 2024)

  Changed paths:
M Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp
M Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.h

  Log Message:
  ---
  Cherry-pick 277035@main (fef30aefacf7). 
https://bugs.webkit.org/show_bug.cgi?id=272048

Thread safety warning: MediaFormatReader m_duration is unprotected by 
m_parseTracksLock
rdar://124551630
https://bugs.webkit.org/show_bug.cgi?id=272048

Reviewed by Eric Carlson.

In addition to holding the lock when accessing m_duration, we should also 
not be handing
a reference to an internal variable that can be modified off the calling 
thread.

* Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp:
(WebKit::MediaFormatReader::duration const):
* Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.h:

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

Canonical link: https://commits.webkit.org/274313.131@webkitglib/2.44


  Commit: 8ce83c4bf224122e0062248752a3ed014efc67e5
  
https://github.com/WebKit/WebKit/commit/8ce83c4bf224122e0062248752a3ed014efc67e5
  Author: Tim Nguyen 
  Date:   2024-04-12 (Fri, 12 Apr 2024)

  Changed paths:
M Source/WebCore/dom/RadioButtonGroups.cpp

  Log Message:
  ---
  Cherry-pick 277007@main (1870b119a450). 
https://bugs.webkit.org/show_bug.cgi?id=272044

CrashTracer: com.apple.WebKit.WebContent at WebCore: 
WebCore::ValidatedFormListedElement::updateValidity
https://bugs.webkit.org/show_bug.cgi?id=272044
rdar://117727866

Reviewed by Ryosuke Niwa.

It speculatively fixes a bug that RadioButtonGroup::m_members may contain a 
nullptr WeakRef.

* Source/WebCore/dom/RadioButtonGroups.cpp:
(WebCore::RadioButtonGroup::isEmpty const):
(WebCore::RadioButtonGroup::remove):
(WebCore::RadioButtonGroup::setNeedsStyleRecalcForAllButtons):
(WebCore::RadioButtonGroup::updateValidityForAllButtons):

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

Canonical link: https://commits.webkit.org/274313.132@webkitglib/2.44


Compare: https://github.com/WebKit/WebKit/compare/5a64bdf6ebd8...8ce83c4bf224

To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 2af8bf: [view-transitions] Add a timeout to the update cal...

2024-04-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2af8bf35f173cde9b114c2b371380ffae26fd3c7
  
https://github.com/WebKit/WebKit/commit/2af8bf35f173cde9b114c2b371380ffae26fd3c7
  Author: Tim Nguyen 
  Date:   2024-04-03 (Wed, 03 Apr 2024)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/update-callback-timeout-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/update-callback-timeout.html
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/dom/ViewTransition.h

  Log Message:
  ---
  [view-transitions] Add a timeout to the update callback
https://bugs.webkit.org/show_bug.cgi?id=272117
rdar://125877338

Reviewed by Ryosuke Niwa and Simon Fraser.

Implement step 9 of 
https://drafts.csswg.org/css-view-transitions-1/#call-dom-update-callback-algorithm

Follow Blink's timeout of 4 seconds: 
https://github.com/chromium/chromium/blob/a1aab3746bf8d8834086287b30c673e2a63eb633/third_party/blink/renderer/core/view_transition/view_transition.cc#L938-L945

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/update-callback-timeout-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/update-callback-timeout.html:
 Added.
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::setupViewTransition):
* Source/WebCore/dom/ViewTransition.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 0592c3: [view-transitions] Skip view transition when viewp...

2024-04-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0592c365e74a51c1b37ad0a6a8c8d685f3b35656
  
https://github.com/WebKit/WebKit/commit/0592c365e74a51c1b37ad0a6a8c8d685f3b35656
  Author: Tim Nguyen 
  Date:   2024-04-03 (Wed, 03 Apr 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/window-resize-aborts-transition-before-ready-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/window-resize-aborts-transition-expected.txt
M LayoutTests/platform/glib/TestExpectations
M LayoutTests/platform/ios/TestExpectations
M LayoutTests/platform/wpe/TestExpectations
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/dom/ViewTransition.h

  Log Message:
  ---
  [view-transitions] Skip view transition when viewport size changes
https://bugs.webkit.org/show_bug.cgi?id=271302
rdar://125067725

Reviewed by Matt Woodrow.

Skip view transition when large viewport unit size changes, choose large 
viewport units given they have the correct behavior of not skipping the 
transition when
toggling the top navigation bar on mobile Safari.

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/window-resize-aborts-transition-before-ready-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/window-resize-aborts-transition-expected.txt:
* LayoutTests/platform/glib/TestExpectations:
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/wpe/TestExpectations:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::skipViewTransition):
(WebCore::ViewTransition::captureOldState):
(WebCore::ViewTransition::activateViewTransition):
(WebCore::ViewTransition::handleTransitionFrame):
* Source/WebCore/dom/ViewTransition.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 1870b1: CrashTracer: com.apple.WebKit.WebContent at WebCor...

2024-04-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1870b119a45087666315f1a1627f8c4cd02ed9cd
  
https://github.com/WebKit/WebKit/commit/1870b119a45087666315f1a1627f8c4cd02ed9cd
  Author: Tim Nguyen 
  Date:   2024-04-03 (Wed, 03 Apr 2024)

  Changed paths:
M Source/WebCore/dom/RadioButtonGroups.cpp

  Log Message:
  ---
  CrashTracer: com.apple.WebKit.WebContent at WebCore: 
WebCore::ValidatedFormListedElement::updateValidity
https://bugs.webkit.org/show_bug.cgi?id=272044
rdar://117727866

Reviewed by Ryosuke Niwa.

It speculatively fixes a bug that RadioButtonGroup::m_members may contain a 
nullptr WeakRef.

* Source/WebCore/dom/RadioButtonGroups.cpp:
(WebCore::RadioButtonGroup::isEmpty const):
(WebCore::RadioButtonGroup::remove):
(WebCore::RadioButtonGroup::setNeedsStyleRecalcForAllButtons):
(WebCore::RadioButtonGroup::updateValidityForAllButtons):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 10f34f: Remove unprefixed alias for `:-apple-has-attachment`

2024-04-01 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 10f34fe951c3328131a08b66ced3e81dc8eda1d4
  
https://github.com/WebKit/WebKit/commit/10f34fe951c3328131a08b66ced3e81dc8eda1d4
  Author: Tim Nguyen 
  Date:   2024-04-01 (Mon, 01 Apr 2024)

  Changed paths:
M Source/WebCore/css/CSSPseudoSelectors.json

  Log Message:
  ---
  Remove unprefixed alias for `:-apple-has-attachment`
https://bugs.webkit.org/show_bug.cgi?id=271947
rdar://125675445

Reviewed by Aditya Keerthi.

Now that internal usages have adopted `:-apple-has-attachment`, we can remove 
the `:has-attachment` alias.

* Source/WebCore/css/CSSPseudoSelectors.json:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b96194: AX: Import svg-aam WPTs

2024-03-29 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b96194908272735aed967a1b3261c7a2db7178b7
  
https://github.com/WebKit/WebKit/commit/b96194908272735aed967a1b3261c7a2db7178b7
  Author: Tim Nguyen 
  Date:   2024-03-29 (Fri, 29 Mar 2024)

  Changed paths:
M LayoutTests/imported/w3c/resources/import-expectations.json
A LayoutTests/imported/w3c/web-platform-tests/svg-aam/META.yml
A 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/name/comp_host_language_label-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/name/comp_host_language_label.html
A LayoutTests/imported/w3c/web-platform-tests/svg-aam/name/w3c-import.log
A 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/role-img.tentative-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/role-img.tentative.html
A 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/roles-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/roles-generic-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/roles-generic.html
A LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/roles.html
A LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/w3c-import.log
A LayoutTests/imported/w3c/web-platform-tests/svg-aam/w3c-import.log

  Log Message:
  ---
  AX: Import svg-aam WPTs
https://bugs.webkit.org/show_bug.cgi?id=271898
rdar://125622380

Reviewed by Tyler Wilcock.

Upstream commit: 
https://github.com/web-platform-tests/wpt/commit/ac8b032c18666de37a8035fc219403d1811af1eb

* LayoutTests/imported/w3c/resources/import-expectations.json:
* LayoutTests/imported/w3c/web-platform-tests/svg-aam/META.yml: Added.
* 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/name/comp_host_language_label-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/name/comp_host_language_label.html:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/svg-aam/name/w3c-import.log: 
Added.
* 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/role-img.tentative-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/role-img.tentative.html:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/roles-expected.txt: 
Added.
* 
LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/roles-generic-expected.txt:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/roles-generic.html: 
Added.
* LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/roles.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/svg-aam/role/w3c-import.log: 
Added.
* LayoutTests/imported/w3c/web-platform-tests/svg-aam/w3c-import.log: Added.

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 7e9736: Add RuleSet bucket for :root selector

2024-03-27 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7e97360f5f11b833dd9108c492564c740b127f9d
  
https://github.com/WebKit/WebKit/commit/7e97360f5f11b833dd9108c492564c740b127f9d
  Author: Tim Nguyen 
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/RuleSet.cpp
M Source/WebCore/style/RuleSet.h

  Log Message:
  ---
  Add RuleSet bucket for :root selector
https://bugs.webkit.org/show_bug.cgi?id=271713
rdar://125423936

Reviewed by Antti Koivisto.

Optimize :root selector by making it go in its own bucket instead of using the 
universal bucket.

* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::collectMatchingRules):
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::addRule):
(WebCore::Style::RuleSet::traverseRuleDatas):
(WebCore::Style::RuleSet::shrinkToFit):
* Source/WebCore/style/RuleSet.h:
(WebCore::Style::RuleSet::rootElementRules const):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 24c837: Temporarily disable view transition UA styles

2024-03-25 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 24c837086e409b1de91f2ce3bd979f51860eb7eb
  
https://github.com/WebKit/WebKit/commit/24c837086e409b1de91f2ce3bd979f51860eb7eb
  Author: Tim Nguyen 
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M Source/WebCore/style/UserAgentStyle.cpp

  Log Message:
  ---
  Temporarily disable view transition UA styles
https://bugs.webkit.org/show_bug.cgi?id=271658
rdar://125296710

Reviewed by Aditya Keerthi.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/style/UserAgentStyle.cpp:
(WebCore::Style::UserAgentStyle::ensureDefaultStyleSheetsForElement):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] cc58b4: [view-transitions] Enable by default

2024-03-20 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: cc58b49dda8876ac9d1170a47df01547b1388b38
  
https://github.com/WebKit/WebKit/commit/cc58b49dda8876ac9d1170a47df01547b1388b38
  Author: Tim Nguyen 
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml

  Log Message:
  ---
  [view-transitions] Enable by default
https://bugs.webkit.org/show_bug.cgi?id=269632
rdar://123128491

Reviewed by Simon Fraser.

Most demos now function to a decent level as of #26175.

Remaining functionality is polish on top of the current work.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 1a69a0: [view-transitions] Fix white flash on certain demos

2024-03-20 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1a69a06fefcb4f147bce55072b5346aedc75d170
  
https://github.com/WebKit/WebKit/commit/1a69a06fefcb4f147bce55072b5346aedc75d170
  Author: Tim Nguyen 
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
M LayoutTests/TestExpectations
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/no-white-flash-before-activation-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/no-white-flash-before-activation-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/no-white-flash-before-activation.html
M Source/WebCore/dom/Element.h
M Source/WebCore/dom/EventTarget.h
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/rendering/RenderElement.cpp

  Log Message:
  ---
  [view-transitions] Fix white flash on certain demos
https://bugs.webkit.org/show_bug.cgi?id=270146
rdar://123668861

Reviewed by Matt Woodrow.

The white flash was caused by the definition of 
`RenderElement::capturedInViewTransition` leading to the original element 
layers being hidden too early before the pseudo-elements are even shown.

To fix this, update the definition of capturedInViewTransition to match exactly 
what the spec specifies:

https://drafts.csswg.org/css-view-transitions-1/#ref-for-captured-in-a-view-transition

This also ensures that we only move element layers for content that was 
successfully captured as opposed to anything with a view-transition-name.

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/no-white-flash-before-activation-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/no-white-flash-before-activation-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/no-white-flash-before-activation.html:
 Added.
* Source/WebCore/dom/Element.h:
(WebCore::Element::capturedInViewTransition const):
(WebCore::Element::setCapturedInViewTransition):
* Source/WebCore/dom/EventTarget.h:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::captureOldState):
(WebCore::ViewTransition::activateViewTransition):
(WebCore::ViewTransition::clearViewTransition):
* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::RenderElement::capturedInViewTransition const):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b96f0f: [Gardening][Monterey] css/css-view-transitions/3d-...

2024-03-15 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b96f0f38afa37b581e1cbebd9ee8f82f4e214933
  
https://github.com/WebKit/WebKit/commit/b96f0f38afa37b581e1cbebd9ee8f82f4e214933
  Author: Tim Nguyen 
  Date:   2024-03-15 (Fri, 15 Mar 2024)

  Changed paths:
M LayoutTests/platform/mac/TestExpectations

  Log Message:
  ---
  [Gardening][Monterey] css/css-view-transitions/3d-transform-*.html are 
constant ImageOnlyFailure
https://bugs.webkit.org/show_bug.cgi?id=271037

Unreviewed, test gardening.

* LayoutTests/platform/mac/TestExpectations:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 092ba0: [view-transitions] Skip view transition when new e...

2024-03-11 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 092ba08d7009635f9e0a789042e938a4c0cb47a9
  
https://github.com/WebKit/WebKit/commit/092ba08d7009635f9e0a789042e938a4c0cb47a9
  Author: Tim Nguyen 
  Date:   2024-03-11 (Mon, 11 Mar 2024)

  Changed paths:
M LayoutTests/TestExpectations
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/dom/ViewTransition.h

  Log Message:
  ---
  [view-transitions] Skip view transition when new element becomes hidden
https://bugs.webkit.org/show_bug.cgi?id=270815
rdar://124406569

Reviewed by Ryosuke Niwa.

As mandated by the spec.

* LayoutTests/TestExpectations:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::captureOldState):
(WebCore::ViewTransition::activateViewTransition):
(WebCore::ViewTransition::updatePseudoElementStyles):
* Source/WebCore/dom/ViewTransition.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e7871a: [css-nesting] Remove feature flag

2024-03-11 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e7871abaf4a9965474bf64a776163402e0ef5b84
  
https://github.com/WebKit/WebKit/commit/e7871abaf4a9965474bf64a776163402e0ef5b84
  Author: Tim Nguyen 
  Date:   2024-03-11 (Mon, 11 Mar 2024)

  Changed paths:
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M Source/WebCore/css/CSSStyleRule.idl
M Source/WebCore/css/parser/CSSParserContext.cpp
M Source/WebCore/css/parser/CSSParserContext.h
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/parser/CSSSelectorParserContext.cpp
M Source/WebCore/css/parser/CSSSelectorParserContext.h

  Log Message:
  ---
  [css-nesting] Remove feature flag
https://bugs.webkit.org/show_bug.cgi?id=270793
rdar://124389194

Reviewed by Matthieu Dubet and Anne van Kesteren.

Some WebVTT user agent CSS and WebInspector CSS are starting to rely on 
nesting, turning it off will break core functionality.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/css/CSSStyleRule.idl:
* Source/WebCore/css/parser/CSSParserContext.cpp:
(WebCore::add):
* Source/WebCore/css/parser/CSSParserContext.h:
* Source/WebCore/css/parser/CSSParserImpl.h:
(WebCore::CSSParserImpl::isStyleNestedContext):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeSimpleSelector):
* Source/WebCore/css/parser/CSSSelectorParserContext.cpp:
(WebCore::CSSSelectorParserContext::CSSSelectorParserContext):
(WebCore::add):
* Source/WebCore/css/parser/CSSSelectorParserContext.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d1418b: [view-transitions] Support chaining `:only-child` ...

2024-03-08 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d1418bf98d34738599cef6f5f77255c3174f6a8f
  
https://github.com/WebKit/WebKit/commit/d1418bf98d34738599cef6f5f77255c3174f6a8f
  Author: Tim Nguyen 
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-group-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-group.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-image-pair-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-image-pair.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-new-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-new.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-no-transition.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-old-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-old.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/parsing/pseudo-elements-valid-expected.txt
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorChecker.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/dom/ViewTransition.h
M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp

  Log Message:
  ---
  [view-transitions] Support chaining `:only-child` after pseudo-elements
https://bugs.webkit.org/show_bug.cgi?id=265223
rdar://118703154

Reviewed by Antti Koivisto.

::view-transition-group(name):only-child matches a group with no siblings.

::view-transition-image-pair(name):only-child should always match, since there 
is only one image-pair.

::view-transition-old(name):only-child matches an old capture with no 
associated new element.

::view-transition-new(name):only-child matches a new element with no associated 
old capture.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-group-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-group.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-image-pair-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-image-pair.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-new-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-new.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-no-transition.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-old-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/only-child-old.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/parsing/pseudo-elements-valid-expected.txt:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::LocalContext::LocalContext):
(WebCore::SelectorChecker::match const):
(WebCore::SelectorChecker::matchHostPseudoClass const):
(WebCore::hasViewTransitionPseudoElement):
(WebCore::SelectorChecker::matchRecursively const):
(WebCore::SelectorChecker::checkOne const):
(WebCore::SelectorChecker::matchHasPseudoClass const):
(WebCore::SelectorChecker::checkViewTransitionPseudoClass const):
* Source/WebCore/css/SelectorChecker.h:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::isPseudoClassValidAfterPseudoElement):
* Source/WebCore/dom/ViewTransition.h:
(WebCore::OrderedNamedElementsMap::size const):
(WebCore::OrderedNamedElementsMap::find const):
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp:
(WebCore::createRendererIfNeeded):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] c443a8: [view-transitions] Address post-landing comments f...

2024-03-04 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c443a870227a0afdd57c689e9912238c07092f60
  
https://github.com/WebKit/WebKit/commit/c443a870227a0afdd57c689e9912238c07092f60
  Author: Tim Nguyen 
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
M Source/WebCore/animation/DocumentTimeline.cpp
M Source/WebCore/animation/DocumentTimeline.h
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  [view-transitions] Address post-landing comments from 275156@main
https://bugs.webkit.org/show_bug.cgi?id=270466

Reviewed by Aditya Keerthi.

* Source/WebCore/animation/DocumentTimeline.cpp:
(WebCore::DocumentTimeline::hasPendingAnimationEventForAnimation const):
* Source/WebCore/animation/DocumentTimeline.h:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::handleTransitionFrame):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d0b364: [view-transitions] Sort named elements map in pain...

2024-02-25 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d0b3646c67e1b2ccb0b96adfb7d0002aa2f7bc3a
  
https://github.com/WebKit/WebKit/commit/d0b3646c67e1b2ccb0b96adfb7d0002aa2f7bc3a
  Author: Tim Nguyen 
  Date:   2024-02-25 (Sun, 25 Feb 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/platform/glib/TestExpectations
M LayoutTests/platform/mac-wk2/TestExpectations
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp

  Log Message:
  ---
  [view-transitions] Sort named elements map in paint order
https://bugs.webkit.org/show_bug.cgi?id=265832
rdar://119157117

Reviewed by Matt Woodrow.

* LayoutTests/TestExpectations: Unskip newly passing tests.
* LayoutTests/platform/glib/TestExpectations:
* LayoutTests/platform/mac-wk2/TestExpectations:
* Source/WebCore/dom/ViewTransition.cpp: Go through RenderLayer paint order 
tree instead of DOM tree to get the names.
(WebCore::forEachElementInPaintOrder):
(WebCore::ViewTransition::captureOldState):
(WebCore::ViewTransition::captureNewState):
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp:
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementTree):

Fix a render tree construction logic bug that was causing duplicate renderers 
to be created in some specific cases.

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 29ce0c: Cherry-pick 274448@main (ac976a6da88c). https://bu...

2024-02-23 Thread Tim Nguyen
k 274475@main (660096508a7e). 
https://bugs.webkit.org/show_bug.cgi?id=269204

[GLib] Enable WebCodecs
https://bugs.webkit.org/show_bug.cgi?id=269204

Reviewed by Michael Catanzaro.

Layout tests coverage is decent, the corresponding runtime preferences are 
already marked as
'stable'.

* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsWPE.cmake:

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


  Commit: ba53f228c7e264c3d82f7099a15bcb0e08525041
  
https://github.com/WebKit/WebKit/commit/ba53f228c7e264c3d82f7099a15bcb0e08525041
  Author: Yusuke Suzuki 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/html/CanvasBase.cpp
M Source/WebCore/html/HTMLCanvasElement.cpp
M Source/WebCore/html/canvas/CanvasRenderingContext.h

  Log Message:
  ---
  Cherry-pick 275137@main (3e7f2c1bc01d). 
https://bugs.webkit.org/show_bug.cgi?id=269867

REGRESSION(274164@main): Do not consult against Document's WeakHashSet for 
every Canvas ops
https://bugs.webkit.org/show_bug.cgi?id=269867
rdar://123400342

Reviewed by Ryosuke Niwa.

274164@main introduced addCanvasNeedingPreparationForDisplayOrFlush and 
removeCanvasNeedingPreparationForDisplayOrFlush, which consult against 
Document's WeakHashSet
for every Canvas operation. Because each Canvas operation is very tiny, 
Canvas operations are called super frequently, and any kind of performance 
regression on each
call can be exhibited as visible performance regression. WeakHashSet 
querying is costly, and Document is super large so frequent cache miss happens.
Instead, we store a bool flag to CanvasRenderingContext, which says whether 
it is registered in Document's WeakHashSet. And avoid this costly operation 
once it gets registered.

* Source/WebCore/dom/Document.cpp:
(WebCore::Document::prepareCanvasesForDisplayOrFlushIfNeeded):
(WebCore::Document::addCanvasNeedingPreparationForDisplayOrFlush):
(WebCore::Document::removeCanvasNeedingPreparationForDisplayOrFlush):
* Source/WebCore/dom/Document.h:
* Source/WebCore/html/CanvasBase.cpp:
(WebCore::CanvasBase::addCanvasNeedingPreparationForDisplayOrFlush):
(WebCore::CanvasBase::removeCanvasNeedingPreparationForDisplayOrFlush):
* Source/WebCore/html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::didMoveToNewDocument):
* Source/WebCore/html/canvas/CanvasRenderingContext.h:
(WebCore::CanvasRenderingContext::setIsToPrepare):
(WebCore::CanvasRenderingContext::isInPreparationForDisplayOrFlush const):

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


  Commit: bc24768393dd0e231d871c04e3b4aebd8ee3
  
https://github.com/WebKit/WebKit/commit/bc24768393dd0e231d871c04e3b4aebd8ee3
  Author: Tim Nguyen 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M LayoutTests/imported/w3c/resources/import-expectations.json
A 
LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation.html
M Source/WebCore/animation/CSSPropertyAnimation.cpp

  Log Message:
  ---
  Cherry-pick 275120@main (71b8fba1401e). 
https://bugs.webkit.org/show_bug.cgi?id=269848

REGRESSION(273742@main): LinkedIn "…" menu does not populate on click
https://bugs.webkit.org/show_bug.cgi?id=269848
rdar://123264559

Reviewed by Cameron McCormack.

The menu on LinkedIn transitions the `visibility` CSS property.

Do a partial revert of 273742@main to revert only the animation wrapper 
change for the `visibility` property, since it has caused changes that are 
timing sensitive for the site.

Imported WPT that also regressed along with 273742@main to avoid regressing 
this again.

* LayoutTests/imported/w3c/resources/import-expectations.json:
* 
LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation.html:
 Added.
* Source/WebCore/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

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


Compare: https://github.com/WebKit/WebKit/compare/ef78ee396c4f...bc24768393cc

To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4cb130: [Gardening][view-transitions] Unskip tests no long...

2024-02-22 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4cb130679b0f53a1b6e84c6011f74d5e53dc3e3f
  
https://github.com/WebKit/WebKit/commit/4cb130679b0f53a1b6e84c6011f74d5e53dc3e3f
  Author: Tim Nguyen 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M LayoutTests/platform/ios-wk2/TestExpectations

  Log Message:
  ---
  [Gardening][view-transitions] Unskip tests no longer asserting on iOS
https://bugs.webkit.org/show_bug.cgi?id=269749
rdar://123266095

Unreviewed test gardening.

* LayoutTests/platform/ios-wk2/TestExpectations:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 85d80f: REGRESSION (275156@main): [ macOS Debug ] 3 tests ...

2024-02-22 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 85d80fb2ccd246e3faa97ccb7ba5c8822c700fdc
  
https://github.com/WebKit/WebKit/commit/85d80fb2ccd246e3faa97ccb7ba5c8822c700fdc
  Author: Tim Nguyen 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M LayoutTests/platform/mac-wk2/TestExpectations
M Source/WebCore/animation/WebAnimationUtilities.cpp
M Source/WebCore/style/PseudoElementIdentifier.h

  Log Message:
  ---
  REGRESSION (275156@main): [ macOS Debug ] 3 tests in 
imported/w3c/web-platform-tests/css/css-view-transitions are constant crash
https://bugs.webkit.org/show_bug.cgi?id=269927
rdar://123454964

Reviewed by Matt Woodrow.

Animation sort order needs to be defined for view transition named 
pseudo-elements. The sort order follows tree order, so assuming Y follows X in 
the named elements map:

1) ::view-transition
2) ::view-transition-group(X)
3) ::view-transition-image-pair(X)
4) ::view-transition-old(X)
5) ::view-transition-new(X)
6) ::view-transition-group(Y)
7) ::view-transition-image-pair(Y)
8) ::view-transition-old(Y)
9) ::view-transition-new(Y)

* LayoutTests/platform/mac-wk2/TestExpectations:
* Source/WebCore/animation/WebAnimationUtilities.cpp:
(WebCore::compareStyleOriginatedAnimationOwningElementPositionsInDocumentTreeOrder):
* Source/WebCore/style/PseudoElementIdentifier.h:
(WebCore::Style::isNamedViewTransitionPseudoElement):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 44326f: [view-transitions] Clean-up outdated FIXMEs

2024-02-22 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 44326f5d96d5185d80c41681abe2441811990728
  
https://github.com/WebKit/WebKit/commit/44326f5d96d5185d80c41681abe2441811990728
  Author: Tim Nguyen 
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/dom/ViewTransition.h
M Source/WebCore/rendering/RenderBoxModelObject.cpp
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/rendering/RenderElement.h
M Source/WebCore/rendering/RenderLayer.cpp
M Source/WebCore/rendering/RenderLayerBacking.cpp
M Source/WebCore/rendering/RenderLayerCompositor.cpp

  Log Message:
  ---
  [view-transitions] Clean-up outdated FIXMEs
https://bugs.webkit.org/show_bug.cgi?id=269899
rdar://123427127

Reviewed by Matt Woodrow.

- Remove outdated FIXMEs for dynamic view transition stylesheet
- Re-order steps in dynamic view transition stylesheet to match spec
- Rename RenderElement::hasViewTransition to 
RenderElement::capturedInViewTransition to match spec terminology
- Remove FIXME for "captured in view transition" node flag. It's only used in 
the spec to store eligibility for a capture,
which can be cheaply computed if ever needed in the future.

* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::captureOldState):
(WebCore::ViewTransition::setupDynamicStyleSheet):
(WebCore::ViewTransition::activateViewTransition):
(WebCore::ViewTransition::clearViewTransition):
* Source/WebCore/dom/ViewTransition.h:
* Source/WebCore/rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::requiresLayer const):
* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::RenderElement::capturedInViewTransition const):
(WebCore::RenderElement::hasViewTransition const): Deleted.
* Source/WebCore/rendering/RenderElement.h:
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::canCreateStackingContext):
(WebCore::RenderLayer::shouldBeCSSStackingContext const):
(WebCore::RenderLayer::computeCanBeBackdropRoot const):
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGeometry):
* Source/WebCore/rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateBackingAndHierarchy):
(WebCore::RenderLayerCompositor::requiresCompositingForViewTransition const):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 0ee25f: [view-transitions] Integrate with DocumentTimeline

2024-02-21 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0ee25f18f0a022047c25215a865d7a819a8bfe4f
  
https://github.com/WebKit/WebKit/commit/0ee25f18f0a022047c25215a865d7a819a8bfe4f
  Author: Tim Nguyen 
  Date:   2024-02-21 (Wed, 21 Feb 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/style-inheritance-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/unset-and-initial-view-transition-name-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-name-on-removed-element-expected.txt
M Source/WebCore/animation/DocumentTimeline.cpp
M Source/WebCore/animation/DocumentTimeline.h
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  [view-transitions] Integrate with DocumentTimeline
https://bugs.webkit.org/show_bug.cgi?id=265228
rdar://118705652

Reviewed by Matt Woodrow.

Go through animations instead of keyframe effects as specified by 
https://drafts.csswg.org/css-view-transitions-1/#handle-transition-frame-algorithm

Consult pending events + playState as the algorithm specifies.

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/style-inheritance-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/unset-and-initial-view-transition-name-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-name-on-removed-element-expected.txt:
* Source/WebCore/animation/DocumentTimeline.cpp:
(WebCore::DocumentTimeline::hasPendingAnimationEventForAnimation const):
* Source/WebCore/animation/DocumentTimeline.h:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::handleTransitionFrame):
(WebCore::ViewTransition::updatePseudoElementStyles):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] ce4726: [view-transitions] Support style inheritance in th...

2024-02-21 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ce47267f2d5ecaa5aefd2346a8cfa59b7aaeb08a
  
https://github.com/WebKit/WebKit/commit/ce47267f2d5ecaa5aefd2346a8cfa59b7aaeb08a
  Author: Tim Nguyen 
  Date:   2024-02-21 (Wed, 21 Feb 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/style-inheritance-expected.txt
M Source/WebCore/dom/Element.cpp
M Source/WebCore/rendering/style/RenderStyleSetters.h
M Source/WebCore/style/StyleTreeResolver.cpp

  Log Message:
  ---
  [view-transitions] Support style inheritance in the pseudo-element tree
https://bugs.webkit.org/show_bug.cgi?id=269808
rdar://123331760

Reviewed by Anne van Kesteren.

The style inheritance must follow the pseudo-element tree structure. This 
allows the different `inherit` declarations in the `viewTransitions.css` UA 
stylesheet to work.

This is also ergonomic for developers since they can just set the 
animation-duration once and have it cascade down the pseudo-element tree.

Also fix the cache to actually store the named view transition style when 
resolving, otherwise `TreeResolver::makeResolutionContextForPseudoElement` 
can't fetch it.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/style-inheritance-expected.txt:
 Rebaselined test.
* Source/WebCore/dom/Element.cpp:
(WebCore::Element::resolvePseudoElementStyle):
* Source/WebCore/rendering/style/RenderStyleSetters.h:
(WebCore::RenderStyle::setPseudoElementNameArgument):
* Source/WebCore/style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::resolveElement):
(WebCore::Style::TreeResolver::makeResolutionContextForPseudoElement):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 71b8fb: REGRESSION(273742@main): LinkedIn "…" menu does no...

2024-02-21 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 71b8fba1401e6e512316802f0973647a5f6470a3
  
https://github.com/WebKit/WebKit/commit/71b8fba1401e6e512316802f0973647a5f6470a3
  Author: Tim Nguyen 
  Date:   2024-02-21 (Wed, 21 Feb 2024)

  Changed paths:
M LayoutTests/imported/w3c/resources/import-expectations.json
A 
LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation.html
M Source/WebCore/animation/CSSPropertyAnimation.cpp

  Log Message:
  ---
  REGRESSION(273742@main): LinkedIn "…" menu does not populate on click
https://bugs.webkit.org/show_bug.cgi?id=269848
rdar://123264559

Reviewed by Cameron McCormack.

The menu on LinkedIn transitions the `visibility` CSS property.

Do a partial revert of 273742@main to revert only the animation wrapper change 
for the `visibility` property, since it has caused changes that are timing 
sensitive for the site.

Imported WPT that also regressed along with 273742@main to avoid regressing 
this again.

* LayoutTests/imported/w3c/resources/import-expectations.json:
* 
LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation.html:
 Added.
* Source/WebCore/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 562012: [view-transitions] Support script-originated anima...

2024-02-20 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 562012d2b95b7449bd96ef433c17ff398b405fe5
  
https://github.com/WebKit/WebKit/commit/562012d2b95b7449bd96ef433c17ff398b405fe5
  Author: Tim Nguyen 
  Date:   2024-02-20 (Tue, 20 Feb 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-get-computed-style-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-get-computed-style.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/web-animation-pseudo-incorrect-name-expected.txt
M Source/WebCore/animation/KeyframeEffect.cpp
M Source/WebCore/animation/StyleOriginatedAnimationEvent.cpp
M Source/WebCore/animation/WebAnimationUtilities.cpp
M Source/WebCore/animation/WebAnimationUtilities.h

  Log Message:
  ---
  [view-transitions] Support script-originated animations
https://bugs.webkit.org/show_bug.cgi?id=269468
rdar://123016183

Reviewed by Matt Woodrow and Matthieu Dubet.

- Switch to use pseudoElementIdentifier in order to support view transition 
pseudo-elements
- Pass in a document to the relevant CSSSelectorParserContext so the view 
transition setting state is passed over

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-get-computed-style-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-get-computed-style.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/web-animation-pseudo-incorrect-name-expected.txt:
* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::pseudoElement const):
(WebCore::KeyframeEffect::setPseudoElement):
* Source/WebCore/animation/StyleOriginatedAnimationEvent.cpp:
(WebCore::StyleOriginatedAnimationEvent::StyleOriginatedAnimationEvent):
(WebCore::StyleOriginatedAnimationEvent::pseudoElement):
* Source/WebCore/animation/WebAnimationUtilities.cpp:
(WebCore::pseudoElementIdentifierAsString):
(WebCore::pseudoElementIdentifierFromString):
(WebCore::pseudoIdAsString): Deleted.
(WebCore::pseudoIdFromString): Deleted.
* Source/WebCore/animation/WebAnimationUtilities.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 67f353: [view-transitions] Allow animations to run more th...

2024-02-20 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 67f353a069159d270c006d9e37a4813c506c44fa
  
https://github.com/WebKit/WebKit/commit/67f353a069159d270c006d9e37a4813c506c44fa
  Author: Tim Nguyen 
  Date:   2024-02-20 (Tue, 20 Feb 2024)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-element-animations-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-element-animations.html
M Source/WebCore/animation/WebAnimationUtilities.cpp
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  [view-transitions] Allow animations to run more than once
https://bugs.webkit.org/show_bug.cgi?id=269460
rdar://123005914

Reviewed by Antoine Quint.

We need to cancel animations when the view transition ends, so they can be 
re-ran when the view transition is restarted.

Also add (incomplete) code to sort web animations for view transition 
pseudo-elements in tree order to avoid assertions.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-element-animations-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-element-animations.html:
 Added.
* Source/WebCore/animation/WebAnimationUtilities.cpp:
(WebCore::compareStyleOriginatedAnimationOwningElementPositionsInDocumentTreeOrder):
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::clearViewTransition):

Originally-landed-as: 274734@main (4ea01d73bca3). rdar://123005914
Canonical link: https://commits.webkit.org/275044@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4d6939: [view-transitions] Integrate pseudo-elements with ...

2024-02-20 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4d69396f11340703fd2c7cffc87e2ed11b26633f
  
https://github.com/WebKit/WebKit/commit/4d69396f11340703fd2c7cffc87e2ed11b26633f
  Author: Tim Nguyen 
  Date:   2024-02-20 (Tue, 20 Feb 2024)

  Changed paths:
M Source/WebCore/animation/AcceleratedTimeline.cpp
M Source/WebCore/animation/AcceleratedTimeline.h
M Source/WebCore/animation/CSSAnimation.cpp
M Source/WebCore/animation/CSSAnimation.h
M Source/WebCore/animation/CSSAnimationEvent.cpp
M Source/WebCore/animation/CSSAnimationEvent.h
M Source/WebCore/animation/CSSTransition.cpp
M Source/WebCore/animation/CSSTransition.h
M Source/WebCore/animation/CSSTransitionEvent.cpp
M Source/WebCore/animation/CSSTransitionEvent.h
M Source/WebCore/animation/ElementAnimationRareData.cpp
M Source/WebCore/animation/ElementAnimationRareData.h
M Source/WebCore/animation/KeyframeEffect.cpp
M Source/WebCore/animation/KeyframeEffect.h
M Source/WebCore/animation/StyleOriginatedAnimation.cpp
M Source/WebCore/animation/StyleOriginatedAnimation.h
M Source/WebCore/animation/StyleOriginatedAnimationEvent.cpp
M Source/WebCore/animation/StyleOriginatedAnimationEvent.h
M Source/WebCore/animation/WebAnimation.cpp
M Source/WebCore/animation/WebAnimationUtilities.cpp
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/dom/Element.cpp
M Source/WebCore/dom/Element.h
M Source/WebCore/dom/ElementRareData.h
M Source/WebCore/dom/PseudoElement.cpp
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/inspector/agents/InspectorCSSAgent.cpp
M Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdater.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/ElementRuleCollector.h
M Source/WebCore/style/PseudoElementIdentifier.h
M Source/WebCore/style/PseudoElementRequest.h
M Source/WebCore/style/StyleResolver.cpp
M Source/WebCore/style/StyleResolver.h
M Source/WebCore/style/StyleSharingResolver.cpp
M Source/WebCore/style/StyleTreeResolver.cpp
M Source/WebCore/style/StyleTreeResolver.h
M Source/WebCore/style/Styleable.cpp
M Source/WebCore/style/Styleable.h

  Log Message:
  ---
  [view-transitions] Integrate pseudo-elements with animation code
https://bugs.webkit.org/show_bug.cgi?id=268064
rdar://121691532

Reviewed by Darin Adler.

In order to support view transitions, animation code needs to support the named 
argument for view transition pseudos, to be able to determine when the view 
transition ends.

Some of the code needs more fixes in order to work properly for view 
transitions, but this properly implements timing as a first step.

To achieve this goal, we refactor most animation code to use 
`std::optional` instead of `PseudoId`.

* Source/WebCore/animation/AcceleratedTimeline.cpp:
(WebCore::AcceleratedTimeline::updateEffectStacks):
(WebCore::AcceleratedTimeline::updateEffectStackForTarget):
* Source/WebCore/animation/AcceleratedTimeline.h:
* Source/WebCore/animation/CSSAnimation.cpp:
(WebCore::CSSAnimation::createEvent):
* Source/WebCore/animation/CSSAnimation.h:
* Source/WebCore/animation/CSSAnimationEvent.cpp:
(WebCore::CSSAnimationEvent::CSSAnimationEvent):
* Source/WebCore/animation/CSSAnimationEvent.h:
* Source/WebCore/animation/CSSTransition.cpp:
(WebCore::CSSTransition::createEvent):
* Source/WebCore/animation/CSSTransition.h:
* Source/WebCore/animation/CSSTransitionEvent.cpp:
(WebCore::CSSTransitionEvent::CSSTransitionEvent):
* Source/WebCore/animation/CSSTransitionEvent.h:
* Source/WebCore/animation/ElementAnimationRareData.cpp:
(WebCore::ElementAnimationRareData::ElementAnimationRareData):
* Source/WebCore/animation/ElementAnimationRareData.h:
(WebCore::ElementAnimationRareData::pseudoElementIdentifier):
(WebCore::ElementAnimationRareData::pseudoId const): Deleted.
* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::create):
(WebCore::KeyframeEffect::KeyframeEffect):
(WebCore::KeyframeEffect::copyPropertiesFromSource):
(WebCore::KeyframeEffect::getKeyframes):
(WebCore::KeyframeEffect::targetStyleable const):
(WebCore::KeyframeEffect::targetsPseudoElement const):
(WebCore::KeyframeEffect::pseudoElement const):
(WebCore::KeyframeEffect::setPseudoElement):
(WebCore::KeyframeEffect::isCurrentlyAffectingProperty const):
(WebCore::KeyframeEffect::applyPendingAcceleratedActions):
(WebCore::KeyframeEffect::ticksContinuouslyWhileActive const):
(WebCore::KeyframeEffect::computeHasAcceleratedPropertyOverriddenByCascadeProperty):
(WebCore::KeyframeEffect::abilityToBeAcceleratedDidChange):
(WebCore::KeyframeEffect::StackMembershipMutationScope::StackMembershipMutationScope):
(WebCore::KeyframeEffect::StackMembershipMutationScope::~StackMembershipMutationScope):
* Source

[webkit-changes] [WebKit/WebKit] fd1700: [view-transitions] Support script-originated anima...

2024-02-18 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: fd1700a9494c4ead2a8d7add78378403081646b7
  
https://github.com/WebKit/WebKit/commit/fd1700a9494c4ead2a8d7add78378403081646b7
  Author: Tim Nguyen 
  Date:   2024-02-18 (Sun, 18 Feb 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-get-computed-style-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-get-computed-style.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/web-animation-pseudo-incorrect-name-expected.txt
M Source/WebCore/animation/KeyframeEffect.cpp
M Source/WebCore/animation/StyleOriginatedAnimationEvent.cpp
M Source/WebCore/animation/WebAnimationUtilities.cpp
M Source/WebCore/animation/WebAnimationUtilities.h

  Log Message:
  ---
  [view-transitions] Support script-originated animations
https://bugs.webkit.org/show_bug.cgi?id=269468
rdar://123016183

Reviewed by Matt Woodrow and Matthieu Dubet.

- Switch to use pseudoElementIdentifier in order to support view transition 
pseudo-elements
- Pass in a document to the relevant CSSSelectorParserContext so the view 
transition setting state is passed over

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-get-computed-style-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-get-computed-style.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/web-animation-pseudo-incorrect-name-expected.txt:
* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::pseudoElement const):
(WebCore::KeyframeEffect::setPseudoElement):
* Source/WebCore/animation/StyleOriginatedAnimationEvent.cpp:
(WebCore::StyleOriginatedAnimationEvent::StyleOriginatedAnimationEvent):
(WebCore::StyleOriginatedAnimationEvent::pseudoElement):
* Source/WebCore/animation/WebAnimationUtilities.cpp:
(WebCore::pseudoElementIdentifierAsString):
(WebCore::pseudoElementIdentifierFromString):
(WebCore::pseudoIdAsString): Deleted.
(WebCore::pseudoIdFromString): Deleted.
* Source/WebCore/animation/WebAnimationUtilities.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 7d0829: [view-transitions] Enable by default

2024-02-16 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7d082967d8f5667853d07abe11396426417c5e68
  
https://github.com/WebKit/WebKit/commit/7d082967d8f5667853d07abe11396426417c5e68
  Author: Tim Nguyen 
  Date:   2024-02-16 (Fri, 16 Feb 2024)

  Changed paths:
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml

  Log Message:
  ---
  [view-transitions] Enable by default
https://bugs.webkit.org/show_bug.cgi?id=269632
rdar://123128491

Reviewed by Anne van Kesteren.

There's a bit of work to do still, but we're getting closer to a point where 
this is testable.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 305495: [view-transitions] Register user agent `@keyframes...

2024-02-15 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 305495110963caa7a6ea92bf96631017d9bae4e7
  
https://github.com/WebKit/WebKit/commit/305495110963caa7a6ea92bf96631017d9bae4e7
  Author: Tim Nguyen 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
M Source/WebCore/style/StyleResolver.cpp
M Source/WebCore/style/StyleResolver.h
M Source/WebCore/style/UserAgentStyle.cpp

  Log Message:
  ---
  [view-transitions] Register user agent `@keyframes` rules
https://bugs.webkit.org/show_bug.cgi?id=269504
rdar://123033600

Reviewed by Matthieu Dubet.

Add static storage for user agent @keyframes, and use it for the 
viewTransitions.css stylesheet.

This is the same pattern used as `CounterStyleRegistry::userAgentCounterStyles`.

* Source/WebCore/style/StyleResolver.cpp:
(WebCore::Style::Resolver::userAgentKeyframes):
(WebCore::Style::Resolver::addUserAgentKeyframeStyle):
(WebCore::Style::Resolver::isAnimationNameValid):
(WebCore::Style::Resolver::keyframeRulesForName const):
* Source/WebCore/style/StyleResolver.h:
* Source/WebCore/style/UserAgentStyle.cpp:
(WebCore::Style::addUserAgentKeyframes):
(WebCore::Style::UserAgentStyle::ensureDefaultStyleSheetsForElement):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4ea01d: [view-transitions] Allow animations to run more th...

2024-02-15 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4ea01d73bca34b0351de5cf75c58ebb3ce72dd6a
  
https://github.com/WebKit/WebKit/commit/4ea01d73bca34b0351de5cf75c58ebb3ce72dd6a
  Author: Tim Nguyen 
  Date:   2024-02-15 (Thu, 15 Feb 2024)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-element-animations-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-element-animations.html
M Source/WebCore/animation/WebAnimationUtilities.cpp
M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  ---
  [view-transitions] Allow animations to run more than once
https://bugs.webkit.org/show_bug.cgi?id=269460
rdar://123005914

Reviewed by Antoine Quint.

We need to cancel animations when the view transition ends, so they can be 
re-ran when the view transition is restarted.

Also add (incomplete) code to sort web animations for view transition 
pseudo-elements in tree order to avoid assertions.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-element-animations-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/pseudo-element-animations.html:
 Added.
* Source/WebCore/animation/WebAnimationUtilities.cpp:
(WebCore::compareStyleOriginatedAnimationOwningElementPositionsInDocumentTreeOrder):
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::clearViewTransition):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 6edfdb: Fix build after 274683@main

2024-02-14 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6edfdbf00113ebda4e7b09f320894621be4c5073
  
https://github.com/WebKit/WebKit/commit/6edfdbf00113ebda4e7b09f320894621be4c5073
  Author: Tim Nguyen 
  Date:   2024-02-14 (Wed, 14 Feb 2024)

  Changed paths:
M Source/WebCore/rendering/style/RenderStyle.h

  Log Message:
  ---
  Fix build after 274683@main
https://bugs.webkit.org/show_bug.cgi?id=269410
rdar://122976910

Unreviewed build fix.

* Source/WebCore/rendering/style/RenderStyle.h:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4ef4a1: Move `position` from `NonInheritedFlags` to `Style...

2024-02-14 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4ef4a11dcf0223e2b3631f30ff6d567ecc16
  
https://github.com/WebKit/WebKit/commit/4ef4a11dcf0223e2b3631f30ff6d567ecc16
  Author: Tim Nguyen 
  Date:   2024-02-14 (Wed, 14 Feb 2024)

  Changed paths:
M Source/WebCore/rendering/style/RenderStyle.cpp
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/rendering/style/RenderStyleInlines.h
M Source/WebCore/rendering/style/RenderStyleSetters.h
M Source/WebCore/rendering/style/StyleBoxData.cpp
M Source/WebCore/rendering/style/StyleBoxData.h

  Log Message:
  ---
  Move `position` from `NonInheritedFlags` to `StyleBoxData`
https://bugs.webkit.org/show_bug.cgi?id=269410
rdar://122976910

Reviewed by Aditya Keerthi and Darin Adler.

Free-up 3 bits from `NonInheritedFlags` for `::target-text` and 
`text-decoration-line: spelling-error/grammar-error`.

* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::RenderStyle):
(WebCore::RenderStyle::NonInheritedFlags::copyNonInheritedFrom):
(WebCore::RenderStyle::hashForTextAutosizing const):
(WebCore::RenderStyle::equalForTextAutosizing const):
(WebCore::RenderStyle::changeRequiresLayout const):
* Source/WebCore/rendering/style/RenderStyle.h:
(WebCore::RenderStyle::position const): Deleted.
(WebCore::RenderStyle::setPosition): Deleted.
* Source/WebCore/rendering/style/RenderStyleInlines.h:
(WebCore::RenderStyle::position const):
* Source/WebCore/rendering/style/RenderStyleSetters.h:
(WebCore::RenderStyle::setPosition):
* Source/WebCore/rendering/style/StyleBoxData.cpp:
(WebCore::StyleBoxData::StyleBoxData):
(WebCore::StyleBoxData::operator== const):
* Source/WebCore/rendering/style/StyleBoxData.h:
(WebCore::StyleBoxData::position const):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9adf81: [view-transitions] Integrate pseudo-elements with ...

2024-02-14 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9adf8124721472c84c07e7974c4d5e6e8b086b1b
  
https://github.com/WebKit/WebKit/commit/9adf8124721472c84c07e7974c4d5e6e8b086b1b
  Author: Tim Nguyen 
  Date:   2024-02-14 (Wed, 14 Feb 2024)

  Changed paths:
M Source/WebCore/animation/AcceleratedTimeline.cpp
M Source/WebCore/animation/AcceleratedTimeline.h
M Source/WebCore/animation/CSSAnimation.cpp
M Source/WebCore/animation/CSSAnimation.h
M Source/WebCore/animation/CSSAnimationEvent.cpp
M Source/WebCore/animation/CSSAnimationEvent.h
M Source/WebCore/animation/CSSTransition.cpp
M Source/WebCore/animation/CSSTransition.h
M Source/WebCore/animation/CSSTransitionEvent.cpp
M Source/WebCore/animation/CSSTransitionEvent.h
M Source/WebCore/animation/ElementAnimationRareData.cpp
M Source/WebCore/animation/ElementAnimationRareData.h
M Source/WebCore/animation/KeyframeEffect.cpp
M Source/WebCore/animation/KeyframeEffect.h
M Source/WebCore/animation/StyleOriginatedAnimation.cpp
M Source/WebCore/animation/StyleOriginatedAnimation.h
M Source/WebCore/animation/StyleOriginatedAnimationEvent.cpp
M Source/WebCore/animation/StyleOriginatedAnimationEvent.h
M Source/WebCore/animation/WebAnimation.cpp
M Source/WebCore/animation/WebAnimationUtilities.cpp
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/dom/Element.cpp
M Source/WebCore/dom/Element.h
M Source/WebCore/dom/ElementRareData.h
M Source/WebCore/dom/PseudoElement.cpp
M Source/WebCore/dom/ViewTransition.cpp
M Source/WebCore/inspector/agents/InspectorCSSAgent.cpp
M Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdater.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/ElementRuleCollector.h
M Source/WebCore/style/PseudoElementIdentifier.h
M Source/WebCore/style/PseudoElementRequest.h
M Source/WebCore/style/StyleResolver.cpp
M Source/WebCore/style/StyleResolver.h
M Source/WebCore/style/StyleSharingResolver.cpp
M Source/WebCore/style/StyleTreeResolver.cpp
M Source/WebCore/style/StyleTreeResolver.h
M Source/WebCore/style/Styleable.cpp
M Source/WebCore/style/Styleable.h

  Log Message:
  ---
  [view-transitions] Integrate pseudo-elements with animation code
https://bugs.webkit.org/show_bug.cgi?id=268064
rdar://121691532

Reviewed by Darin Adler.

In order to support view transitions, animation code needs to support the named 
argument for view transition pseudos, to be able to determine when the view 
transition ends.

Some of the code needs more fixes in order to work properly for view 
transitions, but this properly implements timing as a first step.

To achieve this goal, we refactor most animation code to use 
`std::optional` instead of `PseudoId`.

* Source/WebCore/animation/AcceleratedTimeline.cpp:
(WebCore::AcceleratedTimeline::updateEffectStacks):
(WebCore::AcceleratedTimeline::updateEffectStackForTarget):
* Source/WebCore/animation/AcceleratedTimeline.h:
* Source/WebCore/animation/CSSAnimation.cpp:
(WebCore::CSSAnimation::createEvent):
* Source/WebCore/animation/CSSAnimation.h:
* Source/WebCore/animation/CSSAnimationEvent.cpp:
(WebCore::CSSAnimationEvent::CSSAnimationEvent):
* Source/WebCore/animation/CSSAnimationEvent.h:
* Source/WebCore/animation/CSSTransition.cpp:
(WebCore::CSSTransition::createEvent):
* Source/WebCore/animation/CSSTransition.h:
* Source/WebCore/animation/CSSTransitionEvent.cpp:
(WebCore::CSSTransitionEvent::CSSTransitionEvent):
* Source/WebCore/animation/CSSTransitionEvent.h:
* Source/WebCore/animation/ElementAnimationRareData.cpp:
(WebCore::ElementAnimationRareData::ElementAnimationRareData):
* Source/WebCore/animation/ElementAnimationRareData.h:
(WebCore::ElementAnimationRareData::pseudoElementIdentifier):
(WebCore::ElementAnimationRareData::pseudoId const): Deleted.
* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::create):
(WebCore::KeyframeEffect::KeyframeEffect):
(WebCore::KeyframeEffect::copyPropertiesFromSource):
(WebCore::KeyframeEffect::getKeyframes):
(WebCore::KeyframeEffect::targetStyleable const):
(WebCore::KeyframeEffect::targetsPseudoElement const):
(WebCore::KeyframeEffect::pseudoElement const):
(WebCore::KeyframeEffect::setPseudoElement):
(WebCore::KeyframeEffect::isCurrentlyAffectingProperty const):
(WebCore::KeyframeEffect::applyPendingAcceleratedActions):
(WebCore::KeyframeEffect::ticksContinuouslyWhileActive const):
(WebCore::KeyframeEffect::computeHasAcceleratedPropertyOverriddenByCascadeProperty):
(WebCore::KeyframeEffect::abilityToBeAcceleratedDidChange):
(WebCore::KeyframeEffect::StackMembershipMutationScope::StackMembershipMutationScope):
(WebCore::KeyframeEffect::StackMembershipMutationScope::~StackMembershipMutationScope):
* Source

[webkit-changes] [WebKit/WebKit] fa3538: Use `getCachedPseudoStyle` for view transition and...

2024-02-14 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: fa3538d5a5b956dfa655a3aa26c5a9c940681fd9
  
https://github.com/WebKit/WebKit/commit/fa3538d5a5b956dfa655a3aa26c5a9c940681fd9
  Author: Tim Nguyen 
  Date:   2024-02-14 (Wed, 14 Feb 2024)

  Changed paths:
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/rendering/RenderElement.h
M Source/WebCore/rendering/RenderListItem.cpp
M Source/WebCore/rendering/RenderReplaced.cpp
M Source/WebCore/rendering/RenderText.h
M Source/WebCore/rendering/TextDecorationPainter.cpp
M Source/WebCore/rendering/svg/SVGInlineTextBox.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp

  Log Message:
  ---
  Use `getCachedPseudoStyle` for view transition and highlight pseudo-elements
https://bugs.webkit.org/show_bug.cgi?id=269369
rdar://122950635

Reviewed by Anne van Kesteren.

Start using the cache now that it supports PseudoElementIdentifier since 
274629@main.

* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::RenderElement::getCachedPseudoStyle const):
(WebCore::RenderElement::textSegmentPseudoStyle const):
* Source/WebCore/rendering/RenderElement.h:
* Source/WebCore/rendering/RenderListItem.cpp:
(WebCore::RenderListItem::computeMarkerStyle const):
* Source/WebCore/rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::calculateHighlightColor const):
* Source/WebCore/rendering/RenderText.h:
(WebCore::RenderText::getCachedPseudoStyle const):
* Source/WebCore/rendering/TextDecorationPainter.cpp:
(WebCore::collectStylesForRenderer):
* Source/WebCore/rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paint):
* Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp:
(WebCore::RenderTreeUpdater::GeneratedContent::updateBackdropRenderer):
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp:
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementTree):
(WebCore::RenderTreeUpdater::ViewTransition::buildPseudoElementGroup):
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementGroup):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9ec39d: [content-visibility] Enable by default in stable

2024-02-12 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9ec39d41de9f4e7700c050ff2d0753e81fdc5eb1
  
https://github.com/WebKit/WebKit/commit/9ec39d41de9f4e7700c050ff2d0753e81fdc5eb1
  Author: Tim Nguyen 
  Date:   2024-02-12 (Mon, 12 Feb 2024)

  Changed paths:
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml

  Log Message:
  ---
  [content-visibility] Enable by default in stable
https://bugs.webkit.org/show_bug.cgi?id=269232
rdar://117156105

Reviewed by Aditya Keerthi.

Re-enable in stable releases now that most issues have been fixed.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] ea774f: REGRESSION(273934@main): [ Debug ] Multiple layout...

2024-02-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ea774f9f202d62eb8a4d7047d18dfb5666ffe784
  
https://github.com/WebKit/WebKit/commit/ea774f9f202d62eb8a4d7047d18dfb5666ffe784
  Author: Tim Nguyen 
  Date:   2024-02-02 (Fri, 02 Feb 2024)

  Changed paths:
M Source/WebCore/page/LocalDOMWindow.cpp

  Log Message:
  ---
  REGRESSION(273934@main): [ Debug ] Multiple layout tests crashing.
https://bugs.webkit.org/show_bug.cgi?id=268650
rdar://122199019

Reviewed by Matthieu Dubet.

This restores the behavior pre-273934@main when getting the computed style of 
pseudo-elements like "::placeholder" / "::file-selector-button".

getComputedStyle() support for these pseudo-elements is currently broken (and 
has always been), since we return the element style instead, but this change
makes it so we stop asserting.

* Source/WebCore/page/LocalDOMWindow.cpp:
(WebCore::LocalDOMWindow::getComputedStyle const):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 741f7b: Use PseudoElementIdentifier in ComputedStyleExtrac...

2024-02-01 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 741f7b16f8e63521bfd98aa8c0f81b99952b6d99
  
https://github.com/WebKit/WebKit/commit/741f7b16f8e63521bfd98aa8c0f81b99952b6d99
  Author: Tim Nguyen 
  Date:   2024-02-01 (Thu, 01 Feb 2024)

  Changed paths:
M Source/WebCore/Headers.cmake
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/animation/KeyframeEffect.cpp
M Source/WebCore/css/CSSComputedStyleDeclaration.cpp
M Source/WebCore/css/CSSComputedStyleDeclaration.h
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/css/ComputedStyleExtractor.h
M Source/WebCore/css/SelectorChecker.h
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/dom/Element.cpp
M Source/WebCore/dom/Element.h
M Source/WebCore/dom/Node.cpp
M Source/WebCore/dom/Node.h
M Source/WebCore/inspector/agents/InspectorAnimationAgent.cpp
M Source/WebCore/inspector/agents/InspectorCSSAgent.cpp
M Source/WebCore/page/LocalDOMWindow.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/PseudoElementIdentifier.h
M Source/WebCore/style/PseudoElementRequest.h
M Source/WebCore/style/StyleResolver.cpp
M Source/WebCore/svg/SVGElement.cpp
M Source/WebCore/svg/SVGElement.h
M Source/WebCore/testing/Internals.cpp

  Log Message:
  ---
  Use PseudoElementIdentifier in ComputedStyleExtractor and 
CSSComputedStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=268063
rdar://121580606

Reviewed by Antti Koivisto.

In preparation of making animation code and `getComputedStyle()` work with 
pseudo-element name arguments (like `::highlight(name)` or 
`::view-transition-group(name)`).

Some of the consumers will also need refactoring to take 
PseudoElementIdentifier, which will be done separately.

* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::getKeyframes):
* Source/WebCore/css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::CSSComputedStyleDeclaration):
(WebCore::CSSComputedStyleDeclaration::create):
(WebCore::CSSComputedStyleDeclaration::createEmpty):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue const):
(WebCore::CSSComputedStyleDeclaration::copyProperties const):
(WebCore::CSSComputedStyleDeclaration::getPropertyValue const):
(WebCore::CSSComputedStyleDeclaration::length const):
(WebCore::CSSComputedStyleDeclaration::item const):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
(WebCore::CSSComputedStyleDeclaration::getPropertyValue):
* Source/WebCore/css/CSSComputedStyleDeclaration.h:
* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::ComputedStyleExtractor::ComputedStyleExtractor):
(WebCore::ComputedStyleExtractor::getFontSizeCSSValuePreferringKeyword const):
(WebCore::ComputedStyleExtractor::useFixedFontDefaultSize const):
(WebCore::ComputedStyleExtractor::styledRenderer const):
(WebCore::computeRenderStyleForProperty):
(WebCore::ComputedStyleExtractor::customPropertyValue const):
(WebCore::ComputedStyleExtractor::propertyValue const):
(WebCore::ComputedStyleExtractor::propertyMatches const):
(WebCore::ComputedStyleExtractor::getLayerCount const):
* Source/WebCore/css/ComputedStyleExtractor.h:
* Source/WebCore/css/SelectorChecker.h:
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::styleForElementIgnoringPendingStylesheets):
* Source/WebCore/dom/Document.h:
* Source/WebCore/dom/Element.cpp:
(WebCore::Element::resolvePseudoElementStyle):
(WebCore::Element::computedStyle):
* Source/WebCore/dom/Element.h:
* Source/WebCore/dom/Node.cpp:
(WebCore::Node::computedStyle):
* Source/WebCore/dom/Node.h:
* Source/WebCore/inspector/agents/InspectorAnimationAgent.cpp:
(WebCore::buildObjectForKeyframes):
* Source/WebCore/inspector/agents/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getComputedStyleForNode):
* Source/WebCore/page/LocalDOMWindow.cpp:
(WebCore::LocalDOMWindow::getComputedStyle const):
(WebCore::LocalDOMWindow::getMatchedCSSRules const): Deleted.
(WebCore::LocalDOMWindow::webkitConvertPointFromNodeToPage const): Deleted.
(WebCore::LocalDOMWindow::webkitConvertPointFromPageToNode const): Deleted.
(WebCore::LocalDOMWindow::devicePixelRatio const): Deleted.
(WebCore::LocalDOMWindow::scrollBy const): Deleted.
(WebCore::LocalDOMWindow::scrollTo const): Deleted.
(WebCore::LocalDOMWindow::allowedToChangeWindowGeometry const): Deleted.
(WebCore::LocalDOMWindow::moveBy const): Deleted.
(WebCore::LocalDOMWindow::moveTo const): Deleted.
(WebCore::LocalDOMWindow::resizeBy const): Deleted.
(WebCore::LocalDOMWindow::resizeTo const): Deleted.
(WebCore::LocalDOMWindow::setTimeout): Deleted.
(WebCore::LocalDOMWindow::clearTimeout): Deleted.
(WebCore::LocalDOMWindow::setInterval): Deleted.
(WebCore::LocalDOMWindow::clearInterval): Deleted.
(WebCore::LocalDOMWindow

[webkit-changes] [WebKit/WebKit] de1593: CrashTracer: com.apple.WebKit.WebContent at WebCor...

2024-01-31 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: de15933efb3df90ef3af89e73f48847471f22700
  
https://github.com/WebKit/WebKit/commit/de15933efb3df90ef3af89e73f48847471f22700
  Author: Tim Nguyen 
  Date:   2024-01-31 (Wed, 31 Jan 2024)

  Changed paths:
A 
LayoutTests/fullscreen/fullscreen-add-disconnected-to-top-layer-expected.txt
A LayoutTests/fullscreen/fullscreen-add-disconnected-to-top-layer.html
M Source/WebCore/dom/Document.cpp

  Log Message:
  ---
  CrashTracer: com.apple.WebKit.WebContent at WebCore: 
WebCore::Document::addTopLayerElement
https://bugs.webkit.org/show_bug.cgi?id=268434
rdar://117975912

Reviewed by Chris Dumez.

The release assertion here is bogus, the top layer is a DOM construct that is 
used for various DOM algorithms, not just a rendering one.

Things in the top layer are not required to be rendered.

* LayoutTests/fullscreen/fullscreen-add-disconnected-to-top-layer-expected.txt: 
Added.
* LayoutTests/fullscreen/fullscreen-add-disconnected-to-top-layer.html: Added.
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::addTopLayerElement):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 412734: Introduce PseudoElementIdentifier

2024-01-30 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 412734d26e78c3750bbd702e323d11d22c36aaf0
  
https://github.com/WebKit/WebKit/commit/412734d26e78c3750bbd702e323d11d22c36aaf0
  Author: Tim Nguyen 
  Date:   2024-01-30 (Tue, 30 Jan 2024)

  Changed paths:
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
A Source/WebCore/style/PseudoElementIdentifier.h
M Source/WebCore/style/PseudoElementRequest.h
M Source/WebCore/style/StyleResolver.cpp

  Log Message:
  ---
  Introduce PseudoElementIdentifier
https://bugs.webkit.org/show_bug.cgi?id=268412
rdar://121959648

Reviewed by Darin Adler.

We want to separate this from PseudoElementRequest so we can re-use it in other 
places.

* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::RenderElement::getUncachedPseudoStyle const):
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::collectMatchingRules):
(WebCore::Style::ElementRuleCollector::ruleMatches):
(WebCore::Style::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::Style::ElementRuleCollector::addAuthorKeyframeRules):
* Source/WebCore/style/PseudoElementIdentifier.h: Copied from 
Source/WebCore/style/PseudoElementRequest.h.
(WebCore::Style::PseudoElementIdentifier::PseudoElementIdentifier):
* Source/WebCore/style/PseudoElementRequest.h:
(WebCore::Style::PseudoElementRequest::PseudoElementRequest):
(WebCore::Style::PseudoElementRequest::identifier const):
(WebCore::Style::PseudoElementRequest::pseudoId const):
(WebCore::Style::PseudoElementRequest::pseudoElementNameArgument const):
(WebCore::Style::PseudoElementRequest::scrollbarState const):
* Source/WebCore/style/StyleResolver.cpp:
(WebCore::Style::Resolver::styleForPseudoElement):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 8c6d87: REGRESSION(267658@main): `font-variant-emoji` valu...

2024-01-29 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8c6d87c471e4eabfbdb9f4a77d25adb0aad3fb35
  
https://github.com/WebKit/WebKit/commit/8c6d87c471e4eabfbdb9f4a77d25adb0aad3fb35
  Author: Tim Nguyen 
  Date:   2024-01-29 (Mon, 29 Jan 2024)

  Changed paths:
A LayoutTests/fast/css/font-variant-emoji-disabled-expected.txt
A LayoutTests/fast/css/font-variant-emoji-disabled.html
M Source/WebCore/css/parser/CSSPropertyParser.cpp

  Log Message:
  ---
  REGRESSION(267658@main): `font-variant-emoji` values should not parse in 
`font-variant` shorthand when disabled
https://bugs.webkit.org/show_bug.cgi?id=268348
rdar://121890028

Reviewed by Matthieu Dubet.

`font-variant: emoji` or `font-variant: unicode` should not parse when 
`font-variant-emoji` is disabled.

* LayoutTests/fast/css/font-variant-emoji-disabled-expected.txt: Added.
* LayoutTests/fast/css/font-variant-emoji-disabled.html: Added.
* Source/WebCore/css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::consumeFontVariantShorthand):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 705788: Make `:-webkit-full-screen-document` an internal p...

2024-01-28 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 705788983f0a6269351404a12ba9d3d603f62a42
  
https://github.com/WebKit/WebKit/commit/705788983f0a6269351404a12ba9d3d603f62a42
  Author: Tim Nguyen 
  Date:   2024-01-28 (Sun, 28 Jan 2024)

  Changed paths:
M LayoutTests/fullscreen/full-screen-css.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos.html
M ManualTests/fullscreen/full-screen-flash.html
M Source/WebCore/Modules/modern-media-controls/controls/media-controls.css
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorCheckerTestFunctions.h
M Source/WebCore/css/fullscreen.css
M Source/WebCore/css/process-css-pseudo-selectors.py
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/dom/FullscreenManager.cpp
M Source/WebCore/html/shadow/imageOverlay.css

  Log Message:
  ---
  Make `:-webkit-full-screen-document` an internal pseudo-class
https://bugs.webkit.org/show_bug.cgi?id=268234
rdar://121816310

Reviewed by Darin Adler.

The main use of this is the UA stylesheet. Websites can use 
`:root:is(:fullscreen, :has(:fullscreen))` to achieve the same effect.

Let's attempt to unexpose this pseudo-class.

Also change 'full-screen' to 'fullscreen' for consistency with spec language.

* LayoutTests/fullscreen/full-screen-css.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos.html:
* ManualTests/fullscreen/full-screen-flash.html:
* Source/WebCore/Modules/modern-media-controls/controls/media-controls.css:
(:host(:-internal-animating-fullscreen-transition) .media-controls):
(:host(:-internal-animating-full-screen-transition) .media-controls): Deleted.
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/SelectorCheckerTestFunctions.h:
(WebCore::matchesAnimatingFullscreenTransitionPseudoClass):
(WebCore::matchesFullscreenDocumentPseudoClass):
(WebCore::matchesFullScreenAnimatingFullScreenTransitionPseudoClass): Deleted.
(WebCore::matchesFullScreenDocumentPseudoClass): Deleted.
* Source/WebCore/css/fullscreen.css:
(*|*:root:-internal-fullscreen-document:not(:fullscreen)):
(*|*:root:-webkit-full-screen-document:not(:fullscreen)): Deleted.
* Source/WebCore/css/process-css-pseudo-selectors.py:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::JSC_DEFINE_JIT_OPERATION):
(WebCore::SelectorCompiler::addPseudoClassType):
* Source/WebCore/dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::setAnimatingFullscreen):
* Source/WebCore/html/shadow/imageOverlay.css:
(:host(:not(img)) div#image-overlay:-internal-fullscreen-document):
(:host(:not(img)) div#image-overlay:-webkit-full-screen-document): Deleted.

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] ac6af5: Remove `:-webkit-full-screen-ancestor` pseudo-class

2024-01-28 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ac6af5889f326768bef221c08b9850be5b88ee3f
  
https://github.com/WebKit/WebKit/commit/ac6af5889f326768bef221c08b9850be5b88ee3f
  Author: Tim Nguyen 
  Date:   2024-01-28 (Sun, 28 Jan 2024)

  Changed paths:
R 
LayoutTests/fast/shadow-dom/fullscreen-in-shadow-full-screen-ancestor-expected.txt
R LayoutTests/fast/shadow-dom/fullscreen-in-shadow-full-screen-ancestor.html
M LayoutTests/platform/ios-wk2/TestExpectations
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorCheckerTestFunctions.h
M Source/WebCore/css/process-css-pseudo-selectors.py
M Source/WebCore/cssjit/SelectorCompiler.cpp

  Log Message:
  ---
  Remove `:-webkit-full-screen-ancestor` pseudo-class
https://bugs.webkit.org/show_bug.cgi?id=246042
rdar://100782937

Reviewed by Anne van Kesteren.

This pseudo-class was used internally to bring the fullscreen element on top 
everything else, before the top layer was introduced.

Now that the internal usage is gone, we can try to remove this pseudo-class.

* 
LayoutTests/fast/shadow-dom/fullscreen-in-shadow-full-screen-ancestor-expected.txt:
 Removed.
* LayoutTests/fast/shadow-dom/fullscreen-in-shadow-full-screen-ancestor.html: 
Removed.
* LayoutTests/platform/ios-wk2/TestExpectations:
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/SelectorCheckerTestFunctions.h:
(WebCore::matchesFullScreenAncestorPseudoClass): Deleted.
* Source/WebCore/css/process-css-pseudo-selectors.py:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b706de: Remove `:-webkit-full-screen-controls-hidden` pseu...

2024-01-28 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b706dea06d356ce202580d6bc1310c1dfa141b11
  
https://github.com/WebKit/WebKit/commit/b706dea06d356ce202580d6bc1310c1dfa141b11
  Author: Tim Nguyen 
  Date:   2024-01-28 (Sun, 28 Jan 2024)

  Changed paths:
M LayoutTests/fullscreen/fullscreen-env-expected.txt
M LayoutTests/fullscreen/fullscreen-env.html
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorCheckerTestFunctions.h
M Source/WebCore/css/process-css-pseudo-selectors.py
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/dom/FullscreenManager.cpp
M Source/WebCore/dom/FullscreenManager.h
M Source/WebCore/page/Page.cpp
M Source/WebCore/page/Page.h
M Source/WebCore/testing/Internals.cpp
M Source/WebCore/testing/Internals.h
M Source/WebCore/testing/Internals.idl
M Source/WebKit/UIProcess/WebFullScreenManagerProxy.cpp
M Source/WebKit/UIProcess/WebFullScreenManagerProxy.h
M Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm
M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp
M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.h
M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.messages.in

  Log Message:
  ---
  Remove `:-webkit-full-screen-controls-hidden` pseudo-class
https://bugs.webkit.org/show_bug.cgi?id=267820
rdar://121323330

Reviewed by Anne van Kesteren.

This was created but never evangelized, so it ended up never getting adoption.

* LayoutTests/fullscreen/fullscreen-env-expected.txt:
* LayoutTests/fullscreen/fullscreen-env.html:
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/SelectorCheckerTestFunctions.h:
(WebCore::matchesFullScreenControlsHiddenPseudoClass): Deleted.
* Source/WebCore/css/process-css-pseudo-selectors.py:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::JSC_DEFINE_JIT_OPERATION):
(WebCore::SelectorCompiler::addPseudoClassType):
* Source/WebCore/dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::areFullscreenControlsHidden const): Deleted.
(WebCore::FullscreenManager::setFullscreenControlsHidden): Deleted.
* Source/WebCore/dom/FullscreenManager.h:
* Source/WebCore/page/Page.cpp:
(WebCore::Page::setFullscreenControlsHidden): Deleted.
* Source/WebCore/page/Page.h:
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::setFullscreenControlsHidden): Deleted.
* Source/WebCore/testing/Internals.h:
* Source/WebCore/testing/Internals.idl:
* Source/WebKit/UIProcess/WebFullScreenManagerProxy.cpp:
(WebKit::WebFullScreenManagerProxy::setFullscreenControlsHidden): Deleted.
* Source/WebKit/UIProcess/WebFullScreenManagerProxy.h:
* Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
(-[WKFullScreenViewController showUI]):
(-[WKFullScreenViewController hideUI]):
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::setFullscreenControlsHidden): Deleted.
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.h:
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.messages.in:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 77fb36: Make `:-webkit-full-page-media` an internal pseudo...

2024-01-28 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 77fb3649ec46dea08154a9f96e0d06fd5b9cb0bf
  
https://github.com/WebKit/WebKit/commit/77fb3649ec46dea08154a9f96e0d06fd5b9cb0bf
  Author: Tim Nguyen 
  Date:   2024-01-28 (Sun, 28 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/html.css
M Source/WebCore/css/mediaControls.css
M Source/WebCore/css/process-css-pseudo-selectors.py
M Source/WebCore/cssjit/SelectorCompiler.cpp

  Log Message:
  ---
  Make `:-webkit-full-page-media` an internal pseudo-class
https://bugs.webkit.org/show_bug.cgi?id=268231
rdar://121752962

Reviewed by Anne van Kesteren.

This matches for media documents only, which webpages can't style anyway, so 
unexpose this pseudo-class to be internal only.

* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/html.css:
(body:-internal-media-document):
(body:-webkit-full-page-media): Deleted.
* Source/WebCore/css/mediaControls.css:
(video:-internal-media-document):
(video:-internal-media-document::-webkit-media-controls-panel):
(video:-webkit-full-page-media): Deleted.
(video:-webkit-full-page-media::-webkit-media-controls-panel): Deleted.
* Source/WebCore/css/process-css-pseudo-selectors.py:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 955982: Move StyleScrollbarState to its own file

2024-01-28 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 955982f075cbb7ba5c96484339745215926da3d7
  
https://github.com/WebKit/WebKit/commit/955982f075cbb7ba5c96484339745215926da3d7
  Author: Tim Nguyen 
  Date:   2024-01-28 (Sun, 28 Jan 2024)

  Changed paths:
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/css/SelectorChecker.h
M Source/WebCore/style/PseudoElementRequest.h
A Source/WebCore/style/StyleScrollbarState.h

  Log Message:
  ---
  Move StyleScrollbarState to its own file
https://bugs.webkit.org/show_bug.cgi?id=268245
rdar://121769126

Reviewed by Aditya Keerthi.

Having this be part of SelectorChecker.h causes circular imports with the 
change from bug 268063.

* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/SelectorChecker.h:
* Source/WebCore/style/PseudoElementRequest.h: Drive-by fix the license header
* Source/WebCore/style/StyleScrollbarState.h: Added.

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 415d51: Use consistent naming for pseudo-element name argu...

2024-01-26 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 415d51dc9477a1de2486c2c6d2c209ac91e2b1bb
  
https://github.com/WebKit/WebKit/commit/415d51dc9477a1de2486c2c6d2c209ac91e2b1bb
  Author: Tim Nguyen 
  Date:   2024-01-26 (Fri, 26 Jan 2024)

  Changed paths:
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorChecker.h
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/rendering/style/RenderStyleInlines.h
M Source/WebCore/rendering/style/RenderStyleSetters.h
M Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp
M Source/WebCore/rendering/style/StyleRareNonInheritedData.h
M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/PseudoElementRequest.h
M Source/WebCore/style/StyleResolver.cpp

  Log Message:
  ---
  Use consistent naming for pseudo-element name argument
https://bugs.webkit.org/show_bug.cgi?id=268195
rdar://121690341

Reviewed by Matthieu Dubet.

nameIdentifier -> pseudoElementNameArgument
functionalPseudoElementArgument -> pseudoElementNameArgument
setFunctionalPseudoElementArgument -> setPseudoElementNameArgument

* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/SelectorChecker.h:
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
(WebCore::RenderStyle::pseudoElementNameArgument const):
(WebCore::RenderStyle::functionalPseudoElementArgument const): Deleted.
* Source/WebCore/rendering/style/RenderStyleSetters.h:
(WebCore::RenderStyle::setPseudoElementNameArgument):
(WebCore::RenderStyle::setFunctionalPseudoElementArgument): Deleted.
* Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator== const):
* Source/WebCore/rendering/style/StyleRareNonInheritedData.h:
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp:
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementTree):
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementGroup):
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::ruleMatches):
* Source/WebCore/style/PseudoElementRequest.h:
(WebCore::Style::PseudoElementRequest::PseudoElementRequest):
* Source/WebCore/style/StyleResolver.cpp:
(WebCore::Style::Resolver::styleForPseudoElement):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] dbe36e: Move PseudoElementRequest to its own file

2024-01-24 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dbe36ee35f87eddccece6a3e58f2673ac284f8ba
  
https://github.com/WebKit/WebKit/commit/dbe36ee35f87eddccece6a3e58f2673ac284f8ba
  Author: Tim Nguyen 
  Date:   2024-01-24 (Wed, 24 Jan 2024)

  Changed paths:
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/style/ElementRuleCollector.h
A Source/WebCore/style/PseudoElementRequest.h

  Log Message:
  ---
  Move PseudoElementRequest to its own file
https://bugs.webkit.org/show_bug.cgi?id=268048
rdar://121565442

Reviewed by Simon Fraser.

We shouldn't need to import ElementRuleCollector.h to use this class.

* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/style/ElementRuleCollector.h:
(WebCore::Style::PseudoElementRequest::PseudoElementRequest): Deleted.
* Source/WebCore/style/PseudoElementRequest.h: Added.
(WebCore::Style::PseudoElementRequest::PseudoElementRequest):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 7123a9: Rename `RenderStyle::styleType()` and `RenderStyle...

2024-01-23 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7123a96b5b715c6ffbc976e83d30a29560dd0ce9
  
https://github.com/WebKit/WebKit/commit/7123a96b5b715c6ffbc976e83d30a29560dd0ce9
  Author: Tim Nguyen 
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSPrimitiveValue.cpp
M Source/WebCore/dom/Element.cpp
M Source/WebCore/dom/ElementInlines.h
M Source/WebCore/inspector/agents/InspectorLayerTreeAgent.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
M Source/WebCore/rendering/LegacyLineLayout.cpp
M Source/WebCore/rendering/RenderBlock.cpp
M Source/WebCore/rendering/RenderBlockFlow.cpp
M Source/WebCore/rendering/RenderBox.cpp
M Source/WebCore/rendering/RenderBoxModelObject.h
M Source/WebCore/rendering/RenderCounter.cpp
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/rendering/RenderInline.cpp
M Source/WebCore/rendering/RenderLayerBacking.cpp
M Source/WebCore/rendering/RenderObject.cpp
M Source/WebCore/rendering/RenderObject.h
M Source/WebCore/rendering/line/LineWidth.cpp
M Source/WebCore/rendering/style/RenderStyle.cpp
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/rendering/style/RenderStyleInlines.h
M Source/WebCore/rendering/style/RenderStyleSetters.h
M Source/WebCore/rendering/updating/RenderTreeBuilderFirstLetter.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdater.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp
M Source/WebCore/style/MatchedDeclarationsCache.cpp
M Source/WebCore/style/StyleAdjuster.cpp
M Source/WebCore/style/StyleBuilderCustom.h
M Source/WebCore/style/StyleBuilderState.cpp
M Source/WebCore/style/StyleResolver.cpp
M Source/WebCore/style/StyleTreeResolver.cpp
M Source/WebCore/style/Styleable.cpp

  Log Message:
  ---
  Rename `RenderStyle::styleType()` and `RenderStyle::setStyleType()`
https://bugs.webkit.org/show_bug.cgi?id=267915
rdar://121419574

Reviewed by Antti Koivisto.

Use `pseudoElementType()` / `setPseudoElementType()` to clarify what this is.

* Source/WebCore/css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::computeNonCalcLengthDouble):
* Source/WebCore/dom/Element.cpp:
(WebCore::Element::resolvePseudoElementStyle):
* Source/WebCore/dom/ElementInlines.h:
(WebCore::isInTopLayerOrBackdrop):
* Source/WebCore/inspector/agents/InspectorLayerTreeAgent.cpp:
(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
* Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineBuilder::adjustLineRectForInitialLetterIfApplicable):
* Source/WebCore/rendering/LegacyLineLayout.cpp:
(WebCore::LegacyLineLayout::checkFloatInCleanLine):
* Source/WebCore/rendering/RenderBlock.cpp:
(WebCore::RenderBlock::nodeForHitTest const):
(WebCore::RenderBlock::getFirstLetter):
* Source/WebCore/rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::willCreateColumns const):
(WebCore::RenderBlockFlow::adjustForUnsplittableChild):
(WebCore::RenderBlockFlow::computeLogicalLocationForFloat):
(WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom const):
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::isUnsplittableForPagination const):
* Source/WebCore/rendering/RenderBoxModelObject.h:
* Source/WebCore/rendering/RenderCounter.cpp:
(WebCore::planCounter):
(WebCore::RenderCounter::updateCounter):
* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::RenderElement::propagateStyleToAnonymousChildren):
* Source/WebCore/rendering/RenderInline.cpp:
(WebCore::RenderInline::clippedOverflowRect const):
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::RenderLayerBacking):
* Source/WebCore/rendering/RenderObject.cpp:
(WebCore::RenderObject::outputRenderObject const):
* Source/WebCore/rendering/RenderObject.h:
(WebCore::RenderObject::isBeforeContent const):
(WebCore::RenderObject::isAfterContent const):
(WebCore::RenderObject::isAnonymousBlock const):
* Source/WebCore/rendering/line/LineWidth.cpp:
(WebCore::newFloatShrinksLine):
* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::createStyleInheritingFromPseudoStyle):
(WebCore::RenderStyle::RenderStyle):
(WebCore::RenderStyle::hasUniquePseudoStyle const):
(WebCore::RenderStyle::getCachedPseudoStyle const):
(WebCore::RenderStyle::addCachedPseudoStyle):
(WebCore::RenderStyle::conservativelyCollectChangedAnimatableProperties const):
* Source/WebCore/rendering/style/RenderStyle.h:
(WebCore::RenderStyle::pseudoElementType const):
(WebCore::RenderStyle::setPseudoElementType):
(WebCore::RenderStyle::styleType const): Deleted.
(WebCore::RenderStyle::setStyleType): Deleted.
* Source/WebCore/rendering/style/RenderStyleInlines.h:
(WebCore::RenderStyle::hasEffectiveContentNone const):
* Source/WebCore/rendering/style

[webkit-changes] [WebKit/WebKit] e9a06d: Initialize `m_hasViewTransitionPseudoElementTree` ...

2024-01-23 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e9a06d26c2c4999ee2f445e3a415f4a9390a7fd6
  
https://github.com/WebKit/WebKit/commit/e9a06d26c2c4999ee2f445e3a415f4a9390a7fd6
  Author: Tim Nguyen 
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
M Source/WebCore/dom/Document.h
M Source/WebCore/dom/ViewTransition.h

  Log Message:
  ---
  Initialize `m_hasViewTransitionPseudoElementTree` to false
https://bugs.webkit.org/show_bug.cgi?id=267914
rdar://121419584

Reviewed by Cameron McCormack.

* Source/WebCore/dom/Document.h:
* Source/WebCore/dom/ViewTransition.h:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 5d7c3b: [view-transitions] Create renderers for pseudo-ele...

2024-01-22 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5d7c3bb3e28035d21e4461474204eac7493419c4
  
https://github.com/WebKit/WebKit/commit/5d7c3bb3e28035d21e4461474204eac7493419c4
  Author: Tim Nguyen 
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/dom/ViewTransition.h
M Source/WebCore/rendering/RenderView.cpp
M Source/WebCore/rendering/RenderView.h
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/rendering/style/RenderStyleInlines.h
M Source/WebCore/rendering/style/RenderStyleSetters.h
M Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp
M Source/WebCore/rendering/style/StyleRareNonInheritedData.h
M Source/WebCore/rendering/updating/RenderTreeUpdater.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdater.h
A Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp
A Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.h
M Source/WebCore/style/StyleResolver.cpp

  Log Message:
  ---
  [view-transitions] Create renderers for pseudo-elements
https://bugs.webkit.org/show_bug.cgi?id=265168
rdar://118667022

Reviewed by Antti Koivisto.

Use the named elements map as input to build the pseudo element tree.

* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/dom/ViewTransition.h:
(WebCore::OrderedNamedElementsMap::isEmpty const):
* Source/WebCore/rendering/RenderView.cpp:
(WebCore::RenderView::viewTransitionRoot const):
(WebCore::RenderView::setViewTransitionRoot):
* Source/WebCore/rendering/RenderView.h:
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
(WebCore::RenderStyle::functionalPseudoElementArgument const):
* Source/WebCore/rendering/style/RenderStyleSetters.h:
(WebCore::RenderStyle::setFunctionalPseudoElementArgument):
* Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator== const):
* Source/WebCore/rendering/style/StyleRareNonInheritedData.h:
* Source/WebCore/rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::RenderTreeUpdater):
(WebCore::RenderTreeUpdater::updateAfterDescendants):
* Source/WebCore/rendering/updating/RenderTreeUpdater.h:
(WebCore::RenderTreeUpdater::viewTransition):
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp: Added.
(WebCore::RenderTreeUpdater::ViewTransition::ViewTransition):
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementTree):
(WebCore::RenderTreeUpdater::ViewTransition::buildPseudoElementGroup):
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementGroup):
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.h: Added.
* Source/WebCore/style/StyleResolver.cpp:
(WebCore::Style::Resolver::styleForPseudoElement):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 157eda: Remove `:-khtml-drag` pseudo-class alias

2024-01-20 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 157eda4fb5e3aef864392c4da1f6958d8e89d458
  
https://github.com/WebKit/WebKit/commit/157eda4fb5e3aef864392c4da1f6958d8e89d458
  Author: Tim Nguyen 
  Date:   2024-01-20 (Sat, 20 Jan 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos.html
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Remove `:-khtml-drag` pseudo-class alias
https://bugs.webkit.org/show_bug.cgi?id=267805
rdar://121303391

Reviewed by Anne van Kesteren.

Chrome has unshipped this for a while, let's give it a try. Firefox has never 
shipped this.

A quick Github search for `:-khtml-drag` shows a small number of hits: 
https://github.com/search?q=%3A-khtml-drag=code

- Styling for dragging elements will change for the few sites that were using 
this.
- None of the hits are using `:-khtml-drag` in a selector list, which means 
this change wouldn't accidentally un-apply declarations for a different selector

* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos.html:
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/process-css-pseudo-selectors.py:
(InputValidator.validate_fields.is_known_prefix):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 8ebf7a: Make `:-webkit-animating-full-screen-transition` a...

2024-01-20 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8ebf7a9fbf27d9583e19974ed70162cec97886de
  
https://github.com/WebKit/WebKit/commit/8ebf7a9fbf27d9583e19974ed70162cec97886de
  Author: Tim Nguyen 
  Date:   2024-01-20 (Sat, 20 Jan 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos.html
M Source/WebCore/Modules/modern-media-controls/controls/media-controls.css
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/process-css-pseudo-selectors.py
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/dom/FullscreenManager.cpp

  Log Message:
  ---
  Make `:-webkit-animating-full-screen-transition` an internal pseudo-class
https://bugs.webkit.org/show_bug.cgi?id=267803
rdar://121302758

Reviewed by Anne van Kesteren.

All the hits on Github seem to be either MDN docs or WebKit repository clones: 
https://github.com/search?q=-webkit-animating-full-screen-transition=code=1

It seems safe to try this and catch issues with live-on.

* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos.html:
* Source/WebCore/Modules/modern-media-controls/controls/media-controls.css:
(:host(:-internal-animating-full-screen-transition) .media-controls):
(:host(:-webkit-animating-full-screen-transition) .media-controls): Deleted.
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/process-css-pseudo-selectors.py:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
* Source/WebCore/dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::setAnimatingFullscreen):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 3586fe: [view-transitions] `auto` is disallowed on `view-t...

2024-01-17 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3586fe08ab06255a0715eb919e5133052fe27079
  
https://github.com/WebKit/WebKit/commit/3586fe08ab06255a0715eb919e5133052fe27079
  Author: Tim Nguyen 
  Date:   2024-01-17 (Wed, 17 Jan 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/parsing/view-transition-name-invalid-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/parsing/view-transition-name-invalid.html
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp
M Source/WebCore/css/parser/CSSPropertyParserHelpers.h

  Log Message:
  ---
  [view-transitions] `auto` is disallowed on `view-transition-name`
https://bugs.webkit.org/show_bug.cgi?id=267619
rdar://121094366

Reviewed by Anne van Kesteren.

Adopt the resolution from: https://github.com/w3c/csswg-drafts/issues/9639

Add a custom parsing function since the auto-generated function does not 
support custom-ident restrictions.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/parsing/view-transition-name-invalid-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/parsing/view-transition-name-invalid.html:
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeViewTransitionName):
* Source/WebCore/css/parser/CSSPropertyParserHelpers.h:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 15c87b: [scroll-anchoring] Remove stale `selectAnchorEleme...

2024-01-16 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 15c87b3889013ae2c0fdf675bb33607481820395
  
https://github.com/WebKit/WebKit/commit/15c87b3889013ae2c0fdf675bb33607481820395
  Author: Tim Nguyen 
  Date:   2024-01-16 (Tue, 16 Jan 2024)

  Changed paths:
M Source/WebCore/page/scrolling/ScrollAnchoringController.cpp
M Source/WebCore/page/scrolling/ScrollAnchoringController.h

  Log Message:
  ---
  [scroll-anchoring] Remove stale `selectAnchorElement()` from header file
https://bugs.webkit.org/show_bug.cgi?id=266312
rdar://119583510

Reviewed by Wenson Hsieh.

Also fix "supress" typos in scroll anchoring code.

* Source/WebCore/page/scrolling/ScrollAnchoringController.cpp:
(WebCore::ScrollAnchoringController::notifyChildHadSuppressingStyleChange):
(WebCore::ScrollAnchoringController::adjustScrollPositionForAnchoring):
* Source/WebCore/page/scrolling/ScrollAnchoringController.h:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 8c8cfb: Clean up code for internal CSS values

2024-01-16 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8c8cfbf1f0f0640439a7a9d5d2972c972b7063a7
  
https://github.com/WebKit/WebKit/commit/8c8cfbf1f0f0640439a7a9d5d2972c972b7063a7
  Author: Tim Nguyen 
  Date:   2024-01-16 (Tue, 16 Jan 2024)

  Changed paths:
M Source/WebCore/css/parser/CSSParserContext.cpp
M Source/WebCore/css/parser/CSSParserFastPaths.cpp
M Source/WebCore/css/parser/CSSParserIdioms.cpp
M Source/WebCore/css/parser/CSSParserIdioms.h
M Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/process-css-properties.py
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Clean up code for internal CSS values
https://bugs.webkit.org/show_bug.cgi?id=267520
rdar://121019340

Reviewed by Darin Adler.

Right now, if you want to make a certain value internal, you have to do 2 
changes:
1) Add "status": "internal" to CSSProperties.json
2) Change isValueAllowedInMode() to include your value

This is error prone, as it's easy to think that the first step is sufficient.

With this change:
- the first step will be sufficient to make a value UA-sheet only
- isValueAllowedInMode is now named isColorKeywordAllowedInMode as it's now 
only used for color parsing.
- we now validate that all values starting with "-internal-" have "status": 
"internal" in CSSProperties.json

Also use isUASheetBehavior whenever possible.

* Source/WebCore/css/parser/CSSParserContext.cpp:
(WebCore::CSSParserContext::CSSParserContext):
* Source/WebCore/css/parser/CSSParserFastPaths.cpp:
(WebCore::parseColor):
* Source/WebCore/css/parser/CSSParserIdioms.cpp:
(WebCore::isColorKeywordAllowedInMode):
(WebCore::isValueAllowedInMode): Deleted.
* Source/WebCore/css/parser/CSSParserIdioms.h:
* Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::LengthRawKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumeColorWorkerSafe):
(WebCore::CSSPropertyParserHelpers::consumeColor):
(WebCore::CSSPropertyParserHelpers::consumeCounterStyleNameInPrelude):
(WebCore::CSSPropertyParserHelpers::consumeDisplay):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::extractCompoundFlags):
(WebCore::CSSSelectorParser::consumeSimpleSelector):
(WebCore::CSSSelectorParser::splitCompoundAtImplicitShadowCrossingCombinator):
* Source/WebCore/css/process-css-properties.py:
Directly check for UASheetMode and add validation for `-internal-` values that 
they use correct "status" field.

* Source/WebCore/css/process-css-pseudo-selectors.py:
The .join() case also works fine for when there's only one condition.

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b829c5: Unexpose non-standard `resize: auto` value

2024-01-15 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b829c58e74144cfe9feb5c76e58f2a37d08d11b1
  
https://github.com/WebKit/WebKit/commit/b829c58e74144cfe9feb5c76e58f2a37d08d11b1
  Author: Tim Nguyen 
  Date:   2024-01-15 (Mon, 15 Jan 2024)

  Changed paths:
A LayoutTests/fast/css/textarea-resizable-preference-disabled-expected.html
A LayoutTests/fast/css/textarea-resizable-preference-disabled.html
A LayoutTests/fast/css/textarea-resizable-preference-enabled-expected.html
A LayoutTests/fast/css/textarea-resizable-preference-enabled.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-ui/parsing/resize-invalid-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-ui/parsing/resize-invalid.html
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/CSSValueKeywords.in
M Source/WebCore/css/html.css
M Source/WebCore/css/parser/CSSParserIdioms.cpp
M Source/WebCore/style/StyleBuilderConverter.h

  Log Message:
  ---
  Unexpose non-standard `resize: auto` value
https://bugs.webkit.org/show_bug.cgi?id=266614
rdar://120138995

Reviewed by Anne van Kesteren.

Rename `resize: auto` to `resize: -internal-textarea-auto` and make it specific 
to UA stylesheets.

Also add some tests for the "TextAreasAreResizable" preference since it was 
previously untested.

* LayoutTests/fast/css/textarea-resizable-preference-disabled-expected.html: 
Added.
* LayoutTests/fast/css/textarea-resizable-preference-disabled.html: Added.
* LayoutTests/fast/css/textarea-resizable-preference-enabled-expected.html: 
Added.
* LayoutTests/fast/css/textarea-resizable-preference-enabled.html: Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-ui/parsing/resize-invalid-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-ui/parsing/resize-invalid.html:
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/CSSValueKeywords.in:
* Source/WebCore/css/html.css:
(#endif):
* Source/WebCore/css/parser/CSSParserIdioms.cpp:
(WebCore::isValueAllowedInMode):
* Source/WebCore/style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertResize):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4f86be: `:has-attachment` pseudo-class should be prefixed

2024-01-09 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4f86be21534253448c03223b71d2770e57e87488
  
https://github.com/WebKit/WebKit/commit/4f86be21534253448c03223b71d2770e57e87488
  Author: Tim Nguyen 
  Date:   2024-01-09 (Tue, 09 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSPseudoSelectors.json

  Log Message:
  ---
  `:has-attachment` pseudo-class should be prefixed
https://bugs.webkit.org/show_bug.cgi?id=266948
rdar://120599170

Unreviewed, add missing alias that somehow didn't make it in the initial push.

* Source/WebCore/css/CSSPseudoSelectors.json:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] ee0b8e: `:has-attachment` pseudo-class should be prefixed

2024-01-09 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ee0b8ecdb38dbf2891eaf5844f5214540d43f703
  
https://github.com/WebKit/WebKit/commit/ee0b8ecdb38dbf2891eaf5844f5214540d43f703
  Author: Tim Nguyen 
  Date:   2024-01-09 (Tue, 09 Jan 2024)

  Changed paths:
A LayoutTests/fast/attachment/has-attachment-pseudo-class-expected.txt
A LayoutTests/fast/attachment/has-attachment-pseudo-class.html
R LayoutTests/fast/css/has-attachment-expected.txt
R LayoutTests/fast/css/has-attachment.html
M LayoutTests/platform/glib/TestExpectations
M LayoutTests/platform/wincairo/TestExpectations
M LayoutTests/platform/wpe/TestExpectations
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/cssjit/SelectorCompiler.cpp

  Log Message:
  ---
  `:has-attachment` pseudo-class should be prefixed
https://bugs.webkit.org/show_bug.cgi?id=266948
rdar://120599170

Reviewed by Darin Adler.

This pseudo-class is only used by the Apple Mail apps along with the 
 element feature.

Prefix it with `-apple-` to make this clear and subject to validation for 
`-apple-` prefixes.

* LayoutTests/fast/attachment/has-attachment-pseudo-class-expected.txt: Renamed 
from LayoutTests/fast/css/has-attachment-expected.txt.
* LayoutTests/fast/attachment/has-attachment-pseudo-class.html: Renamed from 
LayoutTests/fast/css/has-attachment.html.
* LayoutTests/platform/glib/TestExpectations:
* LayoutTests/platform/wincairo/TestExpectations:
* LayoutTests/platform/wpe/TestExpectations:

Move test to the fast/attachment directory which is already skipped on relevant 
platforms.

* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 0deb05: Assert that element is in UA shadow tree in userAg...

2024-01-08 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0deb0517a6976b4a4f2f2e5917400c2836882dd3
  
https://github.com/WebKit/WebKit/commit/0deb0517a6976b4a4f2f2e5917400c2836882dd3
  Author: Tim Nguyen 
  Date:   2024-01-08 (Mon, 08 Jan 2024)

  Changed paths:
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/dom/Element.cpp
M Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/StyleAdjuster.cpp
M Source/WebCore/style/StyleSharingResolver.cpp

  Log Message:
  ---
  Assert that element is in UA shadow tree in userAgentPart methods
https://bugs.webkit.org/show_bug.cgi?id=267213
rdar://120616043

Reviewed by Ryosuke Niwa.

These methods should never be called on elements outside of UA shadow trees. 
It's a very likely a bug if they are.

Fix/restructure some code so the assertion holds true everywhere.

* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchRecursively const):
* Source/WebCore/dom/Element.cpp:
(WebCore::Element::userAgentPart const):
(WebCore::Element::setUserAgentPart):
* Source/WebCore/inspector/agents/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::highlightSelector):
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::collectMatchingUserAgentPartRules):
* Source/WebCore/style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::adjust const):
* Source/WebCore/style/StyleSharingResolver.cpp:
(WebCore::Style::SharingResolver::canShareStyleWithElement const):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 0f1319: Validate name prefixes in CSSPseudoSelectors.json

2024-01-06 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0f1319b55b123c3139208eace470952f27fb33bf
  
https://github.com/WebKit/WebKit/commit/0f1319b55b123c3139208eace470952f27fb33bf
  Author: Tim Nguyen 
  Date:   2024-01-06 (Sat, 06 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Validate name prefixes in CSSPseudoSelectors.json
https://bugs.webkit.org/show_bug.cgi?id=267170
rdar://120575956

Reviewed by Darin Adler.

- Add a list of known prefixes and validate names against it.
- Add a mechanism to restrain the number of `-webkit-` prefixes and encourage 
the use of `-internal-` and `-apple-` or standardized pseudos instead.
- Add an allowlist for "supports-single-colon-for-compatibility"

* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/process-css-pseudo-selectors.py:
(InputValidator.__init__):
(InputValidator.validate_fields.is_known_prefix):
(InputValidator.validate_fields):
(InputValidator.check_webkit_prefix_count):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] f72d16: Make `::-webkit-loading-auto-fill-button` an inter...

2024-01-06 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f72d16287b1b22b75a471b272346ff74ab298fa4
  
https://github.com/WebKit/WebKit/commit/f72d16287b1b22b75a471b272346ff74ab298fa4
  Author: Tim Nguyen 
  Date:   2024-01-06 (Sat, 06 Jan 2024)

  Changed paths:
R LayoutTests/fast/css/pseudo-class-internal-expected.txt
R LayoutTests/fast/css/pseudo-class-internal.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos.html
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/html.css
M Source/WebCore/css/process-css-pseudo-selectors.py
M Source/WebCore/html/TextFieldInputType.cpp

  Log Message:
  ---
  Make `::-webkit-loading-auto-fill-button` an internal pseudo-element
https://bugs.webkit.org/show_bug.cgi?id=267169
rdar://120579213

Reviewed by Darin Adler.

This was added (relatively) recently in 252146@main in 2022 so it should be 
safe to unexpose.

Additional reasons the risk of compat fallout is low are:
- There are no hits on Github currently
- There are no hits on Apple's code search site as well
- ::-webkit- prefixed pseudo-elements have special parsing quirks for 
compatibility so they do not disable declarations if unrecognized
(see selectors specification: https://drafts.csswg.org/selectors-4/#compat)

* LayoutTests/fast/css/pseudo-class-internal-expected.txt: Removed.
* LayoutTests/fast/css/pseudo-class-internal.html: Removed.
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/invalid-pseudos.html:
 Added.

Add tests and remove obsolete one.

* Source/WebCore/css/CSSPseudoSelectors.json: Rename pseudo.

* Source/WebCore/css/html.css: Rename usages.
(input::-internal-loading-auto-fill-button):
(input::-webkit-loading-auto-fill-button): Deleted.

* Source/WebCore/css/process-css-pseudo-selectors.py:

Fix a bug in code generation where it was generating this invalid code:

if (!context.mode == UASheetMode && ...)

Wrap the condition inside parentheses to prevent that.

* Source/WebCore/html/TextFieldInputType.cpp: Use new UserAgentPartId
(WebCore::autoFillButtonTypeToAutoFillButtonPseudoClassName):
(WebCore::isAutoFillButtonTypeChanged):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 3cd087: Clean-up process-css-pseudo-selectors.py

2024-01-05 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3cd087d87fd5299b8c7f544ff2d377decfbc408e
  
https://github.com/WebKit/WebKit/commit/3cd087d87fd5299b8c7f544ff2d377decfbc408e
  Author: Tim Nguyen 
  Date:   2024-01-05 (Fri, 05 Jan 2024)

  Changed paths:
M Source/WebCore/CMakeLists.txt
M Source/WebCore/DerivedSources.make
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/parser/MutableCSSSelector.cpp
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Clean-up process-css-pseudo-selectors.py
https://bugs.webkit.org/show_bug.cgi?id=267152
rdar://120560220

Reviewed by Ryosuke Niwa.

- Fix copyright header indentation and remove new line before it.
- Use f-strings instead of ''.format() for readability
- Use dictionary.get() whenever possible when filling in default values for 
missing keys
- Make argument parsing more similar to process-css-properties.py and 
process-css-values.py
- Rename "condition" to "conditional" to match other files
- Rename "ShadowPseudoElement" to "UserAgentPart"

* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/parser/MutableCSSSelector.cpp:
(WebCore::MutableCSSSelector::parsePseudoElementSelector):
* Source/WebCore/css/process-css-pseudo-selectors.py:
(InputValidator.check_field_documentation):
(InputValidator.validate_fields):
(write_copyright_header):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 7f449a: Rename *ShadowPseudoElement* to *UserAgentPart*

2024-01-05 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7f449ab1aa4febc931204ba1fae1be83d0902013
  
https://github.com/WebKit/WebKit/commit/7f449ab1aa4febc931204ba1fae1be83d0902013
  Author: Tim Nguyen 
  Date:   2024-01-05 (Fri, 05 Jan 2024)

  Changed paths:
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/ElementRuleCollector.h
M Source/WebCore/style/RuleSet.cpp
M Source/WebCore/style/RuleSet.h
M Source/WebCore/style/StyleInvalidationFunctions.h
M Source/WebCore/style/StyleInvalidator.cpp
M Source/WebCore/style/StyleInvalidator.h

  Log Message:
  ---
  Rename *ShadowPseudoElement* to *UserAgentPart*
https://bugs.webkit.org/show_bug.cgi?id=267157
rdar://120563131

Reviewed by Ryosuke Niwa.

Unify terminology across the codebase by renaming instances of 
ShadowPseudoElement to UserAgentPart.

* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::collectMatchingRules):
(WebCore::Style::ElementRuleCollector::matchUserAgentPartRules):
(WebCore::Style::ElementRuleCollector::matchPartPseudoElementRules):
(WebCore::Style::ElementRuleCollector::collectMatchingUserAgentPartRules):
(WebCore::Style::ElementRuleCollector::matchShadowPseudoElementRules): Deleted.
(WebCore::Style::ElementRuleCollector::collectMatchingShadowPseudoElementRules):
 Deleted.
* Source/WebCore/style/ElementRuleCollector.h:
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::addRule):
(WebCore::Style::RuleSet::traverseRuleDatas):
(WebCore::Style::RuleSet::shrinkToFit):
* Source/WebCore/style/RuleSet.h:
(WebCore::Style::RuleSet::userAgentPartRules const):
(WebCore::Style::RuleSet::hasUserAgentPartRules const):
(WebCore::Style::RuleSet::shadowPseudoElementRules const): Deleted.
(WebCore::Style::RuleSet::hasShadowPseudoElementRules const): Deleted.
* Source/WebCore/style/StyleInvalidationFunctions.h:
(WebCore::Style::traverseRuleFeatures):
* Source/WebCore/style/StyleInvalidator.cpp:
(WebCore::Style::Invalidator::collectRuleInformation):
(WebCore::Style::Invalidator::invalidateUserAgentParts):
(WebCore::Style::Invalidator::invalidateInShadowTreeIfNeeded):
(WebCore::Style::Invalidator::invalidateShadowPseudoElements): Deleted.
* Source/WebCore/style/StyleInvalidator.h:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] a97369: Rename parserSelector variables to mutableSelector

2024-01-05 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a97369ff7d163dceac929140a7530d86975f271f
  
https://github.com/WebKit/WebKit/commit/a97369ff7d163dceac929140a7530d86975f271f
  Author: Tim Nguyen 
  Date:   2024-01-05 (Fri, 05 Jan 2024)

  Changed paths:
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSSelectorParser.cpp

  Log Message:
  ---
  Rename parserSelector variables to mutableSelector
https://bugs.webkit.org/show_bug.cgi?id=267151
rdar://120558236

Reviewed by Aditya Keerthi.

This should have been done as part of the CSSParserSelector -> 
MutableCSSSelector rename in 272620@main.

* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeScopeRule):
(WebCore::CSSParserImpl::consumeStyleRule):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::supportsComplexSelector):
(WebCore::CSSSelectorParser::resolveNestingParent):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 02d283: Rename some pseudo-class/element parsing functions

2024-01-05 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 02d283970517a9c6d182e5748f0b60cfcccddc7c
  
https://github.com/WebKit/WebKit/commit/02d283970517a9c6d182e5748f0b60cfcccddc7c
  Author: Tim Nguyen 
  Date:   2024-01-05 (Fri, 05 Jan 2024)

  Changed paths:
M Source/WebCore/animation/WebAnimationUtilities.cpp
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/SelectorPseudoTypeMap.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/parser/MutableCSSSelector.cpp
M Source/WebCore/css/process-css-pseudo-selectors.py
M Source/WebCore/page/LocalDOMWindow.cpp

  Log Message:
  ---
  Rename some pseudo-class/element parsing functions
https://bugs.webkit.org/show_bug.cgi?id=267084
rdar://120517489

Reviewed by Antti Koivisto.

- Add "Name" suffix to functions that parse names without the colons.
- Change the map lookup functions to use the `find` prefix instead of `parse`, 
to prevent folks from mistakingly using them to parse strings
- Rename `parseStandalonePseudoElement` to `parsePseudoElement` since it parses 
a pseudo-element with the colons.

The end result is:
parsePseudoElement -> parsePseudoElementName
parsePseudoElementString -> findPseudoElementName
parseStandalonePseudoElement -> parsePseudoElement
parsePseudoClassAndCompatibilityElementString -> 
findPseudoClassAndCompatibilityElementName

* Source/WebCore/animation/WebAnimationUtilities.cpp:
(WebCore::pseudoIdFromString):
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::parsePseudoElementName):
(WebCore::CSSSelector::parsePseudoElement):
(WebCore::CSSSelector::parseStandalonePseudoElement): Deleted.
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/SelectorPseudoTypeMap.h:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::containsUnknownWebKitPseudoElements):
* Source/WebCore/css/parser/MutableCSSSelector.cpp:
(WebCore::MutableCSSSelector::parsePseudoElementSelector):
(WebCore::MutableCSSSelector::parsePseudoClassSelector):
* Source/WebCore/css/process-css-pseudo-selectors.py:
* Source/WebCore/page/LocalDOMWindow.cpp:
(WebCore::LocalDOMWindow::getComputedStyle const):
(WebCore::LocalDOMWindow::getMatchedCSSRules const):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] c8d18f: Validate that `-apple-` prefixed pseudos are gated...

2024-01-04 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c8d18f19f59873d7962e6de8008dc4bd1d12dbea
  
https://github.com/WebKit/WebKit/commit/c8d18f19f59873d7962e6de8008dc4bd1d12dbea
  Author: Tim Nguyen 
  Date:   2024-01-04 (Thu, 04 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Validate that `-apple-` prefixed pseudos are gated behind a setting
https://bugs.webkit.org/show_bug.cgi?id=267116
rdar://120505828

Reviewed by Darin Adler.

Prevent accidental exposure of `-apple-` prefixed pseudos to web content by 
enforcing a "settings-flag" to be specified.

272538@main is an example of bug which this is meant to prevent.

* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/process-css-pseudo-selectors.py:
(InputValidator.validate_fields):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e9cacb: [content-visibility] Web Inspector: Account for sk...

2024-01-04 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e9cacb7830681cb73df71eed63c34f1f2dbf83ea
  
https://github.com/WebKit/WebKit/commit/e9cacb7830681cb73df71eed63c34f1f2dbf83ea
  Author: Tim Nguyen 
  Date:   2024-01-04 (Thu, 04 Jan 2024)

  Changed paths:
M Source/WebCore/inspector/InspectorOverlay.cpp

  Log Message:
  ---
  [content-visibility] Web Inspector: Account for skipped content in 
InspectorOverlay
https://bugs.webkit.org/show_bug.cgi?id=267099
rdar://120495150

Reviewed by Darin Adler.

Skipped content behaves similarly to display: none, visual highlighters are not 
super helpful in this case.

Skip the work of building highlighter for skipped content to save some laying 
out.

* Source/WebCore/inspector/InspectorOverlay.cpp:
(WebCore::buildNodeHighlight):
(WebCore::drawShapeHighlight):
(WebCore::InspectorOverlay::drawElementTitle):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 204b4f: Add documentation and validation for CSSPseudoSele...

2024-01-04 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 204b4f9d9d47a0120e702686d8f4777c6e66aef2
  
https://github.com/WebKit/WebKit/commit/204b4f9d9d47a0120e702686d8f4777c6e66aef2
  Author: Tim Nguyen 
  Date:   2024-01-04 (Thu, 04 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Add documentation and validation for CSSPseudoSelectors.json
https://bugs.webkit.org/show_bug.cgi?id=267031
rdar://120407844

Reviewed by Simon Fraser.

Add validation for:
- field types
- unknown fields
- "argument" field values
- ensuring no-one uses "argument" along with "user-agent-part"

Also add some documentation inline in CSSPseudoSelectors.json.
Documentation for each field is also enforced through the script.

* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/process-css-pseudo-selectors.py:
(InputValidator):
(InputValidator.__init__):
(InputValidator.validate_fields):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 7dd32f: Use MutableCSSSelectorList alias in more places

2024-01-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7dd32f2fb2b1df90c6c16e91d488b41b0b9dbc21
  
https://github.com/WebKit/WebKit/commit/7dd32f2fb2b1df90c6c16e91d488b41b0b9dbc21
  Author: Tim Nguyen 
  Date:   2024-01-03 (Wed, 03 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSSelectorList.cpp
M Source/WebCore/css/CSSSelectorList.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSSelectorParser.h
M Source/WebCore/css/parser/MutableCSSSelector.cpp
M Source/WebCore/css/parser/MutableCSSSelector.h

  Log Message:
  ---
  Use MutableCSSSelectorList alias in more places
https://bugs.webkit.org/show_bug.cgi?id=267057
rdar://120431877

Reviewed by Simon Fraser.

Move it out of CSSSelectorParser and start using it in more places.

* Source/WebCore/css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::CSSSelectorList):
* Source/WebCore/css/CSSSelectorList.h:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::parsePageSelector):
(WebCore::CSSParserImpl::createNestingParentRule):
* Source/WebCore/css/parser/CSSSelectorParser.h:
* Source/WebCore/css/parser/MutableCSSSelector.cpp:
(WebCore::MutableCSSSelector::adoptSelectorVector):
* Source/WebCore/css/parser/MutableCSSSelector.h:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4a02d7: Make most CSSSelector setters only available to Mu...

2024-01-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4a02d79b3e9c11ebe226d266f3527c1a3929d0ed
  
https://github.com/WebKit/WebKit/commit/4a02d79b3e9c11ebe226d266f3527c1a3929d0ed
  Author: Tim Nguyen 
  Date:   2024-01-03 (Wed, 03 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/MutableCSSSelector.h

  Log Message:
  ---
  Make most CSSSelector setters only available to MutableCSSSelector
https://bugs.webkit.org/show_bug.cgi?id=267060
rdar://120434084

Reviewed by Simon Fraser.

CSSSelector isn't meant to be mutated in the majority of cases, restrict most 
setters to MutableCSSSelector.

* Source/WebCore/css/CSSSelector.h:
(WebCore::CSSSelector::hasDescendantRelation const):
(WebCore::CSSSelector::relation const):
(WebCore::CSSSelector::match const):
(WebCore::CSSSelector::isLastInSelectorList const):
(WebCore::CSSSelector::isFirstInTagHistory const):
(WebCore::CSSSelector::setLastInSelectorList):
(WebCore::CSSSelector::setNotFirstInTagHistory):
(WebCore::CSSSelector::setNotLastInTagHistory):
(WebCore::CSSSelector::isForPage const):
(WebCore::CSSSelector::setForPage):
(WebCore::CSSSelector::setImplicit):
(WebCore::CSSSelector::tagHistory):
(WebCore::CSSSelector::setNotLastInSelectorList): Deleted.
(WebCore::CSSSelector::setLastInTagHistory): Deleted.
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::appendImplicitSelectorPseudoClassScopeIfNeeded):
(WebCore::CSSParserImpl::createNestingParentRule):
* Source/WebCore/css/parser/MutableCSSSelector.h:
(WebCore::MutableCSSSelector::setImplicit):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] ac784c: Rename CSSParserSelector to MutableCSSSelector

2024-01-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ac784c090ce396d3b17092ca7ad4ac8968c48f8f
  
https://github.com/WebKit/WebKit/commit/ac784c090ce396d3b17092ca7ad4ac8968c48f8f
  Author: Tim Nguyen 
  Date:   2024-01-03 (Wed, 03 Jan 2024)

  Changed paths:
M Source/WebCore/Headers.cmake
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelectorList.cpp
M Source/WebCore/css/CSSSelectorList.h
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
R Source/WebCore/css/parser/CSSParserSelector.cpp
R Source/WebCore/css/parser/CSSParserSelector.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/parser/CSSSelectorParser.h
A Source/WebCore/css/parser/MutableCSSSelector.cpp
A Source/WebCore/css/parser/MutableCSSSelector.h
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Rename CSSParserSelector to MutableCSSSelector
https://bugs.webkit.org/show_bug.cgi?id=267037
rdar://120412070

Reviewed by Antti Koivisto.

The current name is confusing, especially with the presence of 
CSSSelectorParser. Rename to MutableCSSSelector to actually represent its 
purpose.

* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/CSSSelector.cpp:
* Source/WebCore/css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::CSSSelectorList):
* Source/WebCore/css/CSSSelectorList.h:
* Source/WebCore/css/StyleRule.cpp:
* Source/WebCore/css/parser/MutableCSSSelector.cpp: Renamed from 
Source/WebCore/css/parser/CSSParserSelector.cpp.
(WebCore::MutableCSSSelector::parsePagePseudoSelector):
(WebCore::MutableCSSSelector::parsePseudoElementSelector):
(WebCore::MutableCSSSelector::parsePseudoClassSelector):
(WebCore::MutableCSSSelector::MutableCSSSelector):
(WebCore::MutableCSSSelector::~MutableCSSSelector):
(WebCore::MutableCSSSelector::adoptSelectorVector):
(WebCore::MutableCSSSelector::setArgumentList):
(WebCore::MutableCSSSelector::setSelectorList):
(WebCore::MutableCSSSelector::leftmostSimpleSelector const):
(WebCore::MutableCSSSelector::leftmostSimpleSelector):
(WebCore::MutableCSSSelector::hasExplicitNestingParent const):
(WebCore::MutableCSSSelector::hasExplicitPseudoClassScope const):
(WebCore::selectorListMatchesPseudoElement):
(WebCore::MutableCSSSelector::matchesPseudoElement const):
(WebCore::MutableCSSSelector::insertTagHistory):
(WebCore::MutableCSSSelector::appendTagHistory):
(WebCore::MutableCSSSelector::appendTagHistoryAsRelative):
(WebCore::MutableCSSSelector::prependTagSelector):
(WebCore::MutableCSSSelector::releaseTagHistory):
(WebCore::MutableCSSSelector::isHostPseudoSelector const):
(WebCore::MutableCSSSelector::startsWithExplicitCombinator const):
* Source/WebCore/css/parser/MutableCSSSelector.h: Renamed from 
Source/WebCore/css/parser/CSSParserSelector.h.
(WebCore::MutableCSSSelector::releaseSelector):
(WebCore::MutableCSSSelector::selector const):
(WebCore::MutableCSSSelector::selector):
(WebCore::MutableCSSSelector::setValue):
(WebCore::MutableCSSSelector::setAttribute):
(WebCore::MutableCSSSelector::setArgument):
(WebCore::MutableCSSSelector::setNth):
(WebCore::MutableCSSSelector::setMatch):
(WebCore::MutableCSSSelector::setRelation):
(WebCore::MutableCSSSelector::setForPage):
(WebCore::MutableCSSSelector::match const):
(WebCore::MutableCSSSelector::pseudoElement const):
(WebCore::MutableCSSSelector::selectorList const):
(WebCore::MutableCSSSelector::setPseudoElement):
(WebCore::MutableCSSSelector::setPseudoClass):
(WebCore::MutableCSSSelector::pseudoClass const):
(WebCore::MutableCSSSelector::tagHistory const):
(WebCore::MutableCSSSelector::setTagHistory):
(WebCore::MutableCSSSelector::clearTagHistory):
(WebCore::MutableCSSSelector::needsImplicitShadowCombinatorForMatching const):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::appendImplicitSelectorPseudoClassScopeIfNeeded):
(WebCore::appendImplicitSelectorNestingParentIfNeeded):
(WebCore::CSSParserImpl::appendImplicitSelectorIfNeeded):
(WebCore::CSSParserImpl::parsePageSelector):
(WebCore::CSSParserImpl::createNestingParentRule):
(WebCore::CSSParserImpl::consumeScopeRule):
(WebCore::CSSParserImpl::consumeStyleRule):
* Source/WebCore/css/parser/CSSParserImpl.h:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::parseMutableCSSSelectorList):
(WebCore::parseCSSSelectorList):
(WebCore::CSSSelectorParser::consumeSelectorList):
(WebCore::CSSSelectorParser::consumeComplexSelectorList):
(WebCore::CSSSelectorParser::consumeRelativeSelectorList):
(WebCore::CSSSelectorParser::consumeNestedSelectorList):
(WebCore::CSSSelectorParser::consumeForgivingSelectorList):
(WebCore::CSSSelectorParser::consumeComplexForgivingSelectorList):
(WebCore::CSSSelectorParser::consumeNestedComplexForgivingSelectorList):
(WebCore

[webkit-changes] [WebKit/WebKit] aec9d2: Clean-ups to CSSParserSelector

2024-01-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: aec9d2a42db65e9db3152d3e3dfdf00d5ee1750f
  
https://github.com/WebKit/WebKit/commit/aec9d2a42db65e9db3152d3e3dfdf00d5ee1750f
  Author: Tim Nguyen 
  Date:   2024-01-03 (Wed, 03 Jan 2024)

  Changed paths:
M Source/WebCore/css/parser/CSSParserSelector.cpp
M Source/WebCore/css/parser/CSSParserSelector.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp

  Log Message:
  ---
  Clean-ups to CSSParserSelector
https://bugs.webkit.org/show_bug.cgi?id=267034
rdar://120410898

Reviewed by Darin Adler.

- Move settings check to `CSSParserSelector::parsePseudoClassSelector` for 
consistency with `parsePseudoElementSelector`
- Remove unused `CSSParserSelector::isPseudoElementCueFunction`

* Source/WebCore/css/parser/CSSParserSelector.cpp:
(WebCore::CSSParserSelector::parsePseudoClassSelector):
* Source/WebCore/css/parser/CSSParserSelector.h:
(WebCore::CSSParserSelector::isPseudoElementCueFunction const): Deleted.
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumePseudo):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] cfc789: Replace const char* with ASCIILiteral in CSSSelector

2024-01-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: cfc789a751bf89803540c0cec6424aa99c379e81
  
https://github.com/WebKit/WebKit/commit/cfc789a751bf89803540c0cec6424aa99c379e81
  Author: Tim Nguyen 
  Date:   2024-01-03 (Wed, 03 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSSelector.cpp

  Log Message:
  ---
  Replace const char* with ASCIILiteral in CSSSelector
https://bugs.webkit.org/show_bug.cgi?id=267032
rdar://120408392

Reviewed by Ryosuke Niwa.

For consistency with the rest of the file and to match recommended practices.

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::appendLangArgumentList):
(WebCore::outputNthChildAnPlusB):
(WebCore::CSSSelector::selectorText const):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e0c29e: Generate code to check pseudo-class/element argument

2024-01-03 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e0c29e7e482a4a452c92c394677358659c71eace
  
https://github.com/WebKit/WebKit/commit/e0c29e7e482a4a452c92c394677358659c71eace
  Author: Tim Nguyen 
  Date:   2024-01-03 (Wed, 03 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Generate code to check pseudo-class/element argument
https://bugs.webkit.org/show_bug.cgi?id=267029
rdar://120404097

Reviewed by Ryosuke Niwa.

Add a field in `CSSPseudoSelectors.json` that represents whether a pseudo takes 
a required or optional argument, and use it to:
- generate `isOnlyPseudoClassFunction` as 
`CSSSelector::pseudoClassRequiresArgument`
- generate `isOnlyPseudoElementFunction` as 
`CSSSelector::pseudoElementRequiresArgument`
- add ASSERTs when serialization code hasn't been provided for pseudos with an 
optional or required argument

* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText const):
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeAttribute):
(WebCore::CSSSelectorParser::consumePseudo):
(WebCore::isOnlyPseudoClassFunction): Deleted.
(WebCore::isOnlyPseudoElementFunction): Deleted.
* Source/WebCore/css/process-css-pseudo-selectors.py:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 3636ca: Rename `ShadowPseudoIds` to `UserAgentPartIds`

2024-01-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3636ca91f8a119ffae44cef492efd8fbaefe703a
  
https://github.com/WebKit/WebKit/commit/3636ca91f8a119ffae44cef492efd8fbaefe703a
  Author: Tim Nguyen 
  Date:   2024-01-02 (Tue, 02 Jan 2024)

  Changed paths:
M LayoutTests/fast/dom/HTMLMeterElement/meter-clone-expected.txt
M LayoutTests/fast/dom/HTMLMeterElement/meter-clone.html
M LayoutTests/fast/dom/HTMLProgressElement/progress-clone-expected.txt
M LayoutTests/fast/dom/HTMLProgressElement/progress-clone.html
M LayoutTests/fast/dom/nodesFromRect/resources/nodesFromRect.js
M LayoutTests/fast/forms/resources/common.js
M LayoutTests/fast/forms/validation-message-clone-expected.txt
M LayoutTests/fast/forms/validation-message-clone.html
M LayoutTests/fast/html/clone-range-expected.txt
M LayoutTests/fast/html/clone-range.html
M LayoutTests/fast/html/details-clone.html
M 
LayoutTests/platform/ios/ios/plugin/youtube-flash-plugin-iframe-expected.txt
M LayoutTests/platform/ios/ios/plugin/youtube-flash-plugin-iframe.html
M LayoutTests/plugins/quicktime-plugin-replacement-expected.txt
M LayoutTests/plugins/quicktime-plugin-replacement.html
M LayoutTests/resources/dump-as-markup.js
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/dom/Element.cpp
M Source/WebCore/dom/Element.h
M Source/WebCore/dom/mac/ImageControlsMac.cpp
M Source/WebCore/html/BaseDateAndTimeInputType.cpp
M Source/WebCore/html/ColorInputType.cpp
M Source/WebCore/html/FileInputType.cpp
M Source/WebCore/html/HTMLMeterElement.cpp
M Source/WebCore/html/RangeInputType.cpp
M Source/WebCore/html/SearchInputType.cpp
M Source/WebCore/html/TextFieldInputType.cpp
M Source/WebCore/html/ValidationMessage.cpp
M Source/WebCore/html/shadow/DateTimeEditElement.cpp
M Source/WebCore/html/shadow/DateTimeFieldElements.cpp
M Source/WebCore/html/shadow/DetailsMarkerControl.cpp
M Source/WebCore/html/shadow/MediaControlTextTrackContainerElement.cpp
M Source/WebCore/html/shadow/ProgressShadowElement.cpp
R Source/WebCore/html/shadow/ShadowPseudoIds.cpp
R Source/WebCore/html/shadow/ShadowPseudoIds.h
M Source/WebCore/html/shadow/SliderThumbElement.cpp
M Source/WebCore/html/shadow/SliderThumbElement.h
M Source/WebCore/html/shadow/SpinButtonElement.cpp
M Source/WebCore/html/shadow/SwitchThumbElement.cpp
M Source/WebCore/html/shadow/SwitchTrackElement.cpp
M Source/WebCore/html/shadow/TextControlInnerElements.cpp
A Source/WebCore/html/shadow/UserAgentPartIds.cpp
A Source/WebCore/html/shadow/UserAgentPartIds.h
M Source/WebCore/html/shadow/YouTubeEmbedShadowElement.cpp
M Source/WebCore/html/track/TextTrackCue.cpp
M Source/WebCore/html/track/VTTCue.cpp
M Source/WebCore/html/track/VTTRegion.cpp
M Source/WebCore/page/CaptionUserPreferencesMediaAF.cpp
M Source/WebCore/rendering/RenderTheme.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/RuleData.cpp
M Source/WebCore/style/StyleAdjuster.cpp
M Source/WebCore/style/StyleInvalidator.cpp
M Source/WebCore/style/StyleResolver.cpp
M Source/WebCore/style/StyleSharingResolver.cpp
M Source/WebCore/testing/Internals.cpp
M Source/WebCore/testing/Internals.h
M Source/WebCore/testing/Internals.idl

  Log Message:
  ---
  Rename `ShadowPseudoIds` to `UserAgentPartIds`
https://bugs.webkit.org/show_bug.cgi?id=267019
rdar://120397425

Reviewed by Ryosuke Niwa.

Make it consistent with the new naming introduced in bug 267016.

* LayoutTests/fast/dom/HTMLMeterElement/meter-clone-expected.txt:
* LayoutTests/fast/dom/HTMLMeterElement/meter-clone.html:
* LayoutTests/fast/dom/HTMLProgressElement/progress-clone-expected.txt:
* LayoutTests/fast/dom/HTMLProgressElement/progress-clone.html:
* LayoutTests/fast/dom/nodesFromRect/resources/nodesFromRect.js:
(checkShadowContent):
* LayoutTests/fast/forms/resources/common.js:
(getElementByPseudoId):
* LayoutTests/fast/forms/validation-message-clone-expected.txt:
* LayoutTests/fast/forms/validation-message-clone.html:
* LayoutTests/fast/html/clone-range-expected.txt:
* LayoutTests/fast/html/clone-range.html:
* LayoutTests/fast/html/details-clone.html:
* LayoutTests/platform/ios/ios/plugin/youtube-flash-plugin-iframe-expected.txt:
* LayoutTests/platform/ios/ios/plugin/youtube-flash-plugin-iframe.html:
* LayoutTests/plugins/quicktime-plugin-replacement-expected.txt:
* LayoutTests/plugins/quicktime-plugin-replacement.html:
* LayoutTests/resources/dump-as-markup.js:
(Markup._get):
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchRecursively const):
* Source/WebCore/dom/Element.cpp:
(WebCore::Element::userAgentPartId const):
(WebCore

[webkit-changes] [WebKit/WebKit] 94f262: Rename `WebKitCustom` and `WebKitCustomLegacyPrefi...

2024-01-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 94f262ba04598cefdff4859e5864c971273348ec
  
https://github.com/WebKit/WebKit/commit/94f262ba04598cefdff4859e5864c971273348ec
  Author: Tim Nguyen 
  Date:   2024-01-02 (Tue, 02 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/parser/CSSParserSelector.cpp
M Source/WebCore/css/parser/CSSParserSelector.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/process-css-pseudo-selectors.py
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/style/RuleSet.cpp

  Log Message:
  ---
  Rename `WebKitCustom` and `WebKitCustomLegacyPrefixed` in `PseudoElement`
https://bugs.webkit.org/show_bug.cgi?id=267016
rdar://120395761

Reviewed by Ryosuke Niwa.

They don't necessarily represent `-webkit-` prefixed things. They just 
represent elements in UA shadow trees (like ::placeholder, 
::file-selector-button, ::thumb or ::track),
which is effectively similar to the functionality ::part() provides in non-UA 
shadow trees (represented by `PseudoElement::Part`).

- Rename `PseudoElement::WebKitCustom` to `PseudoElement::UserAgentPart`
- Rename `PseudoElement::WebKitCustomLegacyPrefixed` to 
`PseudoElement::UserAgentPartLegacyAlias`

webkit.org/b/266947 will take care of mapping unknown `-webkit-` 
pseudo-elements to a different type (`PseudoElement::WebKitUnknown`).

* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::pseudoId):
(WebCore::CSSSelector::parsePseudoElement):
* Source/WebCore/css/CSSSelector.h:
(WebCore::CSSSelector::isUserAgentPartPseudoElement const):
(WebCore::CSSSelector::isWebKitCustomPseudoElement const): Deleted.
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchRecursively const):
* Source/WebCore/css/parser/CSSParserSelector.cpp:
(WebCore::CSSParserSelector::parsePseudoElementSelector):
* Source/WebCore/css/parser/CSSParserSelector.h:
(WebCore::CSSParserSelector::needsImplicitShadowCombinatorForMatching const):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::extractCompoundFlags):
(WebCore::isPseudoClassValidAfterPseudoElement):
(WebCore::CSSSelectorParser::consumePseudo):
(WebCore::CSSSelectorParser::containsUnknownWebKitPseudoElements):
* Source/WebCore/css/process-css-pseudo-selectors.py:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::constructFragmentsInternal):
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::addRule):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e40f5d: Minor clean-ups to CSSSelector

2024-01-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e40f5ded340f3b347308ff057438c596cd8f4752
  
https://github.com/WebKit/WebKit/commit/e40f5ded340f3b347308ff057438c596cd8f4752
  Author: Tim Nguyen 
  Date:   2024-01-02 (Tue, 02 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Minor clean-ups to CSSSelector
https://bugs.webkit.org/show_bug.cgi?id=267009
rdar://120391046

Reviewed by Simon Fraser.

- Fix up indentation in CSSSelector.h
- Return `const ASCIILiteral` in generated code
- Remove unnecessary `CSSSelector::` namespace where possible
- Remove trailing whitespace

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText const):
(WebCore::CSSSelector::replaceNestingParentByPseudoClassScope):
* Source/WebCore/css/CSSSelector.h:
(WebCore::CSSSelector::selectorText):
(WebCore::CSSSelector::tagHistory const):
(WebCore::CSSSelector::argument const):
(WebCore::CSSSelector::argumentList const):
(WebCore::CSSSelector::selectorList const):
(WebCore::CSSSelector::selectorList):
(WebCore::CSSSelector::hasDescendantRelation const):
(WebCore::CSSSelector::hasDescendantOrChildRelation const):
(WebCore::CSSSelector::relation const):
(WebCore::CSSSelector::match const):
(WebCore::CSSSelector::isLastInSelectorList const):
(WebCore::CSSSelector::setLastInSelectorList):
(WebCore::CSSSelector::setNotLastInSelectorList):
(WebCore::CSSSelector::isFirstInTagHistory const):
(WebCore::CSSSelector::setNotFirstInTagHistory):
(WebCore::CSSSelector::isLastInTagHistory const):
(WebCore::CSSSelector::setNotLastInTagHistory):
(WebCore::CSSSelector::setLastInTagHistory):
(WebCore::CSSSelector::isForPage const):
(WebCore::CSSSelector::setForPage):
(WebCore::CSSSelector::setImplicit):
(WebCore::CSSSelector::isImplicit const):
(WebCore::CSSSelector::tagHistory):
(WebCore::CSSSelector::setValue):
(WebCore::CSSSelector::serializingValue const):
* Source/WebCore/css/process-css-pseudo-selectors.py:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9bfed8: Generate pseudo-class serialization and pseudo-ele...

2024-01-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9bfed8cf528434bbb0eb6ad5e5fe716cfbcbb533
  
https://github.com/WebKit/WebKit/commit/9bfed8cf528434bbb0eb6ad5e5fe716cfbcbb533
  Author: Tim Nguyen 
  Date:   2024-01-02 (Tue, 02 Jan 2024)

  Changed paths:
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/parser/CSSParserSelector.cpp
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Generate pseudo-class serialization and pseudo-element aliasing
https://bugs.webkit.org/show_bug.cgi?id=266978
rdar://120359881

Reviewed by Darin Adler.

- Pseudo-class serialization is mechanical, generate most of it. We don't 
re-use the same approach as pseudo-elements for serialization
since that initializes CSSSelector rare data, and also because each possible 
value has a 1:1 mapping to the PseudoClass enum, unlike for PseudoElement.
- Generate code for aliasing at parse-time for 
`PseudoElement::WebKitCustomLegacyPrefixed`

This commit gets us closer to having CSSPseudoSelectors.json becoming a single 
source of truth.

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText const):
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/parser/CSSParserSelector.cpp:
(WebCore::CSSParserSelector::parsePseudoElementSelector):
* Source/WebCore/css/process-css-pseudo-selectors.py:

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 5ddbcc: Generate pseudo-class/element enum classes and ena...

2024-01-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5ddbccf5974982d2fc1902c78dadffb0c98b4afd
  
https://github.com/WebKit/WebKit/commit/5ddbccf5974982d2fc1902c78dadffb0c98b4afd
  Author: Tim Nguyen 
  Date:   2024-01-02 (Tue, 02 Jan 2024)

  Changed paths:
M Source/WebCore/CMakeLists.txt
M Source/WebCore/DerivedSources-output.xcfilelist
M Source/WebCore/DerivedSources.make
M Source/WebCore/Headers.cmake
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/process-css-pseudo-selectors.py

  Log Message:
  ---
  Generate pseudo-class/element enum classes and enablement checks
https://bugs.webkit.org/show_bug.cgi?id=266952
rdar://120354695

Reviewed by Antti Koivisto.

This commit:
- Generates the PseudoClass/PseudoElement enum classes in CSSSelectorEnums.h
- Adds settings-flag data into CSSPseudoSelectors.json and uses it to generate 
methods in CSSSelectorInlines.h
- Starts making use of those files

* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources-output.xcfilelist:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::parsePseudoElement):
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumePseudo):
* Source/WebCore/css/process-css-pseudo-selectors.py:
(write_copyright_header):
(key_is_true): Deleted.
(expand_ifdef_condition): Deleted.
(format_name_for_enum_class): Deleted.
(format_name_for_enum_class.format): Deleted.
(GPerfMappingGenerator): Deleted.
(GPerfMappingGenerator.__init__): Deleted.
(GPerfMappingGenerator.is_pseudo_selector_enabled): Deleted.
(GPerfMappingGenerator.generate_pseudo_class_and_compatibility_element_map): 
Deleted.
(GPerfMappingGenerator.generate_pseudo_class_and_compatibility_element_map.in): 
Deleted.
(GPerfMappingGenerator.generate_pseudo_element_map): Deleted.
(GPerfOutputGenerator): Deleted.
(GPerfOutputGenerator.__init__): Deleted.
(GPerfOutputGenerator.write_copyright_header): Deleted.

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b06889: Remove `PseudoElement::WebKitCustomLegacyPrefixed`...

2024-01-02 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b06889b80ecee167d9ac1a387d6f8ee6fd88ef27
  
https://github.com/WebKit/WebKit/commit/b06889b80ecee167d9ac1a387d6f8ee6fd88ef27
  Author: Tim Nguyen 
  Date:   2024-01-02 (Tue, 02 Jan 2024)

  Changed paths:
M LayoutTests/fast/css/css-selector-text-expected.txt
M LayoutTests/fast/css/css-selector-text.html
M LayoutTests/fast/css/css-set-selector-text-expected.txt
M LayoutTests/fast/css/css-set-selector-text.html
M LayoutTests/fast/selectors/selector-aliases-expected.txt
M LayoutTests/fast/selectors/selector-aliases.html
M Source/WebCore/css/CSSSelector.cpp

  Log Message:
  ---
  Remove `PseudoElement::WebKitCustomLegacyPrefixed` custom serialization
https://bugs.webkit.org/show_bug.cgi?id=266969
rdar://120360545

Reviewed by Antti Koivisto.

Legacy selector aliases are done at parse-time per-spec, that means 
serialization does not need to roundtrip.

Update tests to reflect this.

https://drafts.csswg.org/selectors/#legacy-aliasing

* LayoutTests/fast/css/css-selector-text-expected.txt:
* LayoutTests/fast/css/css-selector-text.html:
* LayoutTests/fast/css/css-set-selector-text-expected.txt:
* LayoutTests/fast/css/css-set-selector-text.html:
* LayoutTests/fast/selectors/selector-aliases-expected.txt:
* LayoutTests/fast/selectors/selector-aliases.html:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText const):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 741026: Alias `:-webkit-any-link` and `:matches()` pseudo-...

2024-01-01 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 74102606ff50b471872a01b4670a253248855b27
  
https://github.com/WebKit/WebKit/commit/74102606ff50b471872a01b4670a253248855b27
  Author: Tim Nguyen 
  Date:   2024-01-01 (Mon, 01 Jan 2024)

  Changed paths:
M LayoutTests/fast/css/css-selector-text-expected.txt
M LayoutTests/fast/css/css-selector-text.html
M LayoutTests/fast/css/css-set-selector-text-expected.txt
M LayoutTests/fast/css/css-set-selector-text.html
M 
LayoutTests/fast/css/parsing-css-attribute-case-insensitive-value-1-expected.txt
M LayoutTests/fast/css/parsing-css-attribute-case-insensitive-value-1.html
M LayoutTests/fast/css/parsing-css-matches-1-expected.txt
M LayoutTests/fast/css/parsing-css-matches-1.html
M LayoutTests/fast/css/parsing-css-matches-2-expected.txt
M LayoutTests/fast/css/parsing-css-matches-2.html
M LayoutTests/fast/css/parsing-css-matches-3-expected.txt
M LayoutTests/fast/css/parsing-css-matches-3.html
M LayoutTests/fast/css/parsing-css-matches-4-expected.txt
M LayoutTests/fast/css/parsing-css-matches-4.html
M LayoutTests/fast/css/parsing-css-not-1-expected.txt
M LayoutTests/fast/css/parsing-css-not-1.html
M LayoutTests/fast/css/parsing-css-not-2-expected.txt
M LayoutTests/fast/css/parsing-css-not-2.html
M LayoutTests/fast/selectors/selector-aliases-expected.txt
M LayoutTests/fast/selectors/selector-aliases.html
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorChecker.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/dom/Element.cpp
M Source/WebCore/style/RuleSet.cpp

  Log Message:
  ---
  Alias `:-webkit-any-link` and `:matches()` pseudo-classes
https://bugs.webkit.org/show_bug.cgi?id=266961
rdar://120337922

Reviewed by Darin Adler.

- Alias `:-webkit-any-link` to `:any-link`
- Alias `:matches()` to `:is()`

* LayoutTests/fast/css/css-selector-text-expected.txt:
* LayoutTests/fast/css/css-selector-text.html:
* LayoutTests/fast/css/css-set-selector-text-expected.txt:
* LayoutTests/fast/css/css-set-selector-text.html:
* 
LayoutTests/fast/css/parsing-css-attribute-case-insensitive-value-1-expected.txt:
* LayoutTests/fast/css/parsing-css-attribute-case-insensitive-value-1.html:
* LayoutTests/fast/css/parsing-css-matches-1-expected.txt:
* LayoutTests/fast/css/parsing-css-matches-1.html:
* LayoutTests/fast/css/parsing-css-matches-2-expected.txt:
* LayoutTests/fast/css/parsing-css-matches-2.html:
* LayoutTests/fast/css/parsing-css-matches-3-expected.txt:
* LayoutTests/fast/css/parsing-css-matches-3.html:
* LayoutTests/fast/css/parsing-css-matches-4-expected.txt:
* LayoutTests/fast/css/parsing-css-matches-4.html:
* LayoutTests/fast/css/parsing-css-not-1-expected.txt:
* LayoutTests/fast/css/parsing-css-not-1.html:
* LayoutTests/fast/css/parsing-css-not-2-expected.txt:
* LayoutTests/fast/css/parsing-css-not-2.html:
* LayoutTests/fast/selectors/selector-aliases-expected.txt:
* LayoutTests/fast/selectors/selector-aliases.html:
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::appendPseudoClassFunctionTail):
(WebCore::simpleSelectorSpecificity):
(WebCore::CSSSelector::selectorText const):
* Source/WebCore/css/CSSSelector.h:
(WebCore::isLogicalCombinationPseudoClass):
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/SelectorChecker.h:
(WebCore::SelectorChecker::isCommonPseudoClassSelector):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::isOnlyPseudoClassFunction):
(WebCore::CSSSelectorParser::consumePseudo):
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
* Source/WebCore/dom/Element.cpp:
(WebCore::Element::setIsLink):
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::addRule):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] c0e3ff: Alias `:-webkit-full-screen` pseudo-class to `:ful...

2024-01-01 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c0e3ff49d701c24f709245fc4ed192bb9673a838
  
https://github.com/WebKit/WebKit/commit/c0e3ff49d701c24f709245fc4ed192bb9673a838
  Author: Tim Nguyen 
  Date:   2024-01-01 (Mon, 01 Jan 2024)

  Changed paths:
A LayoutTests/fast/selectors/selector-aliases-expected.txt
A LayoutTests/fast/selectors/selector-aliases.html
M LayoutTests/fullscreen/full-screen-css-expected.txt
M LayoutTests/fullscreen/full-screen-css.html
M Source/WebCore/css/CSSPseudoSelectors.json
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorCheckerTestFunctions.h
M Source/WebCore/cssjit/SelectorCompiler.cpp

  Log Message:
  ---
  Alias `:-webkit-full-screen` pseudo-class to `:fullscreen`
https://bugs.webkit.org/show_bug.cgi?id=266962
rdar://120335917

Reviewed by Darin Adler.

The match functions for :fullscreen and :-webkit-full-screen are compatible 
with each other.
They differ in some very small edge cases, but for the most common cases they 
behave identically, alias them to clean up some code.

* LayoutTests/fast/selectors/selector-aliases-expected.txt: Added.
* LayoutTests/fast/selectors/selector-aliases.html: Added.
* LayoutTests/fullscreen/full-screen-css-expected.txt:
* LayoutTests/fullscreen/full-screen-css.html:
* Source/WebCore/css/CSSPseudoSelectors.json:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText const):
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/SelectorCheckerTestFunctions.h:
(WebCore::matchesWebkitFullScreenPseudoClass): Deleted.
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):

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


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


  1   2   3   4   5   >