Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 44cfc58a80e6797fd128ce8bd4070a779c56980f
https://github.com/WebKit/WebKit/commit/44cfc58a80e6797fd128ce8bd4070a779c56980f
Author: Kiet Ho <[email protected]>
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
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes