[webkit-changes] [WebKit/WebKit] 44cfc5: [view-transitions] Support parsing and checking :a...
Kiet Ho
noreply at github.com
Fri Aug 16 04:22:23 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 44cfc58a80e6797fd128ce8bd4070a779c56980f
https://github.com/WebKit/WebKit/commit/44cfc58a80e6797fd128ce8bd4070a779c56980f
Author: Kiet Ho <tho22 at apple.com>
Date: 2024-08-16 (Fri, 16 Aug 2024)
Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-matches-expected.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-matches-ref.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-matches.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved-expected.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved-mutation-expected.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved-mutation.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved-ref.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved.html
M LayoutTests/platform/glib/TestExpectations
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
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/css/parser/CSSParserContext.cpp
M Source/WebCore/css/parser/CSSParserContext.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/parser/CSSSelectorParserContext.cpp
M Source/WebCore/css/parser/CSSSelectorParserContext.h
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/dom/ViewTransition.h
M Source/WebCore/dom/ViewTransitionTypeSet.cpp
M Source/WebCore/dom/ViewTransitionTypeSet.h
Log Message:
-----------
[view-transitions] Support parsing and checking :active-view-transition-type()
https://bugs.webkit.org/show_bug.cgi?id=277779
rdar://133610087
Reviewed by Tim Nguyen.
This patch adds support for parsing and checking the pseudo class
:active-view-transition-type(). This patch also modifies ViewTransitionTypeSet
to invalidate the stylesheet if a new type is added/removed. With this, support
for view transition types is completed, and is now enabled by default.
The WPT test changes are already upstreamed here:
https://github.com/web-platform-tests/wpt/commit/85b16fcfb299c9d6ff85dfe16beacda7fcb609d2
* LayoutTests/TestExpectations: Don't skip view transition type tests, now that they're passing.
* LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-matches-expected.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-matches-ref.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-matches.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved-expected.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved-mutation-expected.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved-mutation.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved-ref.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/view-transition-types-reserved.html:
* LayoutTests/platform/glib/TestExpectations:
* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml: Enable ViewTransitionTypesEnabled by default
* Source/WebCore/css/CSSPseudoSelectors.json: added pseudo class :active-view-transition-type.
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::appendPossiblyQuotedIdentifier): renamed from appendLangArgument.
(WebCore::appendCommaSeparatedPossiblyQuotedIdentifierList): renamed from appendLangArgumentList.
(WebCore::CSSSelector::selectorText const): added code to serialize :active-view-transition-type.
(WebCore::appendLangArgument): Deleted.
(WebCore::appendLangArgumentList): Deleted.
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const): added code to check :active-view-transition-type.
* Source/WebCore/css/SelectorCheckerTestFunctions.h:
(WebCore::matchesActiveViewTransitionTypePseudoClass): added function to check :active-view-transition-type.
* Source/WebCore/css/parser/CSSParserContext.cpp:
(WebCore::add):
* Source/WebCore/css/parser/CSSParserContext.h: added flag for parsing :active-view-transition-type.
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::consumeCommaSeparatedCustomIdentList): added function to parse a list of comma-separated custom idents (used by :active-view-transition-type)
(WebCore::CSSSelectorParser::consumePseudo): added code to parse :active-view-transition-type.
* Source/WebCore/css/parser/CSSSelectorParserContext.cpp:
(WebCore::CSSSelectorParserContext::CSSSelectorParserContext):
(WebCore::add):
* Source/WebCore/css/parser/CSSSelectorParserContext.h: added flag for parsing :active-view-transition-type.
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType): mark :active-view-transition-type as not JIT compilable.
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::setActiveViewTransition): when invalidating style, also invalidate :active-view-transition-type.
* Source/WebCore/dom/Document.h:
* Source/WebCore/dom/ViewTransition.h:
(WebCore::ViewTransition::setTypes): use WTFMove.
* Source/WebCore/dom/ViewTransitionTypeSet.cpp:
(WebCore::ViewTransitionTypeSet::clearFromSetLike): invalidate style on clearing.
(WebCore::ViewTransitionTypeSet::addToSetLike): invalidate style on adding new types.
(WebCore::ViewTransitionTypeSet::removeFromSetLike): invalidate style on deleting types.
(WebCore::ViewTransitionTypeSet::hasType const): renamed from has()
(WebCore::ViewTransitionTypeSet::has const): Deleted.
* Source/WebCore/dom/ViewTransitionTypeSet.h:
Canonical link: https://commits.webkit.org/282344@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list