[webkit-changes] [WebKit/WebKit] 68367b: [CSS] @property initial-value descriptor can't con...

2024-09-16 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 68367bc72477ba3ee3596b1fa5a0c963563d1d98
  
https://github.com/WebKit/WebKit/commit/68367bc72477ba3ee3596b1fa5a0c963563d1d98
  Author: Matthieu Dubet 
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property-expected.txt
M Source/WebCore/css/parser/CSSParserImpl.cpp

  Log Message:
  ---
  [CSS] @property initial-value descriptor can't contain var(--foo)
https://bugs.webkit.org/show_bug.cgi?id=279751
rdar://134317319

Reviewed by Antti Koivisto.

https://drafts.css-houdini.org/css-properties-values-api/#initial-value-descriptor

https://drafts.css-houdini.org/css-properties-values-api/#computationally-independent

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property-expected.txt:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumePropertyRule):

Canonical link: https://commits.webkit.org/283701@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] f0fd3c: [css-nesting] New behavior for interleaved declara...

2024-09-04 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f0fd3ce9cf0c9319184d3f49ce6752864dece7ca
  
https://github.com/WebKit/WebKit/commit/f0fd3ce9cf0c9319184d3f49ce6752864dece7ca
  Author: Matthieu Dubet 
  Date:   2024-09-04 (Wed, 04 Sep 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/mixed-declarations-rules-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/mixed-declarations-rules.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-matching-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/custom-property-rule-ambiguity.html
M Source/WebCore/CMakeLists.txt
M Source/WebCore/DerivedSources-input.xcfilelist
M Source/WebCore/DerivedSources-output.xcfilelist
M Source/WebCore/DerivedSources.make
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/bindings/js/JSCSSRuleCustom.cpp
M Source/WebCore/css/CSSGradientValue.h
M Source/WebCore/css/CSSGroupingRule.cpp
A Source/WebCore/css/CSSNestedDeclarations.cpp
A Source/WebCore/css/CSSNestedDeclarations.h
A Source/WebCore/css/CSSNestedDeclarations.idl
M Source/WebCore/css/CSSShapeSegmentValue.cpp
M Source/WebCore/css/CSSStyleRule.cpp
M Source/WebCore/css/CSSStyleRule.h
M Source/WebCore/css/CSSTimingFunctionValue.h
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/StyleRuleType.h
M Source/WebCore/css/StyleSheetContents.cpp
M Source/WebCore/css/calc/CSSCalcTree+Simplification.cpp
M Source/WebCore/css/parser/CSSParser.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Image.cpp
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Image.h
M Source/WebCore/inspector/InspectorStyleSheet.cpp
M Source/WebCore/style/RuleSetBuilder.cpp
M Source/WebCore/style/RuleSetBuilder.h

  Log Message:
  ---
  [css-nesting] New behavior for interleaved declarations and rules
https://bugs.webkit.org/show_bug.cgi?id=275365
rdar://130094168

Reviewed by Tim Nguyen.

https://github.com/w3c/csswg-drafts/issues/10234

Before this CSSWG resolution, any declaration inside a style rule
(whatever its position relative to other rules),
would be shifted up at the top of the rule
to be able to represent a style rule with a single leading block of 
declarations.
This patch implements the new resolved behavior so the order of interleaved 
declarations is respected
during cascade.

https://drafts.csswg.org/css-nesting/#the-cssnestrule

This patch introduces a new StyleRuleNestedDeclarations class
to be able to store a block of declarations in-between rules and fit with the 
already existing
RuleData/RuleSet mechanism.
Its CSSOM representation (CSSNestedDeclarations) is purposedly not serialized
as a rule in the CSSOM but like a list of declarations.

The CSSOM insertRule() functions (on CSSStyleRule/CSSGroupingRule)
are modified to allow inserting block of declarations.
https://github.com/w3c/csswg-drafts/issues/10520

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/mixed-declarations-rules-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/mixed-declarations-rules.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-matching-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/custom-property-rule-ambiguity.html:
  Manual sync from WPT
* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources-input.xcfilelist:
* Source/WebCore/DerivedSources-output.xcfilelist:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/bindings/js/JSCSSRuleCustom.cpp:
(WebCore::toJSNewlyCreated):
* Source/WebCore/css/CSSGradientValue.h:
* Source/WebCore/css/CSSNestedDeclarations.cpp: Added.
(WebCore::CSSNestedDeclarations::CSSNestedDeclarations

[webkit-changes] [WebKit/WebKit] dc1c86: [WPT] Sync css/css-nesting

2024-09-04 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dc1c8620283081a3ddc668098f7f8d4ddd9e8e08
  
https://github.com/WebKit/WebKit/commit/dc1c8620283081a3ddc668098f7f8d4ddd9e8e08
  Author: Matthieu Dubet 
  Date:   2024-09-04 (Wed, 04 Sep 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/contextually-invalid-selectors-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-matching.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log

  Log Message:
  ---
  [WPT] Sync css/css-nesting
https://bugs.webkit.org/show_bug.cgi?id=279130

Reviewed by Brent Fulgham and Tim Nguyen.

WPT @ 8c85e2c44e2e4572d6e64327ef4f01b602af3d78

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/contextually-invalid-selectors-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-matching.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log:

Canonical link: https://commits.webkit.org/283164@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] 9309d6: [CSS] Contextually invalid selectors have a specif...

2024-08-29 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9309d6597f2ba096a1af23917982f76b820574a3
  
https://github.com/WebKit/WebKit/commit/9309d6597f2ba096a1af23917982f76b820574a3
  Author: Matthieu Dubet 
  Date:   2024-08-29 (Thu, 29 Aug 2024)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/contextually-invalid-selectors-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/contextually-invalid-selectors.html
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/SelectorChecker.cpp

  Log Message:
  ---
  [CSS] Contextually invalid selectors have a specificity of 0
https://bugs.webkit.org/show_bug.cgi?id=277739
rdar://133391094

Reviewed by Tim Nguyen.

https://github.com/w3c/csswg-drafts/issues/9600

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/contextually-invalid-selectors-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/contextually-invalid-selectors.html:
 Added.
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::maxSpecificity):
(WebCore::simpleSelectorSpecificity):

Canonical link: https://commits.webkit.org/282944@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] c5614f: [WPT] Sync css/css-nesting

2024-08-29 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c5614f275e72adc642666520ce73837cdd2499ec
  
https://github.com/WebKit/WebKit/commit/c5614f275e72adc642666520ce73837cdd2499ec
  Author: Matthieu Dubet 
  Date:   2024-08-29 (Thu, 29 Aug 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-matching-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-matching.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-basic.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/pseudo-where-crash.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log

  Log Message:
  ---
  [WPT] Sync css/css-nesting
https://bugs.webkit.org/show_bug.cgi?id=278877
rdar://134959476

Reviewed by Tim Nguyen.

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

* LayoutTests/TestExpectations:
* LayoutTests/imported/w3c/resources/resource-files.json:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-matching-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-matching.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-basic.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/pseudo-where-crash.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log:

Canonical link: https://commits.webkit.org/282929@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] 94719b: [CSS] @supports(selector(..)) only accepts complex...

2024-08-20 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 94719bb343acb2d914fa3e692e8f2d4c75bbcec2
  
https://github.com/WebKit/WebKit/commit/94719bb343acb2d914fa3e692e8f2d4c75bbcec2
  Author: Matthieu Dubet 
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/supports-rule.html
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/parser/CSSSelectorParser.h
M Source/WebCore/css/parser/CSSSupportsParser.cpp

  Log Message:
  ---
  [CSS] @supports(selector(..)) only accepts complex selector
https://bugs.webkit.org/show_bug.cgi?id=277869
rdar://133555106

Reviewed by Tim Nguyen.

https://drafts.csswg.org/css-conditional-4/#typedef-supports-selector-fn

Fix to make it not contextually aware, as defined by the spec.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/supports-rule.html:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::supportsComplexSelector):
* Source/WebCore/css/parser/CSSSelectorParser.h:
* Source/WebCore/css/parser/CSSSupportsParser.cpp:
(WebCore::CSSSupportsParser::consumeSupportsSelectorFunction):

Canonical link: https://commits.webkit.org/282515@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] 321f67: [CSS] Allow {} only as whole value of a property

2024-08-16 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 321f676e35e6f1c729b0aeb26f866fafca2e6b2e
  
https://github.com/WebKit/WebKit/commit/321f676e35e6f1c729b0aeb26f866fafca2e6b2e
  Author: Matthieu Dubet 
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/var-with-blocks-expected.txt
M Source/WebCore/css/parser/CSSVariableParser.cpp

  Log Message:
  ---
  [CSS]  Allow {} only as whole value of a property
https://bugs.webkit.org/show_bug.cgi?id=276825
rdar://132102189

Reviewed by Antti Koivisto.

https://github.com/w3c/csswg-drafts/commit/77e96017716572ffdc84da087fc10c9929a0d54e

This only applies to regular properties. Custom properties
can still include whatever.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/var-with-blocks-expected.txt:
* Source/WebCore/css/parser/CSSVariableParser.cpp:
(WebCore::classifyBlock):
(WebCore::isValidVariableReference):
(WebCore::isValidConstantReference):
(WebCore::classifyVariableRange):
(WebCore::CSSVariableParser::containsValidVariableReferences):

Canonical link: https://commits.webkit.org/282382@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] 38bdc0: [CSS] Disallow matching of :has() inside :has()

2024-08-08 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 38bdc072b681d62aafeeac24419f885183d48329
  
https://github.com/WebKit/WebKit/commit/38bdc072b681d62aafeeac24419f885183d48329
  Author: Matthieu Dubet 
  Date:   2024-08-08 (Thu, 08 Aug 2024)

  Changed paths:
M LayoutTests/TestExpectations
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorChecker.h

  Log Message:
  ---
  [CSS] Disallow matching of :has() inside :has()
https://bugs.webkit.org/show_bug.cgi?id=276827
rdar://132102543

Reviewed by Antti Koivisto.

We already disabled this at parsing time, but it can also
be created "contextually" with Nesting.

"The :has() pseudo-class cannot be nested"
https://drafts.csswg.org/selectors/#relational

* LayoutTests/TestExpectations:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchHasPseudoClass const):
* Source/WebCore/css/SelectorChecker.h:

Canonical link: https://commits.webkit.org/281997@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] b2e941: Fix :is(:host) both as a subject and as an ancestor

2024-08-07 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b2e941c46d19000ece893d2f79e9ff52fda755a5
  
https://github.com/WebKit/WebKit/commit/b2e941c46d19000ece893d2f79e9ff52fda755a5
  Author: Matthieu Dubet 
  Date:   2024-08-07 (Wed, 07 Aug 2024)

  Changed paths:
M LayoutTests/TestExpectations
A LayoutTests/fast/css/host-matching-expected.html
A LayoutTests/fast/css/host-matching.html
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/css/parser/MutableCSSSelector.cpp
M Source/WebCore/css/parser/MutableCSSSelector.h
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/RuleSet.cpp
M Source/WebCore/style/RuleSet.h

  Log Message:
  ---
  Fix :is(:host) both as a subject and as an ancestor
https://bugs.webkit.org/show_bug.cgi?id=264628
rdar://118582384

Reviewed by Antti Koivisto.

As ancestor: we always follow the Shadow DOM host, and check a posteriori
that we have successfully matched an :host pseudoclass.

As subject: rules containg compound :host will not end up in the host bucket
but in the universal bucket of the shadow host, we mark those as such and 
collect them when needed.

* LayoutTests/TestExpectations:
* LayoutTests/fast/css/host-matching-expected.html: Added.
* LayoutTests/fast/css/host-matching.html: Added.
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::RareData::deepCopy const):
(WebCore::CSSSelector::isHostPseudoClass const):
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchHostPseudoClass const):
(WebCore::localContextForParent):
(WebCore::SelectorChecker::matchRecursively const):
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/SelectorChecker.h:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::prependTypeSelectorIfNeeded):
* Source/WebCore/css/parser/MutableCSSSelector.cpp:
(WebCore::MutableCSSSelector::isHostPseudoSelector const): Deleted.
* Source/WebCore/css/parser/MutableCSSSelector.h:
(WebCore::MutableCSSSelector::isHostPseudoClass const):
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::matchHostPseudoClassRules):
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::hasHostPseudoClassSubjectInSelectorList):
(WebCore::Style::isHostSelectorMatchingInShadowTree):
(WebCore::Style::RuleSet::addRule):
* Source/WebCore/style/RuleSet.h:
(WebCore::Style::RuleSet::hasHostPseudoClassRulesInUniversalBucket const):

Canonical link: https://commits.webkit.org/281963@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] 9e839b: [CSS] Use strongly-typed IsImportant instead of bool

2024-07-24 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9e839b24384ba08e26976bfbcef86cb36e46bba3
  
https://github.com/WebKit/WebKit/commit/9e839b24384ba08e26976bfbcef86cb36e46bba3
  Author: Matthieu Dubet 
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
M Source/WebCore/animation/KeyframeEffect.cpp
M Source/WebCore/animation/WebAnimation.cpp
M Source/WebCore/css/CSSComputedStyleDeclaration.cpp
M Source/WebCore/css/CSSComputedStyleDeclaration.h
M Source/WebCore/css/CSSProperty.h
M Source/WebCore/css/CSSStyleDeclaration.cpp
M Source/WebCore/css/CSSStyleDeclaration.h
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/css/DOMCSSNamespace.cpp
M Source/WebCore/css/DOMMatrixReadOnly.cpp
M Source/WebCore/css/MutableStyleProperties.cpp
M Source/WebCore/css/MutableStyleProperties.h
M Source/WebCore/css/PropertySetCSSStyleDeclaration.cpp
M Source/WebCore/css/PropertySetCSSStyleDeclaration.h
M Source/WebCore/css/StyleProperties.cpp
M Source/WebCore/css/StyleProperties.h
M Source/WebCore/css/parser/CSSParser.cpp
M Source/WebCore/css/parser/CSSParser.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSPropertyParser.cpp
M Source/WebCore/css/typedom/CSSStyleValueFactory.cpp
M Source/WebCore/css/typedom/DeclaredStylePropertyMap.cpp
M Source/WebCore/css/typedom/InlineStylePropertyMap.cpp
M Source/WebCore/dom/StyledElement.cpp
M Source/WebCore/dom/StyledElement.h
M Source/WebCore/editing/ApplyStyleCommand.cpp
M Source/WebCore/editing/EditingStyle.cpp
M Source/WebCore/editing/EditingStyle.h
M Source/WebCore/editing/Editor.cpp
M Source/WebCore/editing/ReplaceSelectionCommand.cpp
M Source/WebCore/html/AttachmentAssociatedElement.cpp
M Source/WebCore/html/ColorInputType.cpp
M Source/WebCore/html/TextFieldInputType.cpp
M Source/WebCore/html/shadow/MediaControlTextTrackContainerElement.cpp
M Source/WebCore/html/shadow/TextPlaceholderElement.cpp
M Source/WebCore/html/track/VTTCue.cpp
M Source/WebCore/page/DragController.cpp
M Source/WebCore/style/PropertyCascade.cpp
M Source/WebCore/style/PropertyCascade.h
M Source/WebCore/svg/properties/SVGAttributeAnimator.cpp

  Log Message:
  ---
  [CSS] Use strongly-typed IsImportant instead of bool
https://bugs.webkit.org/show_bug.cgi?id=276974
rdar://132359273

Reviewed by Tim Nguyen.

* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::processIterableKeyframes):
(WebCore::processPropertyIndexedKeyframes):
* Source/WebCore/animation/WebAnimation.cpp:
(WebCore::WebAnimation::commitStyles):
* Source/WebCore/css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::setPropertyInternal):
* Source/WebCore/css/CSSComputedStyleDeclaration.h:
* Source/WebCore/css/CSSProperty.h:
(WebCore::StylePropertyMetadata::StylePropertyMetadata):
(WebCore::CSSProperty::CSSProperty):
* Source/WebCore/css/CSSStyleDeclaration.cpp:
(WebCore::CSSStyleDeclaration::setPropertyValueForCamelCasedIDLAttribute):
(WebCore::CSSStyleDeclaration::setPropertyValueForWebKitCasedIDLAttribute):
(WebCore::CSSStyleDeclaration::setPropertyValueForDashedIDLAttribute):
(WebCore::CSSStyleDeclaration::setPropertyValueForEpubCasedIDLAttribute):
(WebCore::CSSStyleDeclaration::setCssFloat):
* Source/WebCore/css/CSSStyleDeclaration.h:
* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::ComputedStyleExtractor::copyProperties const):
* Source/WebCore/css/DOMCSSNamespace.cpp:
(WebCore::DOMCSSNamespace::supports):
* Source/WebCore/css/DOMMatrixReadOnly.cpp:
(WebCore::DOMMatrixReadOnly::parseStringIntoAbstractMatrix):
* Source/WebCore/css/MutableStyleProperties.cpp:
(WebCore::MutableStyleProperties::setProperty):
(WebCore::MutableStyleProperties::setCustomProperty):
* Source/WebCore/css/MutableStyleProperties.h:
* Source/WebCore/css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
* Source/WebCore/css/PropertySetCSSStyleDeclaration.h:
* Source/WebCore/css/StyleProperties.cpp:
(WebCore::StyleProperties::propertyIsImportant const):
(WebCore::StyleProperties::copyProperties const):
* Source/WebCore/css/StyleProperties.h:
(WebCore::StyleProperties::PropertyReference::toCSSProperty const):
* Source/WebCore/css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseCustomPropertyValue):
* Source/WebCore/css/parser/CSSParser.h:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::parseValue):
(WebCore::CSSParserImpl::parseCustomPropertyValue):
(WebCore::filterProperties):
(WebCore::createStyleProperties):
(WebCore::CSSParserImpl::parseDeclarationList):
(WebCore::CSSParserImpl::consumeTrailingImportantAndWhitespace):
(WebCore::CSSParserImpl::consumeDeclaration):
(WebCore

[webkit-changes] [WebKit/WebKit] 445f89: [CSS] Fix the parsing of custom property as ambigu...

2024-07-18 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 445f89c8ea16f77a134149f21e3aacb400704ade
  
https://github.com/WebKit/WebKit/commit/445f89c8ea16f77a134149f21e3aacb400704ade
  Author: Matthieu Dubet 
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/custom-property-rule-ambiguity-expected.txt
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSTokenizer.cpp

  Log Message:
  ---
  [CSS] Fix the parsing of custom property as ambiguous rule
https://bugs.webkit.org/show_bug.cgi?id=276302
rdar://131274469

Reviewed by Tim Nguyen.

This patch makes parsing of "something that look like a custom property"
fails with a more useful error recovery : until the end of the declaration
or until the end of the rule.

https://drafts.csswg.org/css-syntax/#consume-qualified-rule

If the first two non- values of rule’s prelude are an 
 whose value starts with "--" followed by a , then:
If nested is true, consume the remnants of a bad declaration from input, 
with nested set to true, and return nothing.
If nested is false, consume a block from input, and return nothing.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/custom-property-rule-ambiguity-expected.txt:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeQualifiedRule):

Canonical link: https://commits.webkit.org/281108@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] 862f9b: [CSS] Use "enum class" for AllowedRules and RuleTy...

2024-07-09 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 862f9be99bf8270a492823b80df82404ebde1b1d
  
https://github.com/WebKit/WebKit/commit/862f9be99bf8270a492823b80df82404ebde1b1d
  Author: Matthieu Dubet 
  Date:   2024-07-09 (Tue, 09 Jul 2024)

  Changed paths:
M Source/WebCore/css/parser/CSSParser.cpp
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/inspector/InspectorStyleSheet.cpp

  Log Message:
  ---
  [CSS] Use "enum class" for AllowedRules and RuleType in CSSParserImpl
https://bugs.webkit.org/show_bug.cgi?id=276345

Reviewed by Tim Nguyen.

* Source/WebCore/css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseRule):
(WebCore::CSSParser::parseKeyframeRule):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::parseRule):
(WebCore::CSSParserImpl::parseStyleSheet):
(WebCore::CSSParserImpl::parseStyleSheetForInspector):
(WebCore::computeNewAllowedRules):
(WebCore::CSSParserImpl::consumeRuleList):
(WebCore::CSSParserImpl::consumeAtRule):
(WebCore::CSSParserImpl::consumeQualifiedRule):
(WebCore::CSSParserImpl::consumeNestedGroupRules):
(WebCore::CSSParserImpl::consumeFontFeatureValuesRule):
(WebCore::CSSParserImpl::consumeKeyframesRule):
(WebCore::CSSParserImpl::consumeBlockContent):
* Source/WebCore/css/parser/CSSParserImpl.h:
* Source/WebCore/inspector/InspectorStyleSheet.cpp:
(WebCore::isValidRuleHeaderText):

Canonical link: https://commits.webkit.org/280788@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] e2a1cb: [CSS] Add debugDescription() to StyleRule

2024-07-08 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e2a1cb2a0ea2fc891747aca06dc39a09e2934b8c
  
https://github.com/WebKit/WebKit/commit/e2a1cb2a0ea2fc891747aca06dc39a09e2934b8c
  Author: Matthieu Dubet 
  Date:   2024-07-08 (Mon, 08 Jul 2024)

  Changed paths:
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/StyleRule.h

  Log Message:
  ---
  [CSS] Add debugDescription() to StyleRule
https://bugs.webkit.org/show_bug.cgi?id=276303

Reviewed by Sammy Gill.

* Source/WebCore/css/StyleRule.cpp:
(WebCore::StyleRule::debugDescription const):
(WebCore::StyleRuleWithNesting::debugDescription const):
(WebCore::StyleRuleGroup::debugDescription const):
(WebCore::StyleRuleMedia::debugDescription const):
(WebCore::StyleRuleBase::debugDescription const):
(WebCore::operator<<):
* Source/WebCore/css/StyleRule.h:

Canonical link: https://commits.webkit.org/280744@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] f3e481: [WPT] Sync css/css-syntax

2024-07-06 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f3e48186cbfd6b52425241eb127ce102133838c5
  
https://github.com/WebKit/WebKit/commit/f3e48186cbfd6b52425241eb127ce102133838c5
  Author: Matthieu Dubet 
  Date:   2024-07-06 (Sat, 06 Jul 2024)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/charset/page-windows-1252-http-windows-1251-css-utf8-bom-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/charset/page-windows-1252-http-windows-1251-css-utf8-bom.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/charset/support/utf8-bom-http-windows-1251.css
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/custom-property-rule-ambiguity.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/serialize-escape-identifiers-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/serialize-escape-identifiers.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/w3c-import.log

  Log Message:
  ---
  [WPT] Sync css/css-syntax
https://bugs.webkit.org/show_bug.cgi?id=276292

Reviewed by Tim Nguyen.

WPT @ 4e3b5de2eb8218cf18a1674618994efeb96e2cc0

Canonical link: https://commits.webkit.org/280716@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] 02bc45: [CSSOM] Add more smart pointers

2024-06-20 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 02bc45ab161b02253aa939a96c5b3f002b45c251
  
https://github.com/WebKit/WebKit/commit/02bc45ab161b02253aa939a96c5b3f002b45c251
  Author: Matthieu Dubet 
  Date:   2024-06-20 (Thu, 20 Jun 2024)

  Changed paths:
M Source/WebCore/css/CSSGroupingRule.cpp
M Source/WebCore/css/CSSStyleRule.cpp

  Log Message:
  ---
  [CSSOM] Add more smart pointers
https://bugs.webkit.org/show_bug.cgi?id=275604
rdar://130065734

Reviewed by Chris Dumez.

* Source/WebCore/css/CSSGroupingRule.cpp:
(WebCore::CSSGroupingRule::prepareChildStyleRuleForNesting):
* Source/WebCore/css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::generateSelectorText const):
(WebCore::CSSStyleRule::setSelectorText):
(WebCore::CSSStyleRule::insertRule):

Canonical link: https://commits.webkit.org/280200@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] becd33: [README] Add information about git fsmonitor

2024-05-31 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: becd3374383271af5785483f53be84b0eafc1add
  
https://github.com/WebKit/WebKit/commit/becd3374383271af5785483f53be84b0eafc1add
  Author: Matthieu Dubet 
  Date:   2024-05-31 (Fri, 31 May 2024)

  Changed paths:
M ReadMe.md

  Log Message:
  ---
  [README] Add information about git fsmonitor
https://bugs.webkit.org/show_bug.cgi?id=274811

Reviewed by Sammy Gill.

* ReadMe.md:

Canonical link: https://commits.webkit.org/279591@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] e451a3: [CSS] Fix link invalidation when color depends on ...

2024-05-28 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e451a390febd89df0938e9b125ebff43adbf100b
  
https://github.com/WebKit/WebKit/commit/e451a390febd89df0938e9b125ebff43adbf100b
  Author: Matthieu Dubet 
  Date:   2024-05-28 (Tue, 28 May 2024)

  Changed paths:
A LayoutTests/fast/css/link-style-color-invalidation-expected.html
A LayoutTests/fast/css/link-style-color-invalidation.html
M LayoutTests/platform/ios/TestExpectations
M LayoutTests/platform/mac-wk1/TestExpectations
M Source/WebCore/rendering/style/RenderStyle.cpp

  Log Message:
  ---
  [CSS] Fix link invalidation when color depends on the visited style
https://bugs.webkit.org/show_bug.cgi?id=61697
rdar://97529381

Reviewed by Simon Fraser.

This patch fixes the comparison for the "color" property,
by comparing the used value used for rendering
(taking into account the duality color/visitedLinkColor).

We should ideally do that for each color property
(backgroundColor/visitedLinkBackgroundColor...etc) in a followup patch.

Also, this doesn't change the current algorithm which requires repaint
whenever the color value changes without looking at its actual usage
in other properties (like what is done in the SVGRenderStyle diff).

* LayoutTests/fast/css/link-style-color-invalidation-expected.html: Added.
* LayoutTests/fast/css/link-style-color-invalidation.html: Added.
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac-wk1/TestExpectations:
* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::currentColorWithVisitedDiffers):
(WebCore::RenderStyle::changeRequiresRepaint const):
(WebCore::RenderStyle::changeRequiresRepaintIfText const):

Canonical link: https://commits.webkit.org/279411@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] ce1ed5: [SVG] Faster property access for and

2024-05-24 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ce1ed5b53fe6cf9e093f6797798bff4d263fb078
  
https://github.com/WebKit/WebKit/commit/ce1ed5b53fe6cf9e093f6797798bff4d263fb078
  Author: Matthieu Dubet 
  Date:   2024-05-24 (Fri, 24 May 2024)

  Changed paths:
M Source/WebCore/svg/SVGCircleElement.cpp
M Source/WebCore/svg/SVGCircleElement.h
M Source/WebCore/svg/SVGElement.h
M Source/WebCore/svg/SVGRectElement.cpp
M Source/WebCore/svg/SVGRectElement.h
M Source/WebCore/svg/properties/SVGPropertyOwnerRegistry.h

  Log Message:
  ---
  [SVG] Faster property access for  and 
https://bugs.webkit.org/show_bug.cgi?id=273293
rdar://127085305

Reviewed by Simon Fraser, Sam Weinig and Yusuke Suzuki.

This patch avoids looking for the property via the PropertyRegistry hashmap.
It's a small improvement on MotionMark on Intel.

* Source/WebCore/svg/SVGCircleElement.cpp:
(WebCore::SVGCircleElement::propertyForAttribute const):
* Source/WebCore/svg/SVGCircleElement.h:
* Source/WebCore/svg/SVGElement.h:
* Source/WebCore/svg/SVGRectElement.cpp:
(WebCore::SVGRectElement::propertyForAttribute const):
* Source/WebCore/svg/SVGRectElement.h:
* Source/WebCore/svg/properties/SVGPropertyOwnerRegistry.h:
(WebCore::requires):
(WebCore::SVGPropertyOwnerRegistry::fastAnimatedPropertyLookup):

Canonical link: https://commits.webkit.org/279304@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] c467c1: [CSS] Fix bug when using a coalesced CSSValuePair ...

2024-05-16 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c467c1a956e52767b38eeb9a171e8856a28be94f
  
https://github.com/WebKit/WebKit/commit/c467c1a956e52767b38eeb9a171e8856a28be94f
  Author: Matthieu Dubet 
  Date:   2024-05-16 (Thu, 16 May 2024)

  Changed paths:
A LayoutTests/fast/css/css-typed-om-typeerror-coalescing-pair-expected.txt
A LayoutTests/fast/css/css-typed-om-typeerror-coalescing-pair.html
M Source/WebCore/css/CSSValuePair.cpp
M Source/WebCore/css/CSSValuePair.h
M Source/WebCore/css/typedom/StylePropertyMap.cpp
M Source/WebCore/style/StyleBuilderConverter.h

  Log Message:
  ---
  [CSS] Fix bug when using a coalesced CSSValuePair with Typed OM
rdar://115346002

Reviewed by Chris Dumez.

We use the CSSParser and the serialization of CSSValue to validate the input of 
Typed OM set().
Unfortunately, sometimes a CSSValuePair serializes to a single value while it
actually contains two values: this confuses the StyleBuilder.

If the pair has the same values twice "10px 10px", it serializes to only "10px",
thus pass our string-based check (inside setProperty), but then crash when the 
actual value is a
pair of length instead of a simple length.

The more frequent case when the two values are distincts, such as "10px 30px", 
is
already prevented by the string-based check.

A proper fix would be to have validation method which doesn't work
on the serialized string value but on the actual typed CSSValue.

For the moment, we avoid crashing and warn the user with an error.

* LayoutTests/fast/css/css-typed-om-typeerror-coalescing-pair-expected.txt: 
Added.
* LayoutTests/fast/css/css-typed-om-typeerror-coalescing-pair.html: Added.
* Source/WebCore/css/CSSValuePair.cpp:
(WebCore::CSSValuePair::canBeCoalesced const):
* Source/WebCore/css/CSSValuePair.h:
* Source/WebCore/css/typedom/StylePropertyMap.cpp:
(WebCore::StylePropertyMap::set):
* Source/WebCore/style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertLengthSizing):

Originally-landed-as: 272448.627@safari-7618-branch (51293a58e9dd). 
rdar://128090952
Canonical link: https://commits.webkit.org/278891@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] da248b: [CSS] @font-palette-values override-colors accepts...

2024-05-10 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: da248b2c463c58ae57e8fa70150cfaf77f681276
  
https://github.com/WebKit/WebKit/commit/da248b2c463c58ae57e8fa70150cfaf77f681276
  Author: Matthieu Dubet 
  Date:   2024-05-10 (Fri, 10 May 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-valid-expected.txt
M Source/WebCore/css/CSSPrimitiveValue.cpp
M Source/WebCore/css/CSSPrimitiveValue.h
M Source/WebCore/css/parser/CSSParserImpl.cpp

  Log Message:
  ---
  [CSS] @font-palette-values override-colors accepts only absolute color
https://bugs.webkit.org/show_bug.cgi?id=273888
rdar://127714701

Reviewed by Tim Nguyen.

"The specified  must be an absolute color."

https://drafts.csswg.org/css-fonts/#override-color

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-valid-expected.txt:
* Source/WebCore/css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::absoluteColor const):
* Source/WebCore/css/CSSPrimitiveValue.h:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeFontPaletteValuesRule):

Canonical link: https://commits.webkit.org/278645@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] 34e7db: [Mac] Scrolling should be determined by the frontm...

2024-04-27 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 34e7db744efe67b25854294b0afc5b5717585286
  
https://github.com/WebKit/WebKit/commit/34e7db744efe67b25854294b0afc5b5717585286
  Author: Matthieu Dubet 
  Date:   2024-04-27 (Sat, 27 Apr 2024)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/pointerevents/pointerevent_hit_test_scroll_background-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/pointerevents/pointerevent_hit_test_scroll_background.html
M Source/WebCore/page/scrolling/mac/ScrollingTreeMac.mm
M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm

  Log Message:
  ---
  [Mac] Scrolling should be determined by the frontmost interactive layer
https://bugs.webkit.org/show_bug.cgi?id=273031
rdar://126865799

Reviewed by Simon Fraser.

https://commits.webkit.org/270094@main has introduced a regression
where the frontmost interactive or scroll container (even non interactive)
layer was considered as the scrolling hit layer.

* 
LayoutTests/imported/w3c/web-platform-tests/pointerevents/pointerevent_hit_test_scroll_background-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/pointerevents/pointerevent_hit_test_scroll_background.html:
 Added.
* Source/WebCore/page/scrolling/mac/ScrollingTreeMac.mm:
(ScrollingTreeMac::scrollingNodeForPoint):
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm:
(WebKit::RemoteScrollingTreeMac::handleWheelEventAfterDefaultHandling):
(WebKit::RemoteScrollingTreeMac::scrollingNodeForPoint):

Canonical link: https://commits.webkit.org/278084@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] 6d68a3: [CSS] Relative origin color might be unresolved (w...

2024-04-04 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6d68a3ed57fff4edd760968f4b709e0ad1a8fa67
  
https://github.com/WebKit/WebKit/commit/6d68a3ed57fff4edd760968f4b709e0ad1a8fa67
  Author: Matthieu Dubet 
  Date:   2024-04-04 (Thu, 04 Apr 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color-expected.txt
A 
LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt
M Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp

  Log Message:
  ---
  [CSS] Relative origin color might be unresolved (with currentcolor or system 
color)
https://bugs.webkit.org/show_bug.cgi?id=271856
rdar://125582744

Reviewed by Tim Nguyen.

We don't support that yet : tracking bug 
https://bugs.webkit.org/show_bug.cgi?id=245970

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color-expected.txt:
* 
LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt:
 Copied from 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt.
* Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeOriginColorRaw):

Canonical link: https://commits.webkit.org/277062@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] ade139: [CSS] CSSSelectorList class should have a const_it...

2024-03-26 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ade1396f85a02c79312ec9f7ec361f296cf7229d
  
https://github.com/WebKit/WebKit/commit/ade1396f85a02c79312ec9f7ec361f296cf7229d
  Author: Matthieu Dubet 
  Date:   2024-03-26 (Tue, 26 Mar 2024)

  Changed paths:
M Source/WebCore/css/CSSSelectorList.cpp
M Source/WebCore/css/CSSSelectorList.h
M Source/WebCore/cssjit/SelectorCompiler.cpp

  Log Message:
  ---
  [CSS] CSSSelectorList class should have a const_iterator
https://bugs.webkit.org/show_bug.cgi?id=271672
rdar://125373236

Reviewed by Antti Koivisto.

CSSSelectorList is an optimized contiguous memory
representation of a list.
This patch adds a forward const iterator interface to it
to be able to use range based for-loop.

* Source/WebCore/css/CSSSelectorList.cpp:
(WebCore::forEachTagSelector):
(WebCore::forEachSelector):
(WebCore::CSSSelectorList::hasExplicitNestingParent const):
* Source/WebCore/css/CSSSelectorList.h:
(WebCore::CSSSelectorList::const_iterator::operator* const):
(WebCore::CSSSelectorList::const_iterator::operator-> const):
(WebCore::CSSSelectorList::const_iterator::operator!= const):
(WebCore::CSSSelectorList::const_iterator::const_iterator):
(WebCore::CSSSelectorList::const_iterator::operator++):
(WebCore::CSSSelectorList::begin const):
(WebCore::CSSSelectorList::end const):
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addNthChildType):
(WebCore::SelectorCompiler::addPseudoClassType):

Canonical link: https://commits.webkit.org/276697@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] bbaf17: [WPT] Sync css/css-color

2024-03-26 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: bbaf1749c632ce1b34abe7ce17a0ff3205029965
  
https://github.com/WebKit/WebKit/commit/bbaf1749c632ce1b34abe7ce17a0ff3205029965
  Author: Matthieu Dubet 
  Date:   2024-03-26 (Tue, 26 Mar 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-1-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-1.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-2-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-2.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-1-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-1.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-2-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-2.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-almost-0-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-almost-0-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-almost-0.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-almost-1-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-almost-1-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-almost-1.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-over-1-1-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-over-1-1.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-over-1-2-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-over-1-2.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-l-over-1-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-almost-0-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-almost-0-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-almost-0.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-almost-1-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-almost-1-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-almost-1.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-over-1-1-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-over-1-1.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-over-1-2-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-over-1-2.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-l-over-1-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-color-function-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-color-function.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-relative-color-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-relative-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-rgb-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-rgb.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-hsl-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-hsl.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-consistency-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-consistency.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-support.html
M LayoutTests

[webkit-changes] [WebKit/WebKit] f6491f: [WTF] WTF_ALWAYS_LOG

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

  Changed paths:
M Source/WTF/wtf/Assertions.h

  Log Message:
  ---
  [WTF] WTF_ALWAYS_LOG
https://bugs.webkit.org/show_bug.cgi?id=270115

Reviewed by Simon Fraser.

No more "stream <<" typing everytime.

* Source/WTF/wtf/Assertions.h:

Canonical link: https://commits.webkit.org/276429@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] 432386: [CSS] Any @scope limit makes the element out of scope

2024-03-19 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 432386fb902b696fb2fbcb272588e21f0519b1bd
  
https://github.com/WebKit/WebKit/commit/432386fb902b696fb2fbcb272588e21f0519b1bd
  Author: Matthieu Dubet 
  Date:   2024-03-19 (Tue, 19 Mar 2024)

  Changed paths:
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt
M Source/WebCore/style/ElementRuleCollector.cpp

  Log Message:
  ---
  [CSS] Any @scope limit makes the element out of scope
https://bugs.webkit.org/show_bug.cgi?id=270806
rdar://124956673

Reviewed by Antti Koivisto.

 is a relative selector list, any valid complex selector
inside it represents a scope limit : for an element to be in scope,
it needs to not have any of those selectors matching one of its ancestors.

 * LayoutTests/fast/css/scope-at-rule-expected.html:
 * LayoutTests/fast/css/scope-at-rule.html:
 * 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt:
 * 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation.html:
 * 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt:
 * Source/WebCore/style/ElementRuleCollector.cpp:
 (WebCore::Style::ElementRuleCollector::scopeRulesMatch):

Canonical link: https://commits.webkit.org/276359@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] 7b99ea: [CSS] Fix wrong proximity calculation for implicit...

2024-03-19 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7b99ea4ee24459026a3b0b8d11414d6ce8bfd9e1
  
https://github.com/WebKit/WebKit/commit/7b99ea4ee24459026a3b0b8d11414d6ce8bfd9e1
  Author: Matthieu Dubet 
  Date:   2024-03-19 (Tue, 19 Mar 2024)

  Changed paths:
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit.html
M Source/WebCore/style/ElementRuleCollector.cpp

  Log Message:
  ---
  [CSS] Fix wrong proximity calculation for implicit @scope
https://bugs.webkit.org/show_bug.cgi?id=270900
rdar://124640124

Reviewed by Antti Koivisto.

The previous code was wrongly trying to locate the distance
of the element to the @scope owner node (the 

[webkit-changes] [WebKit/WebKit] 9b0452: [CSS] Use "enum class" for ContentsWereClonedForMu...

2024-03-11 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9b0452488b70574e7dbf749c526db369cdfbd90f
  
https://github.com/WebKit/WebKit/commit/9b0452488b70574e7dbf749c526db369cdfbd90f
  Author: Matthieu Dubet 
  Date:   2024-03-11 (Mon, 11 Mar 2024)

  Changed paths:
M Source/WebCore/css/CSSStyleSheet.cpp
M Source/WebCore/css/CSSStyleSheet.h

  Log Message:
  ---
  [CSS] Use "enum class" for ContentsWereClonedForMutation
https://bugs.webkit.org/show_bug.cgi?id=270822
rdar://124412748

Reviewed by Tim Nguyen.

* Source/WebCore/css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::willMutateRules):
(WebCore::CSSStyleSheet::didMutateRules):
(WebCore::CSSStyleSheet::RuleMutationScope::RuleMutationScope):
(WebCore::CSSStyleSheet::RuleMutationScope::~RuleMutationScope):
* Source/WebCore/css/CSSStyleSheet.h:

Canonical link: https://commits.webkit.org/275953@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] a97ecb: [Scrolling] Log only to specific channel

2024-02-26 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a97ecb13f6813eb8e125b3b39ae2851446aa9d83
  
https://github.com/WebKit/WebKit/commit/a97ecb13f6813eb8e125b3b39ae2851446aa9d83
  Author: Matthieu Dubet 
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
M Source/WebCore/page/scrolling/ScrollingStateTree.cpp

  Log Message:
  ---
  [Scrolling] Log only to specific channel
https://bugs.webkit.org/show_bug.cgi?id=270124

Reviewed by Tim Horton.

* Source/WebCore/page/scrolling/ScrollingStateTree.cpp:
(WebCore::ScrollingStateTree::isValid const):

Canonical link: https://commits.webkit.org/275366@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] 99c494: [WPT] Sync css/css-color

2024-02-03 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 99c494742988f1c942b9afb99b37d01ef33bd596
  
https://github.com/WebKit/WebKit/commit/99c494742988f1c942b9afb99b37d01ef33bd596
  Author: Matthieu Dubet 
  Date:   2024-02-03 (Sat, 03 Feb 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-002-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-002.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/light-dark-currentcolor-in-color-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/light-dark-currentcolor-in-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-relative-color-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-relative-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-support.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-color/w3c-import.log
A 
LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt
A 
LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt

  Log Message:
  ---
  [WPT] Sync css/css-color
https://bugs.webkit.org/show_bug.cgi?id=268589
rdar://122141796

Reviewed by Tim Nguyen.

WPT @ 747837a9c8e7eea63593e35852c7d22b697af96f

* LayoutTests/TestExpectations:
* LayoutTests/imported/w3c/resources/resource-files.json:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-002-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/deprecated-sameas-002.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/light-dark-currentcolor-in-color-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/light-dark-currentcolor-in-color.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-relative-color-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-invalid-relative-color.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-support.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-color/w3c-import.log:
* 
LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt:
 Copied from 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt.
* 
LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt:
 Copied from 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-support-expected.txt.

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


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


[webkit-changes] [WebKit/WebKit] 8338db: [CSS] Implement supports() after @import rule

2024-01-26 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8338db44d91898abef308bf185572c5fd0fdfc69
  
https://github.com/WebKit/WebKit/commit/8338db44d91898abef308bf185572c5fd0fdfc69
  Author: Matthieu Dubet 
  Date:   2024-01-26 (Fri, 26 Jan 2024)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditions-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditions.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssimportrule-expected.txt
A 
LayoutTests/platform/gtk-wk2/imported/w3c/web-platform-tests/css/css-cascade/import-conditions-expected.txt
A 
LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/css-cascade/import-conditions-expected.txt
M Source/WebCore/css/CSSImportRule.cpp
M Source/WebCore/css/CSSImportRule.h
M Source/WebCore/css/CSSImportRule.idl
M Source/WebCore/css/StyleRuleImport.cpp
M Source/WebCore/css/StyleRuleImport.h
M Source/WebCore/css/parser/CSSParser.cpp
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSSupportsParser.cpp
M Source/WebCore/css/parser/CSSSupportsParser.h
M Source/WebCore/style/RuleSetBuilder.cpp

  Log Message:
  ---
  [CSS] Implement supports() after @import rule
https://bugs.webkit.org/show_bug.cgi?id=256180
rdar://109060734

Reviewed by Antti Koivisto.

https://drafts.csswg.org/css-cascade-5/#conditional-import
https://drafts.csswg.org/css-conditional-3/#typedef-supports-condition

The syntax is: [ supports( [  |  ] ) ]?

Like for the CSS.window.supports API, the supports() after @import
allows bare declaration.

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditions-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditions.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/cssom/cssimportrule-expected.txt:
* 
LayoutTests/platform/gtk-wk2/imported/w3c/web-platform-tests/css/css-cascade/import-conditions-expected.txt:
 Added.
* 
LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/css-cascade/import-conditions-expected.txt:
 Added.
* Source/WebCore/css/CSSImportRule.cpp:
(WebCore::CSSImportRule::layerName const):
(WebCore::CSSImportRule::supportsText const):
(WebCore::CSSImportRule::cssTextInternal const):
* Source/WebCore/css/CSSImportRule.h:
* Source/WebCore/css/CSSImportRule.idl:
* Source/WebCore/css/StyleRuleImport.cpp:
(WebCore::StyleRuleImport::create):
(WebCore::StyleRuleImport::StyleRuleImport):
* Source/WebCore/css/StyleRuleImport.h:
* Source/WebCore/css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseSupportsCondition):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeImportRule):
(WebCore::CSSParserImpl::consumeSupportsRule):
* Source/WebCore/css/parser/CSSSupportsParser.cpp:
(WebCore::CSSSupportsParser::supportsCondition):
* Source/WebCore/css/parser/CSSSupportsParser.h:
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::addRulesFromSheetContents):

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


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


[webkit-changes] [WebKit/WebKit] 0253cf: [WPT] Sync css-syntax, css-scoping, css-nesting

2024-01-16 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0253cf71e322dcdf7c1d53d62029fe92be4fe14f
  
https://github.com/WebKit/WebKit/commit/0253cf71e322dcdf7c1d53d62029fe92be4fe14f
  Author: Matthieu Dubet 
  Date:   2024-01-16 (Tue, 16 Jan 2024)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/WEB_FEATURES.yml
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/has-nesting-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/has-nesting-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/has-nesting.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/chrome-1492368-crash.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-001-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-001.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-002-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-002.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-003-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-003.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-004-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-004.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-005-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/host-is-005.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/keyframes-004.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/scoped-reference-animation-001-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/scoped-reference-animation-001.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/scoped-reference-animation-002-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/scoped-reference-animation-002.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/scoped-reference-animation-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/shadow-cascade-order-001.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/slotted-parsing-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/slotted-parsing.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/slotted-placeholder-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/slotted-with-pseudo-element-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/slotted-with-pseudo-element.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/w3c-import.log
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/WEB_FEATURES.yml
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/at-rule-in-declaration-list-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/at-rule-in-declaration-list.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/charset-is-not-a-rule.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/charset/support/utf8-bom-http-windows-1251.css.headers
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/charset/support/w3c-import.log
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/charset/w3c-import.log
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/custom-property-rule-ambiguity-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/custom-property-rule-ambiguity.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/missing-semicolon-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/missing-semicolon-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/missing-semicolon.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/non-ascii-codepoints-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/non-ascii-codepoints.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/serialize-consecutive-tokens-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/serialize-consecutive-tokens.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/support/missing-semicolon.css
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax/support/w3c-import.log
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-syntax

[webkit-changes] [WebKit/WebKit] 65f8b4: Grant reviewer status to Matthieu Dubet

2024-01-11 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 65f8b4d3130074b30db62a23b35e67f33d902349
  
https://github.com/WebKit/WebKit/commit/65f8b4d3130074b30db62a23b35e67f33d902349
  Author: Matthieu Dubet 
  Date:   2024-01-11 (Thu, 11 Jan 2024)

  Changed paths:
M metadata/contributors.json

  Log Message:
  ---
  Grant reviewer status to Matthieu Dubet

Reviewed by Tim Nguyen.

* metadata/contributors.json:

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


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


[webkit-changes] [WebKit/WebKit] e84a61: [CSS] Remove invalid scoping roots when outside th...

2023-12-22 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e84a617b4b4d0088df770ae59385090500d8c5f6
  
https://github.com/WebKit/WebKit/commit/e84a617b4b4d0088df770ae59385090500d8c5f6
  Author: Matthieu Dubet 
  Date:   2023-12-22 (Fri, 22 Dec 2023)

  Changed paths:
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M Source/WebCore/style/ElementRuleCollector.cpp

  Log Message:
  ---
  [CSS] Remove invalid scoping roots when outside the 
https://bugs.webkit.org/show_bug.cgi?id=266771
rdar://119998989

Reviewed by Antti Koivisto.

When there are multiple scoping roots identified from the ,
only keep the relevant ones to the  if it exists.

* LayoutTests/fast/css/scope-at-rule-expected.html:
* LayoutTests/fast/css/scope-at-rule.html:
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::scopeRulesMatch):

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


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


[webkit-changes] [WebKit/WebKit] e80242: [CSS] @scope can have orphan declarations with an ...

2023-12-21 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e80242bc95b6dd3197e2ecfb88a4634f6fc2c7bf
  
https://github.com/WebKit/WebKit/commit/e80242bc95b6dd3197e2ecfb88a4634f6fc2c7bf
  Author: Matthieu Dubet 
  Date:   2023-12-21 (Thu, 21 Dec 2023)

  Changed paths:
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h

  Log Message:
  ---
  [CSS] @scope can have orphan declarations with an implicit enclosing style 
rule
https://bugs.webkit.org/show_bug.cgi?id=266710
rdar://119937025

Reviewed by Antti Koivisto.

* LayoutTests/fast/css/scope-at-rule-expected.html:
* LayoutTests/fast/css/scope-at-rule.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeNestedGroupRules):

Rename the method to use a name closer to the spec

(WebCore::CSSParserImpl::consumeMediaRule):
(WebCore::CSSParserImpl::consumeSupportsRule):
(WebCore::CSSParserImpl::consumeScopeRule):

Allow declarations inside @scope, not just rules

(WebCore::CSSParserImpl::consumeLayerRule):
(WebCore::CSSParserImpl::consumeContainerRule):
(WebCore::CSSParserImpl::consumeRegularRuleList): Deleted.
* Source/WebCore/css/parser/CSSParserImpl.h:

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


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


[webkit-changes] [WebKit/WebKit] cee867: [CSS] Implement @scope implicit

2023-12-20 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: cee867893141fabf4fdeed3603a8986b74af3f88
  
https://github.com/WebKit/WebKit/commit/cee867893141fabf4fdeed3603a8986b74af3f88
  Author: Matthieu Dubet 
  Date:   2023-12-20 (Wed, 20 Dec 2023)

  Changed paths:
M LayoutTests/fast/css/scope-at-rule-expected.html
A LayoutTests/fast/css/scope-at-rule-green-14.css
M LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-external-expected.txt
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/StyleSheetContents.cpp
M Source/WebCore/css/StyleSheetContents.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/ElementRuleCollector.h
M Source/WebCore/style/RuleSetBuilder.cpp

  Log Message:
  ---
  [CSS] Implement @scope implicit
https://bugs.webkit.org/show_bug.cgi?id=266399
rdar://119659940

Reviewed by Antti Koivisto.

When the @scope rule doesn't have a  prelude,
the scoping root is the parent element of the owner node of the stylesheet
where the @scope rule is defined.

We store in the @scope rule a pointer to the owner StyleSheetContent,
which will allow us to find the parent element of it at rule matching time,
to determine the scoping root(s).

https://drafts.csswg.org/css-cascade-6/#scope-limits

* LayoutTests/fast/css/scope-at-rule-expected.html:
* LayoutTests/fast/css/scope-at-rule-green-14.css: Added.
(@scope):
* LayoutTests/fast/css/scope-at-rule.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-external-expected.txt:
* Source/WebCore/css/StyleRule.cpp:
(WebCore::StyleRuleScope::styleSheetContents const):
(WebCore::StyleRuleScope::setStyleSheetContents):
* Source/WebCore/css/StyleRule.h:
* Source/WebCore/css/StyleSheetContents.h:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeScopeRule):
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::ruleMatches):
(WebCore::Style::ElementRuleCollector::scopeRulesMatch):
* Source/WebCore/style/ElementRuleCollector.h:
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::addChildRule):

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


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


[webkit-changes] [WebKit/WebKit] 334b3c: [CSS] Don't crash when trying to insert namespace ...

2023-12-16 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 334b3cb1ae81c30f5a72dccad4c7f019df15e321
  
https://github.com/WebKit/WebKit/commit/334b3cb1ae81c30f5a72dccad4c7f019df15e321
  Author: Matthieu Dubet 
  Date:   2023-12-16 (Sat, 16 Dec 2023)

  Changed paths:
A LayoutTests/fast/css/insertrule-namespace-after-layer-expected.txt
A LayoutTests/fast/css/insertrule-namespace-after-layer.html
M Source/WebCore/css/StyleSheetContents.cpp

  Log Message:
  ---
  [CSS] Don't crash when trying to insert namespace rule after layer rule
rdar://117071899

Reviewed by Antti Koivisto.

By spec, namespace rule can't be inserted after a layer rule.

https://drafts.csswg.org/css-namespaces/#syntax

* LayoutTests/fast/css/insertrule-namespace-after-layer-expected.txt: Added.
* LayoutTests/fast/css/insertrule-namespace-after-layer.html: Added.
* Source/WebCore/css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::wrapperInsertRule):

Originally-landed-as: 267815.351@safari-7617-branch (cf04124d9563). 
rdar://119597833
Canonical link: https://commits.webkit.org/272170@main


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


[webkit-changes] [WebKit/WebKit] 25213c: [CSS] @scope prelude should take nesting into account

2023-12-15 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 25213c389f501f946d6e5516b872a69219907f81
  
https://github.com/WebKit/WebKit/commit/25213c389f501f946d6e5516b872a69219907f81
  Author: Matthieu Dubet 
  Date:   2023-12-15 (Fri, 15 Dec 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-cssom.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSParserSelector.cpp
M Source/WebCore/css/parser/CSSParserSelector.h

  Log Message:
  ---
  [CSS] @scope prelude should take nesting into account
https://bugs.webkit.org/show_bug.cgi?id=266467
rdar://119711922

Reviewed by Antti Koivisto.

The  should be prepended by either nothing,
& or :scope (depending on the outer context).

The  should be prepended by :scope.

* LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-cssom.html:

https://github.com/w3c/csswg-drafts/issues/9621

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText const):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::appendImplicitSelectorPseudoClassScopeIfNeeded):
(WebCore::appendImplicitSelectorNestingParentIfNeeded):
(WebCore::CSSParserImpl::appendImplicitSelectorIfNeeded):
(WebCore::CSSParserImpl::consumeScopeRule):
(WebCore::CSSParserImpl::consumeStyleRule):
* Source/WebCore/css/parser/CSSParserImpl.h:
* Source/WebCore/css/parser/CSSParserSelector.cpp:
(WebCore::CSSParserSelector::leftmostSimpleSelector const):

const version of the existing non-const one

(WebCore::CSSParserSelector::startsWithExplicitCombinator const):
* Source/WebCore/css/parser/CSSParserSelector.h:

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


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


[webkit-changes] [WebKit/WebKit] f99c19: [CSS] Implement :scope in @scope prelude

2023-12-14 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f99c196be2946f17e35e52ff6e4355643943df9b
  
https://github.com/WebKit/WebKit/commit/f99c196be2946f17e35e52ff6e4355643943df9b
  Author: Matthieu Dubet 
  Date:   2023-12-14 (Thu, 14 Dec 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt
M Source/WebCore/style/ElementRuleCollector.cpp

  Log Message:
  ---
  [CSS] Implement :scope in @scope prelude
https://bugs.webkit.org/show_bug.cgi?id=266405
rdar://119661541

Reviewed by Antti Koivisto.

:scope in  represents the outter scoping root,
:scope in  represents the inner scoping root.

https://drafts.csswg.org/css-cascade-6/#scope-limits

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt:
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::scopeRulesMatch):

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


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


[webkit-changes] [WebKit/WebKit] 0dd51c: [CSS] Fix @supports nested with declarations

2023-12-13 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0dd51c9b2c6dbfba7603249bfb0f16abf4a9b2bd
  
https://github.com/WebKit/WebKit/commit/0dd51c9b2c6dbfba7603249bfb0f16abf4a9b2bd
  Author: Matthieu Dubet 
  Date:   2023-12-13 (Wed, 13 Dec 2023)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/at-supports-048-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/at-supports-048-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/at-supports-048.html
M Source/WebCore/css/parser/CSSParserImpl.cpp

  Log Message:
  ---
  [CSS] Fix @supports nested with declarations
https://bugs.webkit.org/show_bug.cgi?id=259752
rdar://113652033

Reviewed by Antti Koivisto.

Unfortunately, the parser code use local member variables 
(m_parsedProperties/m_parsedRules)
to store parsing results instead of using return values and the programming 
language builtin stack.

This patch uses the existing stack mecanism 
CSSParserImpl::runInNewNestingContext()
to isolate the parsing of the @supports(...) prelude declaration
from the rest of the parsing (specifically, from declarations before or after 
this @supports rule at the same nesting level)

This fixes code like:

div {
  color: green;
  @supports() {

  }
}

where the `color: green` declaration was being ignored.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/at-supports-048-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/at-supports-048-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/at-supports-048.html:
 Added.
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::supportsDeclaration):

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


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


[webkit-changes] [WebKit/WebKit] 8a947a: [CSS] Fix wrong scoping roots with nested @scope

2023-12-12 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8a947a7a91b87990311a8accea11c2acf7446439
  
https://github.com/WebKit/WebKit/commit/8a947a7a91b87990311a8accea11c2acf7446439
  Author: Matthieu Dubet 
  Date:   2023-12-12 (Tue, 12 Dec 2023)

  Changed paths:
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M Source/WebCore/style/RuleSet.cpp

  Log Message:
  ---
  [CSS] Fix wrong scoping roots with nested @scope
https://bugs.webkit.org/show_bug.cgi?id=266248
rdar://119511916

Reviewed by Tim Nguyen.

The @scope are stored from child to parent (innermost to outermost)
while the scoping roots are evaluated in the reverse order.
This patch uses outermost to innermost for everything.

* LayoutTests/fast/css/scope-at-rule-expected.html:
* LayoutTests/fast/css/scope-at-rule.html:
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::scopeRulesFor const):

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


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


[webkit-changes] [WebKit/WebKit] 2f8a6c: [CSS] @scope invalidation

2023-12-11 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2f8a6cd85ced97a0d2f33632f3a7b11e96050b30
  
https://github.com/WebKit/WebKit/commit/2f8a6cd85ced97a0d2f33632f3a7b11e96050b30
  Author: Matthieu Dubet 
  Date:   2023-12-11 (Mon, 11 Dec 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-focus-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-hover-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt
M Source/WebCore/style/RuleFeature.cpp
M Source/WebCore/style/RuleFeature.h
M Source/WebCore/style/RuleSet.cpp

  Log Message:
  ---
  [CSS] @scope invalidation
https://bugs.webkit.org/show_bug.cgi?id=265996
rdar://119313058

Reviewed by Antti Koivisto.

When there is a DOM mutation in an ancestor or itself, we need to
reevaluate if the scope is matching.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-focus-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-hover-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt:
* Source/WebCore/style/RuleFeature.cpp:
(WebCore::Style::RuleFeatureSet::collectFeatures):
* Source/WebCore/style/RuleFeature.h:
(WebCore::Style::RuleFeatureSet::collectFeatures):
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::addRule):

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


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


[webkit-changes] [WebKit/WebKit] dedf70: [CSS] Mark selector as implicit to ignore them in ...

2023-12-07 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dedf708653ff64d0743e6be773311fec317cd601
  
https://github.com/WebKit/WebKit/commit/dedf708653ff64d0743e6be773311fec317cd601
  Author: Matthieu Dubet 
  Date:   2023-12-07 (Thu, 07 Dec 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/parser/CSSParserImpl.cpp

  Log Message:
  ---
  [CSS] Mark selector as implicit to ignore them in specificity calculation
https://bugs.webkit.org/show_bug.cgi?id=265992
rdar://119307433

Reviewed by Antti Koivisto.

We sometimes insert non author written selectors in the selector list
(for cases like `:has(> foo)` or scoped or nested selectors).
We should not count those implicit selectors in the specificity calculation.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::SelectorSpecificity::specificityTuple const):
(WebCore::SelectorSpecificity::debugDescription const):
(WebCore::operator<<):
(WebCore::selectorSpecificity):
(WebCore::maxSpecificity):
(WebCore::simpleSelectorSpecificity):
(WebCore::CSSSelector::computeSpecificityTuple const):
(WebCore::CSSSelector::CSSSelector):
* Source/WebCore/css/CSSSelector.h:
(WebCore::CSSSelector::setImplicit):
(WebCore::CSSSelector::isImplicit const):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeStyleRule):

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


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


[webkit-changes] [WebKit/WebKit] b7c1e9: [CSS] Activate the CSS @scope feature in stable

2023-12-07 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b7c1e9880ff4745bcf53a671739d0e875937e380
  
https://github.com/WebKit/WebKit/commit/b7c1e9880ff4745bcf53a671739d0e875937e380
  Author: Matthieu Dubet 
  Date:   2023-12-07 (Thu, 07 Dec 2023)

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

  Log Message:
  ---
  [CSS] Activate the CSS @scope feature in stable
rdar://119261250

Reviewed by Tim Nguyen.

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

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


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


[webkit-changes] [WebKit/WebKit] 195082: [CSS] Unreviewed test gardening

2023-12-07 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 195082ca4f51252e608bbdd9753db2ed5aeb6d96
  
https://github.com/WebKit/WebKit/commit/195082ca4f51252e608bbdd9753db2ed5aeb6d96
  Author: Matthieu Dubet 
  Date:   2023-12-07 (Thu, 07 Dec 2023)

  Changed paths:
M LayoutTests/TestExpectations

  Log Message:
  ---
  [CSS] Unreviewed test gardening

(css-nesting and css-scoping)

* LayoutTests/TestExpectations:

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


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


[webkit-changes] [WebKit/WebKit] ef4eef: [CSS] Implement @scope rule nested inside style rule

2023-12-06 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ef4eef3a7abb2e62ca9a69f8c7b81d2659db5a80
  
https://github.com/WebKit/WebKit/commit/ef4eef3a7abb2e62ca9a69f8c7b81d2659db5a80
  Author: Matthieu Dubet 
  Date:   2023-12-06 (Wed, 06 Dec 2023)

  Changed paths:
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt
M Source/WebCore/css/CSSScopeRule.cpp
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/style/RuleSetBuilder.cpp
M Source/WebCore/style/RuleSetBuilder.h

  Log Message:
  ---
  [CSS] Implement @scope rule nested inside style rule
https://bugs.webkit.org/show_bug.cgi?id=265368
rdar://103147385

Reviewed by Antti Koivisto.

Spec: https://drafts.csswg.org/css-nesting/#nesting-at-scope

* LayoutTests/fast/css/scope-at-rule-expected.html:
* LayoutTests/fast/css/scope-at-rule.html:

Example removed because unsure about the actual spec expectation for this:
div {
  @scope (.a) {
.green { color: green; }
  }
}
Should the inner rule be translated to ":scope .green" ? ":is(div) .green" ? 
":is(div) :scope .green" ?

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt:
* Source/WebCore/css/CSSScopeRule.cpp:
(WebCore::CSSScopeRule::start const):
(WebCore::CSSScopeRule::end const):
* Source/WebCore/css/StyleRule.cpp:
(WebCore::StyleRuleScope::StyleRuleScope):
(WebCore::StyleRuleScope::scopeStart const): Deleted.
(WebCore::StyleRuleScope::scopeEnd const): Deleted.
* Source/WebCore/css/StyleRule.h:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeScopeRule):
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::addChildRule):
(WebCore::Style::RuleSetBuilder::resolveSelectorListWithNesting):
(WebCore::Style::RuleSetBuilder::addStyleRule):
* Source/WebCore/style/RuleSetBuilder.h:

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


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


[webkit-changes] [WebKit/WebKit] 40cf94: [CSS] Respect proximity in the cascade

2023-12-05 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 40cf94b5b6f9268ea70a80d6bf2f871115c11882
  
https://github.com/WebKit/WebKit/commit/40cf94b5b6f9268ea70a80d6bf2f871115c11882
  Author: Matthieu Dubet 
  Date:   2023-12-05 (Tue, 05 Dec 2023)

  Changed paths:
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-proximity-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/ElementRuleCollector.h

  Log Message:
  ---
  [CSS] Respect proximity in the cascade
https://bugs.webkit.org/show_bug.cgi?id=264943
rdar://118507507

Reviewed by Antti Koivisto.

https://drafts.csswg.org/css-cascade-6/#cascade-proximity

CSS Cascade level 6 introduces the new concept of proximity to decide
which rule to apply : the closest scope will be prioritized.

* LayoutTests/fast/css/scope-at-rule-expected.html:
* LayoutTests/fast/css/scope-at-rule.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-proximity-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt:
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::addMatchedRule):
(WebCore::Style::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::Style::ElementRuleCollector::scopeRulesMatch):
(WebCore::Style::compareRules):
* Source/WebCore/style/ElementRuleCollector.h:

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


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


[webkit-changes] [WebKit/WebKit] 0bc5d3: [CSS] :scope matching for multiple scoping roots

2023-12-04 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0bc5d3ab92365420fc03f522bc29a6e8c6f9025c
  
https://github.com/WebKit/WebKit/commit/0bc5d3ab92365420fc03f522bc29a6e8c6f9025c
  Author: Matthieu Dubet 
  Date:   2023-12-04 (Mon, 04 Dec 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-container-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-focus-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-hover-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-layer-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-media-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-supports-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules.html
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/ElementRuleCollector.h

  Log Message:
  ---
  [CSS] :scope matching for multiple scoping roots
https://bugs.webkit.org/show_bug.cgi?id=265288
rdar://118748899

Reviewed by Antti Koivisto.

https://drafts.csswg.org/css-cascade-6/#scope-limits

This patch generates multiple matched rules, one for each scoping root.
They will all participate in the selector matching with a distinct :scope, and 
will be selected
based on specificity (and proximity in a future patch).

* LayoutTests/TestExpectations:
* LayoutTests/fast/css/scope-at-rule-expected.html:
* LayoutTests/fast/css/scope-at-rule.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-container-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-focus-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-hover-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-layer-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-media-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-supports-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules.html:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsScopeRoot):

Remove the assumption that :scope always means :root outside of SelectorQuery

* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::ruleMatches):
(WebCore::Style::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::Style::ElementRuleCollector::scopeRulesMatch):
* Source/WebCore/style/ElementRuleCollector.h:

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


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


[webkit-changes] [WebKit/WebKit] f658df: [CSS] Scoped style rules accept relative selector ...

2023-11-30 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f658dff67d19b38c9e0ddff921d51fd7d8f722fb
  
https://github.com/WebKit/WebKit/commit/f658dff67d19b38c9e0ddff921d51fd7d8f722fb
  Author: Matthieu Dubet 
  Date:   2023-11-30 (Thu, 30 Nov 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-cssom.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSParserSelector.cpp
M Source/WebCore/css/parser/CSSParserSelector.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp

  Log Message:
  ---
  [CSS] Scoped style rules accept relative selector list
https://bugs.webkit.org/show_bug.cgi?id=265289
rdar://118749004

Reviewed by Antti Koivisto.

Like nested style rule, scoped style rules accept a relative selector
list as the prelude for their rule list.
The implicit ":scope" or "&" in their prelude has to be added explicitely when 
necessary.

https://drafts.csswg.org/css-cascade-6/#scoped-style-rules

* LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-cssom.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt:

For the moment, until the @scope feature is more complete, those tests passing 
or failing don't mean anything.

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::hasExplicitPseudoClassScope const):
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/StyleRule.h:
(WebCore::StyleRuleBase::isGroupRule const):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeRegularRuleList):
(WebCore::CSSParserImpl::consumeScopeRule):
(WebCore::CSSParserImpl::consumeStyleRule):
* Source/WebCore/css/parser/CSSParserImpl.h:
(WebCore::CSSParserImpl::isStyleNestedContext):
(WebCore::CSSParserImpl::isNestedContext):
* Source/WebCore/css/parser/CSSParserSelector.cpp:
(WebCore::CSSParserSelector::hasExplicitPseudoClassScope const):
(WebCore::CSSParserSelector::appendTagHistoryAsRelative):
* Source/WebCore/css/parser/CSSParserSelector.h:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeNestedComplexSelector):

We move the code to add the prepend the implicit selector from CSSSelectorParser
to CSSParserImpl where we know the type of the parent rule
(because we need to preprend either & or :scope)

(WebCore::CSSSelectorParser::resolveNestingParent):

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


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


[webkit-changes] [WebKit/WebKit] 3ff376: [CSS] Don't construct CSSSelectorList when not needed

2023-11-29 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3ff376ea3d2a1dfc297cbb114f416641bc475e0a
  
https://github.com/WebKit/WebKit/commit/3ff376ea3d2a1dfc297cbb114f416641bc475e0a
  Author: Matthieu Dubet 
  Date:   2023-11-29 (Wed, 29 Nov 2023)

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

  Log Message:
  ---
  [CSS] Don't construct CSSSelectorList when not needed
https://bugs.webkit.org/show_bug.cgi?id=265518
rdar://118931010

Reviewed by Antti Koivisto.

CSSSelectorList is an optimized data structure,
we should only construct it when it's actually needed (so not when empty or 
error)
and keep the editable CSSParserSelector data structure until then.

* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeStyleRule):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::parseCSSParserSelectorList):
(WebCore::parseCSSSelectorList):
(WebCore::CSSSelectorParser::consumeSelectorList):
(WebCore::CSSSelectorParser::consumeComplexSelectorList):
(WebCore::CSSSelectorParser::consumeRelativeSelectorList):
(WebCore::CSSSelectorParser::consumeNestedSelectorList):
(WebCore::CSSSelectorParser::consumeForgivingSelectorList):
(WebCore::CSSSelectorParser::consumeComplexForgivingSelectorList):
(WebCore::CSSSelectorParser::consumeNestedComplexForgivingSelectorList):
(WebCore::CSSSelectorParser::consumeCompoundSelectorList):
(WebCore::CSSSelectorParser::consumePseudo):
* Source/WebCore/css/parser/CSSSelectorParser.h:

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


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


[webkit-changes] [WebKit/WebKit] f40b35: [CSS] Update Full Size Kana map to Unicode 15.0

2023-11-29 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f40b35978cf406e1d82902dcb8106232fe0cf32a
  
https://github.com/WebKit/WebKit/commit/f40b35978cf406e1d82902dcb8106232fe0cf32a
  Author: Matthieu Dubet 
  Date:   2023-11-29 (Wed, 29 Nov 2023)

  Changed paths:
M LayoutTests/TestExpectations
A LayoutTests/fast/css/text-transform-full-size-kana-expected.html
A LayoutTests/fast/css/text-transform-full-size-kana.html
M Source/WebCore/rendering/RenderText.cpp

  Log Message:
  ---
  [CSS] Update Full Size Kana map to Unicode 15.0
https://bugs.webkit.org/show_bug.cgi?id=258671
rdar://111508663

Reviewed by Darin Adler.

The table has been updated in the CSS Text specification:
https://github.com/w3c/csswg-drafts/commit/9110c78e787ac8e8f85825dd0e37d0736943cdc5

The code now use code points (because some of the mapped code points
are represented by more than one code unit).
The code is careful about correctly cutting the unnecessary high level bits
for code points which are effectively represented which a single UTF-16 code 
unit.

* LayoutTests/TestExpectations:
* LayoutTests/fast/css/text-transform-full-size-kana-expected.html: Added.
* LayoutTests/fast/css/text-transform-full-size-kana.html: Added.
* Source/WebCore/rendering/RenderText.cpp:
(WebCore::convertToFullSizeKana):

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


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


[webkit-changes] [WebKit/WebKit] ee0320: [CSS] Matched element should be within the @scope

2023-11-24 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ee0320f9080b7d19f60aee912ac8acd10464f418
  
https://github.com/WebKit/WebKit/commit/ee0320f9080b7d19f60aee912ac8acd10464f418
  Author: Matthieu Dubet 
  Date:   2023-11-24 (Fri, 24 Nov 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/fast/css/scope-at-rule-expected.html
M LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-deep-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-focus-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-hover-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-proximity-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt
M Source/WebCore/style/ElementRuleCollector.cpp
M Source/WebCore/style/RuleSetBuilder.cpp
M Source/WebCore/style/RuleSetBuilder.h

  Log Message:
  ---
  [CSS] Matched element should be within the @scope
https://bugs.webkit.org/show_bug.cgi?id=265241
rdar://118713295

Reviewed by Antti Koivisto.

This patch adds one part of the @scope matching algorithm: the matched element
has to be within the scope.

https://drafts.csswg.org/css-cascade-6/#scoped-styles

* LayoutTests/TestExpectations:
* LayoutTests/fast/css/scope-at-rule-expected.html:
* LayoutTests/fast/css/scope-at-rule.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-deep-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-evaluation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-focus-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-hover-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-implicit-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-invalidation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-nesting-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-proximity-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-specificity-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-visited-cssom-expected.txt:
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::matchUARules):
(WebCore::Style::ElementRuleCollector::ruleMatches):
(WebCore::Style::ElementRuleCollector::scopeRulesMatch):
(WebCore::Style::ElementRuleCollector::matchAllRules):
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::resolveSelectorListWithNesting):
(WebCore::Style::RuleSetBuilder::addStyleRule):
* Source/WebCore/style/RuleSetBuilder.h:

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


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


[webkit-changes] [WebKit/WebKit] 5d2ddd: [CSS] Add @scope rule to RuleSet

2023-11-23 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5d2ddd6e61126370c7da861fd5f2034818a7960c
  
https://github.com/WebKit/WebKit/commit/5d2ddd6e61126370c7da861fd5f2034818a7960c
  Author: Matthieu Dubet 
  Date:   2023-11-23 (Thu, 23 Nov 2023)

  Changed paths:
M LayoutTests/TestExpectations
A LayoutTests/fast/css/scope-at-rule-expected.html
A LayoutTests/fast/css/scope-at-rule.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-name-defining-rules-expected.txt
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/RuleSetBuilder.cpp
M Source/WebCore/style/RuleSetBuilder.h
M Source/WebCore/style/StyleScopeRuleSets.cpp
M Source/WebCore/style/StyleScopeRuleSets.h
M Source/WebCore/style/StyleSharingResolver.cpp

  Log Message:
  ---
  [CSS] Add @scope rule to RuleSet
https://bugs.webkit.org/show_bug.cgi?id=264500
rdar://118181109

Reviewed by Antti Koivisto.

This patch implements the mechanism to get the ancestor @scope rules (if any)
during element rule collection.

It also desactivates style sharing for scoped rules.

The actual matching is not implemented yet.

https://drafts.csswg.org/css-cascade-6/#scoped-styles

* LayoutTests/TestExpectations:
* LayoutTests/fast/css/scope-at-rule-expected.html: Added.
* LayoutTests/fast/css/scope-at-rule.html: Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-name-defining-rules-expected.txt:
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::Style::ElementRuleCollector::scopeRulesMatch):
* Source/WebCore/style/ElementRuleCollector.h:
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::addRule):
(WebCore::Style::RuleSet::scopeRulesFor const):
* Source/WebCore/style/RuleSet.h:
(WebCore::Style::RuleSet::hasScopeRules const):
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::addChildRule):
(WebCore::Style::RuleSetBuilder::addStyleRuleWithSelectorList):
* Source/WebCore/style/RuleSetBuilder.h:
* Source/WebCore/style/StyleScopeRuleSets.cpp:
(WebCore::Style::ScopeRuleSets::hasScopeRules const):
* Source/WebCore/style/StyleScopeRuleSets.h:
* Source/WebCore/style/StyleSharingResolver.cpp:
(WebCore::Style::SharingResolver::resolve):

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


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


[webkit-changes] [WebKit/WebKit] 9ff407: [CSS] @scope parsing

2023-11-11 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9ff40711991962a45f64cc0c36beec81d5eb7367
  
https://github.com/WebKit/WebKit/commit/9ff40711991962a45f64cc0c36beec81d5eb7367
  Author: Matthieu Dubet 
  Date:   2023-11-11 (Sat, 11 Nov 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/idlharness-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-cssom-expected.txt
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M Source/WebCore/CMakeLists.txt
M Source/WebCore/DerivedSources-input.xcfilelist
M Source/WebCore/DerivedSources-output.xcfilelist
M Source/WebCore/DerivedSources.make
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/bindings/js/JSCSSRuleCustom.cpp
M Source/WebCore/bindings/js/WebCoreBuiltinNames.h
M Source/WebCore/contentextensions/ContentExtensionParser.cpp
M Source/WebCore/css/CSSPageRule.cpp
A Source/WebCore/css/CSSScopeRule.cpp
A Source/WebCore/css/CSSScopeRule.h
A Source/WebCore/css/CSSScopeRule.idl
M Source/WebCore/css/CSSStyleRule.cpp
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/StyleRuleType.h
M Source/WebCore/css/StyleSheetContents.cpp
M Source/WebCore/css/parser/CSSAtRuleID.cpp
M Source/WebCore/css/parser/CSSAtRuleID.h
M Source/WebCore/css/parser/CSSParser.cpp
M Source/WebCore/css/parser/CSSParser.h
M Source/WebCore/css/parser/CSSParserContext.cpp
M Source/WebCore/css/parser/CSSParserContext.h
M Source/WebCore/css/parser/CSSParserEnum.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/parser/CSSSelectorParser.h
M Source/WebCore/dom/SelectorQuery.cpp
M Source/WebCore/inspector/InspectorStyleSheet.cpp
M Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
M Source/WebCore/style/RuleSetBuilder.cpp
M Source/WebCore/testing/Internals.cpp

  Log Message:
  ---
  [CSS] @scope parsing
https://bugs.webkit.org/show_bug.cgi?id=264498
rdar://118180841

Reviewed by Antti Koivisto.

This is boilerplate code to add initial
support for the @scope CSS rule and its parsing.

https://drafts.csswg.org/css-cascade-6/#scope-syntax

It also contains a renaming of "parseCSSSelector" to the more exact name 
"parseCSSSelectorList".

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/idlharness-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/scope-cssom-expected.txt:
* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources-input.xcfilelist:
* Source/WebCore/DerivedSources-output.xcfilelist:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/bindings/js/JSCSSRuleCustom.cpp:
(WebCore::toJSNewlyCreated):
* Source/WebCore/bindings/js/WebCoreBuiltinNames.h:
* Source/WebCore/contentextensions/ContentExtensionParser.cpp:
(WebCore::ContentExtensions::isValidCSSSelector):
* Source/WebCore/css/CSSPageRule.cpp:
(WebCore::CSSPageRule::setSelectorText):
* Source/WebCore/css/CSSScopeRule.cpp: Added.
(WebCore::CSSScopeRule::CSSScopeRule):
(WebCore::CSSScopeRule::create):
(WebCore::CSSScopeRule::styleRuleScope const):
(WebCore::CSSScopeRule::cssText const):
(WebCore::CSSScopeRule::start const):
(WebCore::CSSScopeRule::end const):
* Source/WebCore/css/CSSScopeRule.h: Added.
* Source/WebCore/css/CSSScopeRule.idl: Added.
* Source/WebCore/css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::setSelectorText):
* Source/WebCore/css/StyleRule.cpp:
(WebCore::StyleRuleBase::createCSSOMWrapper const):
(WebCore::StyleRuleBase::visitDerived):
(WebCore::StyleRuleWithNesting::StyleRuleWithNesting):
(WebCore::m_originalSelectorList):
(WebCore::StyleRuleWithNesting::create):
(WebCore::StyleRuleScope::create):
(WebCore::StyleRuleScope::copy const):
(WebCore::StyleRuleScope::StyleRuleScope):
(WebCore::StyleRuleScope::scopeStart const):
(WebCore::StyleRuleScope::scopeEnd const):
* Source/WebCore/css/StyleRule.h:
(WebCore::StyleRuleBase::isScopeRule const):
(isType):
* Source/WebCore/css/StyleRuleType.h:
* Source/WebCore/css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::traverseSubresources const):
* Source/WebCore/css/parser/CSSAtRuleID.cpp:
(WebCore::cssAtRuleID):
* Source/WebCore/css/parser/CSSAtRuleID.h:

[webkit-changes] [WebKit/WebKit] f0c94e: [WPT] Fix import of css/css-cascade

2023-11-10 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f0c94e1f280ff6e8fc74f4bdc789857350caf08f
  
https://github.com/WebKit/WebKit/commit/f0c94e1f280ff6e8fc74f4bdc789857350caf08f
  Author: Matthieu Dubet 
  Date:   2023-11-10 (Fri, 10 Nov 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/idlharness-expected.txt
A LayoutTests/imported/w3c/web-platform-tests/interfaces/css-cascade-6.idl
A LayoutTests/imported/w3c/web-platform-tests/interfaces/css-cascade.idl

  Log Message:
  ---
  [WPT] Fix import of css/css-cascade
rdar://118203546

Reviewed by Tim Nguyen.

Missing files from previous import https://commits.webkit.org/270319@main

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/idlharness-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/interfaces/css-cascade-6.idl: 
Added.
* LayoutTests/imported/w3c/web-platform-tests/interfaces/css-cascade.idl: Added.

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


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


[webkit-changes] [WebKit/WebKit] 0a5c3f: [WPT] Sync css/css-nesting

2023-11-10 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0a5c3fc24b7029a36845d7a97928a520d8d42b64
  
https://github.com/WebKit/WebKit/commit/0a5c3fc24b7029a36845d7a97928a520d8d42b64
  Author: Matthieu Dubet 
  Date:   2023-11-09 (Thu, 09 Nov 2023)

  Changed paths:
M LayoutTests/TestExpectations
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-001-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-001.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-002-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-002.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-003-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-003.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-004-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-004.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-005-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-005.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ident-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ident-recovery-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ident-recovery.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ident.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log

  Log Message:
  ---
  [WPT] Sync css/css-nesting
https://bugs.webkit.org/show_bug.cgi?id=264515
rdar://118197558

Reviewed by Tim Nguyen.

WPT @ 70bbf2794df7512689347271be4a45ccb7ff9e8f

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-001-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-001.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-002-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-002.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-003-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-003.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-004-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-004.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-005-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/host-nesting-005.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ident-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ident-recovery-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ident-recovery.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ident.html:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log:

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


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


[webkit-changes] [WebKit/WebKit] 5358bb: [WPT] Sync css-cascade

2023-11-07 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5358bb11f264b9ffdf1f2c9b1d9114afc729b5a2
  
https://github.com/WebKit/WebKit/commit/5358bb11f264b9ffdf1f2c9b1d9114afc729b5a2
  Author: Matthieu Dubet 
  Date:   2023-11-07 (Tue, 07 Nov 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-001-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-001.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-002.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-inherit-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-color.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-visited-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-expected.txt
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop_include=0-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop_include=1-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop_include=2-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop_include=3-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop_include=4-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop_include=5-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop_include=6-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-noop_include=7-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer.html
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop_include=0-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop_include=1-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop_include=2-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop_include=3-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop_include=4-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop_include=5-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop_include=6-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-noop_include=7-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-visited-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-unset-color.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-unset-visited-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/at-scope-parsing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/idlharness-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/idlharness.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditional-001.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditional-002-expected.xht
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditional-002.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditions-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/import-conditions.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/important-prop-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/important-prop.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/important-vs-inline-001-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/important-vs-inline-001.html
A 
LayoutTests/imported/w3c/web

[webkit-changes] [WebKit/WebKit] f93d71: [CSS] visited color should not be computed only fo...

2023-11-06 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f93d71021b6613c26c7db8da6be03f88169d32c5
  
https://github.com/WebKit/WebKit/commit/f93d71021b6613c26c7db8da6be03f88169d32c5
  Author: Matthieu Dubet 
  Date:   2023-11-06 (Mon, 06 Nov 2023)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-visited-fallback-expected.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/currentcolor-visited-fallback.html
A 
LayoutTests/imported/w3c/web-platform-tests/svg/color-inherit-link-visited-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/svg/color-inherit-link-visited-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/svg/color-inherit-link-visited.html
M 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/svg/import/animate-elem-41-t-manual-expected.txt
M 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/svg/import/animate-elem-78-t-manual-expected.txt
M 
LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/animate-elem-41-t-manual-expected.txt
M 
LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/animate-elem-78-t-manual-expected.txt
M 
LayoutTests/platform/mac/imported/w3c/web-platform-tests/svg/import/animate-elem-41-t-manual-expected.txt
M 
LayoutTests/platform/mac/imported/w3c/web-platform-tests/svg/import/animate-elem-78-t-manual-expected.txt
M Source/WebCore/style/StyleBuilder.cpp
M Source/WebCore/style/StyleBuilderState.h

  Log Message:
  ---
  [CSS] visited color should not be computed only for links
https://bugs.webkit.org/show_bug.cgi?id=264109
rdar://115289075

Reviewed by Antti Koivisto and Tim Nguyen.

Before this patch, we are computing the visited link color only
when inside a link which creates a bug when we should inherit a computed color 
from another kind of element.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-visited-fallback-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-visited-fallback-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-visited-fallback.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/svg/color-inherit-link-visited-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/svg/color-inherit-link-visited-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/svg/color-inherit-link-visited.html:
 Added.
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/svg/import/animate-elem-41-t-manual-expected.txt:
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/svg/import/animate-elem-78-t-manual-expected.txt:
* 
LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/animate-elem-41-t-manual-expected.txt:
* 
LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/animate-elem-78-t-manual-expected.txt:
* 
LayoutTests/platform/mac/imported/w3c/web-platform-tests/svg/import/animate-elem-41-t-manual-expected.txt:
* 
LayoutTests/platform/mac/imported/w3c/web-platform-tests/svg/import/animate-elem-78-t-manual-expected.txt:
* Source/WebCore/style/StyleBuilder.cpp:
(WebCore::Style::Builder::applyProperty):
* Source/WebCore/style/StyleBuilderState.h:
(WebCore::Style::BuilderState::applyPropertyToVisitedLinkStyle const):

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


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


[webkit-changes] [WebKit/WebKit] 2b7aa2: [ScrollingTree mac] Fix scrolling when event regio...

2023-11-01 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2b7aa256562d1d2fa0bc22b53d9065a0d0556064
  
https://github.com/WebKit/WebKit/commit/2b7aa256562d1d2fa0bc22b53d9065a0d0556064
  Author: Matthieu Dubet 
  Date:   2023-11-01 (Wed, 01 Nov 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/pointerevents/pointerevent_hit_test_scroll_visible_descendant-expected.txt
M Source/WebCore/page/scrolling/mac/ScrollingTreeMac.mm
M Source/WebCore/platform/graphics/cocoa/WebCoreCALayerExtras.h
M Source/WebCore/platform/graphics/cocoa/WebCoreCALayerExtras.mm
M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm

  Log Message:
  ---
  [ScrollingTree mac] Fix scrolling when event region and scroll container are 
distinct
https://bugs.webkit.org/show_bug.cgi?id=258255
rdar://110954175

Reviewed by Simon Fraser.

The current code (mac) assumes that the platform layer which reacts to
a scroll event is also the one containing the scroll container but it's not 
always the case
(like WPT example: when the scroll container has pointer-event:none but some 
child still reacts to event).

* 
LayoutTests/imported/w3c/web-platform-tests/pointerevents/pointerevent_hit_test_scroll_visible_descendant-expected.txt:
* Source/WebCore/page/scrolling/mac/ScrollingTreeMac.mm:
(ScrollingTreeMac::scrollingNodeForPoint):
* Source/WebCore/platform/graphics/cocoa/WebCoreCALayerExtras.h:
(WebCore::collectDescendantLayersAtPoint):
* Source/WebCore/platform/graphics/cocoa/WebCoreCALayerExtras.mm:
(WebCore::collectDescendantLayersAtPoint):
(WebCore::layersAtPointToCheckForScrolling):
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm:
(WebKit::RemoteScrollingTreeMac::scrollingNodeForPoint):

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


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


[webkit-changes] [WebKit/WebKit] caa9d1: [Font] Fix "system-ui" font family within

2023-10-27 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: caa9d18f36b5f59249e81102072195b4212cf8a5
  
https://github.com/WebKit/WebKit/commit/caa9d18f36b5f59249e81102072195b4212cf8a5
  Author: Matthieu Dubet 
  Date:   2023-10-27 (Fri, 27 Oct 2023)

  Changed paths:
A 
LayoutTests/fast/canvas/font-family-system-ui-canvas-expected-mismatch.html
A LayoutTests/fast/canvas/font-family-system-ui-canvas.html
M LayoutTests/platform/gtk/TestExpectations
M LayoutTests/platform/wpe/TestExpectations
M Source/WebCore/style/StyleResolveForFontRaw.cpp

  Log Message:
  ---
  [Font] Fix "system-ui" font family within 
https://bugs.webkit.org/show_bug.cgi?id=263719
rdar://117231545

Reviewed by Tim Nguyen.

The "system-ui" font family is expected down the line (in /platform code)
to be a string like a user font and not the CSS prefixed keyword.

* LayoutTests/fast/canvas/font-family-system-ui-canvas-expected-mismatch.html: 
Added.
* LayoutTests/fast/canvas/font-family-system-ui-canvas.html: Added.
* LayoutTests/platform/gtk/TestExpectations:
* LayoutTests/platform/wpe/TestExpectations:
* Source/WebCore/style/StyleResolveForFontRaw.cpp:
(WebCore::Style::resolveForFontRaw):

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


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


[webkit-changes] [WebKit/WebKit] c047b9: AX: Improve smart pointer hygiene in AXObjectCache...

2023-10-25 Thread Matthieu Dubet
  Branch: refs/heads/safari-7615-branch
  Home:   https://github.com/WebKit/WebKit
  Commit: c047b91f5ccbf117f84571a8cede6e73a4cd50df
  
https://github.com/WebKit/WebKit/commit/c047b91f5ccbf117f84571a8cede6e73a4cd50df
  Author: Tyler Wilcock 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebCore/accessibility/AXLogger.cpp
M Source/WebCore/accessibility/AXObjectCache.cpp
M Source/WebCore/accessibility/AXObjectCache.h
M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp

  Log Message:
  ---
  AX: Improve smart pointer hygiene in AXObjectCache and 
AXIsolatedObject::updateBackingStore
rdar://111341681

Reviewed by Chris Fleizach.

Per https://github.com/WebKit/WebKit/wiki/Smart-Pointer-Usage-Guidelines, 
continue refactoring
to replace raw pointer usage with smart pointers where appropriate.

* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::remove):
(WebCore::AXObjectCache::deferNodeAddedOrRemoved):
(WebCore::AXObjectCache::prepareForDocumentDestruction):
(WebCore::AXObjectCache::performDeferredCacheUpdate):
* Source/WebCore/accessibility/AXObjectCache.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp:

Canonical link: https://commits.webkit.org/259548.864@safari-7615-branch


  Commit: cb256ae0cae91f997c7c4f4f5a3794060a701af9
  
https://github.com/WebKit/WebKit/commit/cb256ae0cae91f997c7c4f4f5a3794060a701af9
  Author: Chris Dumez 
  Date:   2023-06-30 (Fri, 30 Jun 2023)

  Changed paths:
M Source/WebKit/Shared/WebBackForwardListItem.h
M Source/WebKit/UIProcess/WebBackForwardCache.cpp
M Source/WebKit/UIProcess/WebBackForwardCache.h

  Log Message:
  ---
  Crash under WebKit::WebBackForwardCache::removeEntry()
https://bugs.webkit.org/show_bug.cgi?id=258698
rdar://111524465

Reviewed by Ryosuke Niwa.

In WebBackForwardCache::removeEntry(), the call to 
`item.setBackForwardCacheEntry(nullptr)`
may cause the `item` to get destroyed. However, we were using `item` on the 
next line for
logging purpose. To fix the bug, I am moving the logging before the 
setBackForwardCacheEntry()
call.

for hardening purposes, I am also updating m_itemsWithCachedPage to contain 
WeakPtrs instead
of raw pointers.

* Source/WebKit/Shared/WebBackForwardListItem.h:
* Source/WebKit/UIProcess/WebBackForwardCache.cpp:
(WebKit::WebBackForwardCache::removeEntry):
(WebKit::WebBackForwardCache::removeEntriesMatching):
(WebKit::WebBackForwardCache::clear):
* Source/WebKit/UIProcess/WebBackForwardCache.h:

Canonical link: https://commits.webkit.org/259548.865@safari-7615-branch


  Commit: a530db24b43e57af8ea04efdc1b1c29be827691e
  
https://github.com/WebKit/WebKit/commit/a530db24b43e57af8ea04efdc1b1c29be827691e
  Author: Dan Robson 
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
M Source/WebCore/editing/Editor.cpp
M Source/WebCore/loader/EmptyClients.cpp
M Source/WebCore/page/EditorClient.h
M Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.h
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/WebPage.h
M Source/WebKitLegacy/mac/WebCoreSupport/WebEditorClient.h
M Source/WebKitLegacy/mac/WebCoreSupport/WebEditorClient.mm
M Tools/TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm

  Log Message:
  ---
  Apply patch. rdar://problem/111258989

Identifier: 259548.866@safari-7615-branch


  Commit: 00e4693e9f619fe20d2693a2664a09d0b584781a
  
https://github.com/WebKit/WebKit/commit/00e4693e9f619fe20d2693a2664a09d0b584781a
  Author: Matthieu Dubet 
  Date:   2023-07-10 (Mon, 10 Jul 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/js/001-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/js/001.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/delete-other-rule-crash.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/invalid-inner-rules.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-basic-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-basic-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-basic.html

[webkit-changes] [WebKit/WebKit] 31ae97: [CSS] Invalid @property rule should be ignored at ...

2023-10-18 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 31ae9755adc7c64da938e59c0c1eacc52d5636c7
  
https://github.com/WebKit/WebKit/commit/31ae9755adc7c64da938e59c0c1eacc52d5636c7
  Author: Matthieu Dubet 
  Date:   2023-10-18 (Wed, 18 Oct 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property-cssom-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property-cssom.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property.html
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/style/CustomPropertyRegistry.cpp

  Log Message:
  ---
  [CSS] Invalid @property rule should be ignored at parse-time
https://bugs.webkit.org/show_bug.cgi?id=263007
rdar://116803886

Reviewed by Antti Koivisto and Tim Nguyen.

This patch moves most of the validity checks from rule-registration-time 
(during rule set building)
to parse-time, thus preventing invalid @property rules to appear in the CSSOM.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property-cssom-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property-cssom.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/at-property.html:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumePropertyRule):
* Source/WebCore/style/CustomPropertyRegistry.cpp:
(WebCore::Style::CustomPropertyRegistry::registerFromStylesheet):

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


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


[webkit-changes] [WebKit/WebKit] f52eb1: [CSS] should reject generic family

2023-09-20 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f52eb126c71f935bdfbe9f17e906237ed0596dcc
  
https://github.com/WebKit/WebKit/commit/f52eb126c71f935bdfbe9f17e906237ed0596dcc
  Author: Matthieu Dubet 
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-family-valid-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/test_font_feature_values_parsing-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/variations/at-font-face-font-matching-expected.txt
M Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp
M Source/WebCore/style/StyleBuilderCustom.h

  Log Message:
  ---
  [CSS]  should reject generic family
https://bugs.webkit.org/show_bug.cgi?id=260066
rdar://113746537

Reviewed by Tim Nguyen.

This patch explicitely rejects generic family ident token when parsing
a family name (they are accepted quoted though).

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-family-valid-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/test_font_feature_values_parsing-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/variations/at-font-face-font-matching-expected.txt:
* Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeIdentRange):
(WebCore::CSSPropertyParserHelpers::concatenateFamilyName):
(WebCore::CSSPropertyParserHelpers::consumeGenericFamilyRaw):
(WebCore::CSSPropertyParserHelpers::consumeGenericFamily):
(WebCore::CSSPropertyParserHelpers::consumeFontFamilyRaw):
(WebCore::CSSPropertyParserHelpers::genericFontFamily):
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueFontFamily):

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


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


[webkit-changes] [WebKit/WebKit] 2cfe18: [CSS] Allow nesting style rule with relaxed syntax

2023-09-01 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2cfe184f6dbee766aefa51db1de3e613c185b0fb
  
https://github.com/WebKit/WebKit/commit/2cfe184f6dbee766aefa51db1de3e613c185b0fb
  Author: Matthieu Dubet 
  Date:   2023-09-01 (Fri, 01 Sep 2023)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp

  Log Message:
  ---
  [CSS] Allow nesting style rule with relaxed syntax
https://bugs.webkit.org/show_bug.cgi?id=260812
rdar://113475843

Reviewed by Antti Koivisto.

https://drafts.csswg.org/css-nesting/#nesting

The CSS nesting spec now allows having identifier as the first token
in the nested style rule selector.
This implementation follows the spec algorithm of first trying to parse
a declaration, then a nested style rule, otherwise it goes to error recovery 
(until next semicolon).

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeStyleRule):
(WebCore::CSSParserImpl::consumeBlockContent):
(WebCore::CSSParserImpl::consumeDeclarationListInNewNestingContext):
(WebCore::CSSParserImpl::consumeDeclarationList):
(WebCore::CSSParserImpl::consumeStyleBlock):
(WebCore::CSSParserImpl::consumeDeclaration):
(WebCore::CSSParserImpl::consumeDeclarationListOrStyleBlockHelper): Deleted.
* Source/WebCore/css/parser/CSSParserImpl.h:
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeNestedSelectorList):

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


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


[webkit-changes] [WebKit/WebKit] 41f7a3: [CSS] Always serialize implicit nesting selector/rule

2023-08-31 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 41f7a301e412e75355904d8aa98393810cd91e3a
  
https://github.com/WebKit/WebKit/commit/41f7a301e412e75355904d8aa98393810cd91e3a
  Author: Matthieu Dubet 
  Date:   2023-08-31 (Thu, 31 Aug 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls-expected.txt
M 
LayoutTests/inspector/css/getMatchedStylesForNodeNestingStyleGrouping-expected.txt
M Source/WebCore/css/CSSGroupingRule.cpp
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

  Log Message:
  ---
  [CSS] Always serialize implicit nesting selector/rule
https://bugs.webkit.org/show_bug.cgi?id=260707
rdar://112900363

Reviewed by Patrick Angle and Antti Koivisto.

https://drafts.csswg.org/css-nesting/#cssom

"When serializing a relative selector in a nested style rule,
the selector must be absolutized, with the implied nesting selector inserted.
When serializing a nested group rule, it must serialize solely with child 
rules."

This patch moves the code which build the selector with the implicit & added
from rule set building time to parsing time.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls-expected.txt:
* 
LayoutTests/inspector/css/getMatchedStylesForNodeNestingStyleGrouping-expected.txt:
* Source/WebCore/css/CSSGroupingRule.cpp:
(WebCore::CSSGroupingRule::cssTextForDeclsAndRules const):
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/parser/CSSParserSelector.cpp:
(WebCore::CSSParserSelector::hasExplicitNestingParent const):
* Source/WebCore/css/parser/CSSParserSelector.h:
(WebCore::CSSParserSelector::selector const):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeNestedComplexSelector):
(WebCore::CSSSelectorParser::resolveNestingParent):

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


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


[webkit-changes] [WebKit/WebKit] 83db13: [CSS] @font-palette-values family-name supports mu...

2023-08-29 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 83db139305cad9bc26aae1844c44a43b12e5d986
  
https://github.com/WebKit/WebKit/commit/83db139305cad9bc26aae1844c44a43b12e5d986
  Author: Matthieu Dubet 
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-36-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-36-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-36.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-valid-expected.txt
M Source/WebCore/css/CSSFontPaletteValuesRule.cpp
M Source/WebCore/css/CSSFontSelector.cpp
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp
M Source/WebCore/css/parser/CSSPropertyParserHelpers.h

  Log Message:
  ---
  [CSS] @font-palette-values family-name supports multiple values
https://bugs.webkit.org/show_bug.cgi?id=252569
rdar://105975619

Reviewed by Tim Nguyen.

This patch allows @font-palette-values family-name descriptor to have
a list of family names (per spec).

https://drafts.csswg.org/css-fonts-4/#family-name-syntax

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-36-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-36-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-36.html: 
Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-valid-expected.txt:
* Source/WebCore/css/CSSFontPaletteValuesRule.cpp:
(WebCore::CSSFontPaletteValuesRule::fontFamily const):
(WebCore::CSSFontPaletteValuesRule::cssText const):
(WebCore::CSSFontPaletteValuesRule::~CSSFontPaletteValuesRule): Deleted.
* Source/WebCore/css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::addFontPaletteValuesRule):
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/StyleRule.cpp:
(WebCore::StyleRuleFontPaletteValues::create):
(WebCore::StyleRuleFontPaletteValues::StyleRuleFontPaletteValues):
* Source/WebCore/css/StyleRule.h:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeFontFeatureValuesRule):
(WebCore::CSSParserImpl::consumeFontPaletteValuesRule):
* Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeFamilyNameListRaw):
(WebCore::CSSPropertyParserHelpers::consumeFamilyNameList):
* Source/WebCore/css/parser/CSSPropertyParserHelpers.h:

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


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


[webkit-changes] [WebKit/WebKit] 7b938d: [CSS] color-mix() should respect :visited style to...

2023-08-25 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7b938d011b0e9b85fe21bb865c31cb8709cf95db
  
https://github.com/WebKit/WebKit/commit/7b938d011b0e9b85fe21bb865c31cb8709cf95db
  Author: Matthieu Dubet 
  Date:   2023-08-25 (Fri, 25 Aug 2023)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited-getcomputedstyle-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited-getcomputedstyle.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-currentcolor-visited.html
M Source/WebCore/rendering/style/RenderStyle.cpp
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/style/StyleBuilderState.cpp
M Source/WebCore/style/StyleBuilderState.h

  Log Message:
  ---
  [CSS] color-mix() should respect :visited style to resolve "currentcolor"
https://bugs.webkit.org/show_bug.cgi?id=259063
rdar://112419198

Reviewed by Tim Nguyen.

This patch passes the visitedLink parameter down the stack
to correctly resolve "currentcolor".

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited-getcomputedstyle-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited-getcomputedstyle.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-visited.html:
 Added.
* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::colorResolvingCurrentColor const):
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/style/StyleBuilderState.cpp:
(WebCore::Style::BuilderState::colorFromPrimitiveValueWithResolvedCurrentColor 
const): Deleted.
* Source/WebCore/style/StyleBuilderState.h:

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


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


[webkit-changes] [WebKit/WebKit] 72fc87: [CSS] "currentcolor" should correctly inherit comp...

2023-08-22 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 72fc87a3b8db2919f0cc4e2e1ae2adfe9da56af4
  
https://github.com/WebKit/WebKit/commit/72fc87a3b8db2919f0cc4e2e1ae2adfe9da56af4
  Author: Matthieu Dubet 
  Date:   2023-08-22 (Tue, 22 Aug 2023)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-004-expected.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-004.html
M Source/WebCore/style/StyleBuilderCustom.h

  Log Message:
  ---
  [CSS] "currentcolor" should correctly inherit computed :visited style
https://bugs.webkit.org/show_bug.cgi?id=260517
rdar://114254856

Reviewed by Tim Nguyen.

When using "currentcolor" in the color property,
its value is the inherit computed value (per spec).
This patch fixes it when we are computing :visited style for links.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-004-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-004-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/currentcolor-004.html:
 Added.
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueColor):

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


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


[webkit-changes] [WebKit/WebKit] f3caa4: [WPT] Sync css/css-nesting

2023-08-17 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f3caa42598a0c5e45da4d34f87ae6b7cd6111a9b
  
https://github.com/WebKit/WebKit/commit/f3caa42598a0c5e45da4d34f87ae6b7cd6111a9b
  Author: Matthieu Dubet 
  Date:   2023-08-17 (Thu, 17 Aug 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/import-expectations.json
M LayoutTests/imported/w3c/resources/resource-files.json
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/invalid-inner-rules.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-layer-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-layer.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-type-selector-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-type-selector.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.html
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.tentative-expected.txt
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.tentative.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/supports-is-consistent-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/supports-is-consistent-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/supports-is-consistent.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log

  Log Message:
  ---
  [WPT] Sync css/css-nesting
https://bugs.webkit.org/show_bug.cgi?id=260347
rdar://114025192

Reviewed by Tim Nguyen.

WPT @ f559b51

* LayoutTests/imported/w3c/resources/import-expectations.json:
* LayoutTests/imported/w3c/resources/resource-files.json:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-ref.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/invalid-inner-rules.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-layer-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-layer.html: 
Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-type-selector-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nesting-type-selector.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.tentative-expected.txt:
 Removed.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.tentative.html:
 Removed.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/supports-is-consistent-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/supports-is-consistent-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/supports-is-consistent.html:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/w3c-import.log:

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


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


[webkit-changes] [WebKit/WebKit] 7f6950: [CSS] Serialize invalid selectors inside

2023-08-10 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7f6950788ad1839fe563ce11c29b6b396d74bdac
  
https://github.com/WebKit/WebKit/commit/7f6950788ad1839fe563ce11c29b6b396d74bdac
  Author: Matthieu Dubet 
  Date:   2023-08-10 (Thu, 10 Aug 2023)

  Changed paths:
M LayoutTests/TestExpectations
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nest-containing-forgiving-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nest-containing-forgiving-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nest-containing-forgiving.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/slotted-parsing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/is-where-error-recovery.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/is-where-parsing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/parse-has-disallow-nesting-has-inside-has.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/parse-has.html
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/css/parser/CSSSelectorParser.h
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/style/RuleSet.cpp
M Source/WebCore/style/RuleSetBuilder.cpp

  Log Message:
  ---
  [CSS] Serialize invalid selectors inside 
https://bugs.webkit.org/show_bug.cgi?id=258688
rdar://111861948

Reviewed by Antti Koivisto and Darin Adler.

For the serialization round-trip to work with the presence of invalid
selectors containing a nesting selector, the spec mandates that
invalid selectors inside forgiving selector list (such as :is(..) or 
:where(...))
should be kept in serialization (and be considered when deciding whether a 
selector
is "nest-containing" or not).

https://github.com/w3c/csswg-drafts/issues/8356#issuecomment-1642840607

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nest-containing-forgiving-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nest-containing-forgiving-ref.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nest-containing-forgiving.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-scoping/slotted-parsing.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/is-where-error-recovery.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/is-where-parsing.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/parse-has-disallow-nesting-has-inside-has.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/selectors/parsing/parse-has.html:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::simpleSelectorSpecificity):
(WebCore::CSSSelector::selectorText const):
(WebCore::CSSSelector::hasExplicitNestingParent const):
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::canMatchHoverOrActiveInQuirksMode):
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeForgivingSelectorList):
* Source/WebCore/css/parser/CSSSelectorParser.h:
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::constructFragmentsInternal):
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::addRule):
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::resolveSelectorListWithNesting):

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


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


[webkit-changes] [WebKit/WebKit] c8893f: [CSS] Improve performance of visitAllSimpleSelecto...

2023-08-07 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c8893f6f23dfc9d9cdb32a715457c77a70d9102f
  
https://github.com/WebKit/WebKit/commit/c8893f6f23dfc9d9cdb32a715457c77a70d9102f
  Author: Matthieu Dubet 
  Date:   2023-08-07 (Mon, 07 Aug 2023)

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

  Log Message:
  ---
  [CSS] Improve performance of visitAllSimpleSelectors()
https://bugs.webkit.org/show_bug.cgi?id=259828
rdar://113397883

Reviewed by Brent Fulgham.

This patch makes the visitAllSimpleSelectors() function more optimized by:
 - being iterative instead of recursive
 - allowing the functor argument to early return.

It improves performance on really long selectors.

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::visitAllSimpleSelectors const):
(WebCore::CSSSelector::resolveNestingParentSelectors):
(WebCore::CSSSelector::replaceNestingParentByPseudoClassScope):
(WebCore::CSSSelector::hasExplicitNestingParent const):
* Source/WebCore/css/CSSSelector.h:

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


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


[webkit-changes] [WebKit/WebKit] 4ad61e: [WPT] Sync css/support

2023-07-26 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4ad61e9b8abffc8262772b9009719eae7d1feb33
  
https://github.com/WebKit/WebKit/commit/4ad61e9b8abffc8262772b9009719eae7d1feb33
  Author: Matthieu Dubet 
  Date:   2023-07-26 (Wed, 26 Jul 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-lab-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-mix-out-of-gamut-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-consistency-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/animation-display-lock-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-interpolation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-variation-settings-composition-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/variations/at-font-face-font-matching-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-values/animations/calc-interpolation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-angle-values-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-mod-rem-computed-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/support/computed-testcommon.js
A 
LayoutTests/imported/w3c/web-platform-tests/css/support/delete-other-rule-crash.css
M 
LayoutTests/imported/w3c/web-platform-tests/css/support/height-keyword-classes.css
M 
LayoutTests/imported/w3c/web-platform-tests/css/support/interpolation-testcommon.js
M 
LayoutTests/imported/w3c/web-platform-tests/css/support/numeric-testcommon.js
M LayoutTests/imported/w3c/web-platform-tests/css/support/w3c-import.log
M 
LayoutTests/imported/w3c/web-platform-tests/css/support/width-keyword-classes.css
M 
LayoutTests/platform/mac-monterey/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt
M 
LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/css/css-color/system-color-consistency-expected.txt
M 
LayoutTests/platform/mac/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function-expected.txt

  Log Message:
  ---
  [WPT] Sync css/support
https://bugs.webkit.org/show_bug.cgi?id=259444
rdar://112774699

Reviewed by Tim Nguyen.

WPT @ 5685ca5e0e4a

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-lab-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-mix-out-of-gamut-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-consistency-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/animation-display-lock-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-interpolation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-variation-settings-composition-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/variations/at-font-face-font-matching-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-values/animations/calc-interpolation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-angle-values-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-mod-rem-computed-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/support/computed-testcommon.js:
(test_computed_value):
* 
LayoutTests/imported/w3c/web-platform-tests/css/support/delete-other-rule-crash.css:
 Added.
(.a):
(.b):
* 
LayoutTests/imported/w3c/web-platform-tests/css/support/height-keyword-classes.css:
(.fit-content):
(.max-height-fit-content):
(.min-height-fit-content):
* 
LayoutTests/imported/w3c/web-platform-tests/css/support/interpolation-testcommon.js:
(cssAnimationsInterpolation.notAnimatableExpectations):
(cssTransitionsInterpolation.notAnimatableExpectations):
(cssTransitionsInterpolation.interpolate):
(cssTransitionAllInterpolation.notAnimatableExpectations):
(cssTransitionAllInterpolation.interpolate):
(webAnimationsInterpolation.notAnimatableExpectations):
(createInterpolationTestTargets):
(test_not_animatable):
* LayoutTests/imported/w3c/web-platform-tests/css/support

[webkit-changes] [WebKit/WebKit] 1bd647: [CSS] Allow empty font-family name

2023-07-12 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1bd647f19109a84e816403fa2ef37f49a3b77f0e
  
https://github.com/WebKit/WebKit/commit/1bd647f19109a84e816403fa2ef37f49a3b77f0e
  Author: Matthieu Dubet 
  Date:   2023-07-12 (Wed, 12 Jul 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/fast/text/font-face-empty-string-expected.txt
M LayoutTests/fast/text/font-face-empty-string.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-non-ident-font-family-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-non-ident-font-family-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-non-ident-font-family.html
M Source/WebCore/css/CSSFontFaceSet.cpp
M Source/WebCore/css/CSSFontSelector.cpp
M Source/WebCore/css/FontFace.cpp
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/platform/graphics/FontCascadeFonts.cpp
M Source/WebCore/style/StyleBuilderCustom.h

  Log Message:
  ---
  [CSS] Allow empty font-family name
https://bugs.webkit.org/show_bug.cgi?id=257092
rdar://109613703

Reviewed by Tim Nguyen.

We allow the empty string to be used as a font-family name per spec.
This also fixes a bug with non-ident family name (such as "foo bar").

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-non-ident-font-family-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-non-ident-font-family-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-non-ident-font-family.html:
 Added.
* Source/WebCore/css/CSSFontFaceSet.cpp:
(WebCore::CSSFontFaceSet::addToFacesLookupTable):
(WebCore::CSSFontFaceSet::removeFromFacesLookupTable):
(WebCore::CSSFontFaceSet::matchingFacesExcludingPreinstalledFonts):
* Source/WebCore/css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::addFontPaletteValuesRule):
(WebCore::CSSFontSelector::lookupFontPaletteValues):
(WebCore::CSSFontSelector::fontRangesForFamily):
* Source/WebCore/css/FontFace.cpp:
(WebCore::FontFace::setFamily):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeFontPaletteValuesRule):
* Source/WebCore/platform/graphics/FontCascadeFonts.cpp:
(WebCore::realizeNextFallback):
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueFontFamily):

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


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


[webkit-changes] [WebKit/WebKit] 32806c: [WPT] Resync css/css-color

2023-07-06 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 32806c9f1b995a895ab318a6ddba683769c8d5a5
  
https://github.com/WebKit/WebKit/commit/32806c9f1b995a895ab318a6ddba683769c8d5a5
  Author: Matthieu Dubet 
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-nested-for-color-property-expected.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-nested-for-color-property.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-1.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-2.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-1.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-2.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-009-expected.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-009.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-011-expected.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-011.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-mix-out-of-gamut-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-mix-out-of-gamut.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-color-function-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-color-function.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-color-mix-function-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-color-mix-function.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color-expected.txt
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/gamut-mapping-expected.txt
R 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/gamut-mapping.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/w3c-import.log
M LayoutTests/imported/w3c/web-platform-tests/css/css-color/w3c-import.log
M LayoutTests/platform/gtk/TestExpectations
M LayoutTests/platform/ios-wk2/TestExpectations

  Log Message:
  ---
  [WPT] Resync css/css-color
https://bugs.webkit.org/show_bug.cgi?id=258923
rdar://111844595

Reviewed by Tim Nguyen.

WPT @ 159c9d1

* LayoutTests/TestExpectations:
* LayoutTests/imported/w3c/resources/resource-files.json:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-nested-for-color-property-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-nested-for-color-property-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-nested-for-color-property.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-1.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-2.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-1.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-2.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-009-expected.html:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklab-009.html: 
Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-011-expected.html:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-color/oklch-011.html: 
Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-mix-out-of-gamut-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-mix-out-of-gamut.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-color

[webkit-changes] [WebKit/WebKit] c6b771: [CSS] Nesting '&' selector is not a pseudo class

2023-06-26 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c6b7717a83e78c6d5c850610338fb2644bdf2fbd
  
https://github.com/WebKit/WebKit/commit/c6b7717a83e78c6d5c850610338fb2644bdf2fbd
  Author: Matthieu Dubet 
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/CSSSelectorList.cpp
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSSelectorParser.cpp
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/style/RuleSet.cpp

  Log Message:
  ---
  [CSS] Nesting '&' selector is not a pseudo class
https://bugs.webkit.org/show_bug.cgi?id=252188
rdar://107328044

Reviewed by Tim Nguyen.

https://drafts.csswg.org/css-nesting/#nest-selector

The nesting selector, written as '&', is a new selector
and not a pseudo class.
This a pure refactoring without any functional change.

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::simpleSelectorSpecificity):
(WebCore::CSSSelector::selectorText const):
(WebCore::CSSSelector::resolveNestingParentSelectors):
(WebCore::CSSSelector::replaceNestingParentByPseudoClassScope):
(WebCore::CSSSelector::hasExplicitNestingParent const):
* Source/WebCore/css/CSSSelector.h:
* Source/WebCore/css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::hasOnlyNestingSelector const):
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::canMatchHoverOrActiveInQuirksMode):
(WebCore::SelectorChecker::checkOne const):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::createNestingParentRule):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeNesting):
* Source/WebCore/cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::constructFragmentsInternal):
* Source/WebCore/style/RuleSet.cpp:
(WebCore::Style::RuleSet::addRule):

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


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


[webkit-changes] [WebKit/WebKit] 923265: [CSS] Use "enum class" for CSSSelector Match and R...

2023-06-23 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 923265e5941bc1687fb511685061d831a92189b5
  
https://github.com/WebKit/WebKit/commit/923265e5941bc1687fb511685061d831a92189b5
  Author: Matthieu Dubet 
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/CSSSelector.h
M Source/WebCore/css/CSSSelectorList.cpp
M Source/WebCore/css/SelectorChecker.cpp
M Source/WebCore/css/SelectorChecker.h
M Source/WebCore/css/SelectorFilter.cpp
M Source/WebCore/css/parser/CSSParserImpl.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/cssjit/SelectorCompiler.cpp
M Source/WebCore/dom/SelectorQuery.cpp
M Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
M Source/WebCore/style/HasSelectorFilter.cpp
M Source/WebCore/style/PageRuleCollector.cpp
M Source/WebCore/style/RuleData.cpp
M Source/WebCore/style/RuleFeature.cpp
M Source/WebCore/style/RuleSet.cpp

  Log Message:
  ---
  [CSS] Use "enum class" for CSSSelector Match and RelationType
https://bugs.webkit.org/show_bug.cgi?id=258358
rdar://04973

Reviewed by Brent Fulgham.

It's a pure refactoring without any functional change.

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::CSSSelector):
(WebCore::CSSSelector::createRareData):
(WebCore::simpleSelectorSpecificity):
(WebCore::CSSSelector::specificityForPage const):
(WebCore::CSSSelector::firstInCompound const):
(WebCore::CSSSelector::selectorText const):
(WebCore::CSSSelector::resolveNestingParentSelectors):
(WebCore::CSSSelector::replaceNestingParentByPseudoClassScope):
(WebCore::CSSSelector::hasExplicitNestingParent const):
* Source/WebCore/css/CSSSelector.h:
(WebCore::CSSSelector::hasDescendantRelation const):
(WebCore::CSSSelector::hasDescendantOrChildRelation const):
(WebCore::CSSSelector::matchesPseudoElement const):
(WebCore::CSSSelector::isUnknownPseudoElement const):
(WebCore::CSSSelector::isCustomPseudoElement const):
(WebCore::CSSSelector::isSiblingSelector const):
(WebCore::CSSSelector::isAttributeSelector const):
(WebCore::CSSSelector::setValue):
(WebCore::CSSSelector::~CSSSelector):
(WebCore::CSSSelector::value const):
(WebCore::CSSSelector::serializingValue const):
(WebCore::CSSSelector::pseudoClassType const):
(WebCore::CSSSelector::pseudoElementType const):
(WebCore::CSSSelector::pagePseudoClassType const):
(WebCore::CSSSelector::setPagePseudoType):
(WebCore::CSSSelector::setRelation):
(WebCore::CSSSelector::setMatch):
* Source/WebCore/css/CSSSelectorList.cpp:
(WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
* Source/WebCore/css/SelectorChecker.cpp:
(WebCore::localContextForParent):
(WebCore::SelectorChecker::matchRecursively const):
(WebCore::attributeValueMatches):
(WebCore::canMatchHoverOrActiveInQuirksMode):
(WebCore::SelectorChecker::checkOne const):
(WebCore::SelectorChecker::checkScrollbarPseudoClass const):
(WebCore::SelectorChecker::determineLinkMatchType):
* Source/WebCore/css/SelectorChecker.h:
(WebCore::SelectorChecker::isCommonPseudoClassSelector):
* Source/WebCore/css/SelectorFilter.cpp:
(WebCore::SelectorFilter::collectSimpleSelectorHash):
(WebCore::SelectorFilter::collectSelectorHashes):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::parsePageSelector):
* Source/WebCore/css/parser/CSSParserSelector.cpp:
(WebCore::CSSParserSelector::parsePagePseudoSelector):
(WebCore::CSSParserSelector::parsePseudoElementSelector):
(WebCore::CSSParserSelector::parsePseudoClassSelector):
(WebCore::CSSParserSelector::appendTagHistory):
(WebCore::CSSParserSelector::prependTagSelector):
(WebCore::CSSParserSelector::releaseTagHistory):
(WebCore::CSSParserSelector::isHostPseudoSelector const):
* Source/WebCore/css/parser/CSSParserSelector.h:
(WebCore::CSSParserSelector::needsImplicitShadowCombinatorForMatching const):
(WebCore::CSSParserSelector::isPseudoElementCueFunction const):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::extractCompoundFlags):
(WebCore::isDescendantCombinator):
(WebCore::CSSSelectorParser::consumeComplexSelector):
(WebCore::CSSSelectorParser::consumeRelativeScopeSelector):
(WebCore::CSSSelectorParser::consumeRelativeNestedSelector):
(WebCore::isSimpleSelectorValidAfterPseudoElement):
(WebCore::CSSSelectorParser::consumeCompoundSelector):
(WebCore::CSSSelectorParser::consumeId):
(WebCore::CSSSelectorParser::consumeClass):
(WebCore::CSSSelectorParser::consumeNesting):
(WebCore::CSSSelectorParser::consumeAttribute):
(WebCore::CSSSelectorParser::consumePseudo):
(WebCore::CSSSelectorParser::consumeCombinator):
(WebCore::CSSSelectorParser::consumeAttributeMatch):
(WebCore::CSSSelectorParser::consumeAttributeFlags):
(WebCore::CSSSelectorParser::splitCompoundAtImplicitShadowCrossingCombinator):
(WebCore::CS

[webkit-changes] [WebKit/WebKit] b84670: [CSS] Use Ref instead of RefPtr to store child rules

2023-06-21 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b84670c51376b97ae8da0159656e720f793da5ee
  
https://github.com/WebKit/WebKit/commit/b84670c51376b97ae8da0159656e720f793da5ee
  Author: Matthieu Dubet 
  Date:   2023-06-21 (Wed, 21 Jun 2023)

  Changed paths:
M Source/WebCore/css/CSSGroupingRule.cpp
M Source/WebCore/css/CSSStyleSheet.cpp
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/StyleSheetContents.cpp
M Source/WebCore/css/StyleSheetContents.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/html/track/WebVTTParser.cpp
M Source/WebCore/style/RuleSetBuilder.cpp
M Source/WebCore/style/RuleSetBuilder.h
M Source/WebCore/style/StyleInvalidator.cpp
M Source/WebCore/style/UserAgentStyle.cpp

  Log Message:
  ---
  [CSS] Use Ref instead of RefPtr to store child rules
https://bugs.webkit.org/show_bug.cgi?id=258295
rdar://111030709

Reviewed by Brent Fulgham.

* Source/WebCore/css/CSSGroupingRule.cpp:
(WebCore::CSSGroupingRule::cssTextForDeclsAndRules const):
(WebCore::CSSGroupingRule::prepareChildStyleRuleForNesting):
(WebCore::CSSGroupingRule::reattach):
* Source/WebCore/css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::prepareChildStyleRuleForNesting):
* Source/WebCore/css/StyleRule.cpp:
(WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorComponentCount 
const):
(WebCore::StyleRuleGroup::StyleRuleGroup):
(WebCore::StyleRuleGroup::childRules const):
(WebCore::StyleRuleMedia::StyleRuleMedia):
(WebCore::StyleRuleMedia::create):
(WebCore::StyleRuleSupports::StyleRuleSupports):
(WebCore::StyleRuleSupports::create):
(WebCore::StyleRuleLayer::StyleRuleLayer):
(WebCore::StyleRuleLayer::createBlock):
(WebCore::StyleRuleContainer::StyleRuleContainer):
(WebCore::StyleRuleContainer::create):
* Source/WebCore/css/StyleRule.h:
* Source/WebCore/css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::parserAppendRule):
(WebCore::StyleSheetContents::ruleAt const):
(WebCore::StyleSheetContents::wrapperInsertRule):
(WebCore::traverseRulesInVector):
(WebCore::StyleSheetContents::traverseRules const):
* Source/WebCore/css/StyleSheetContents.h:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::parseStyleSheet):
(WebCore::CSSParserImpl::parseStyleSheetForInspector):
(WebCore::CSSParserImpl::consumeRuleList):
(WebCore::CSSParserImpl::createNestingParentRule):
(WebCore::CSSParserImpl::consumeRegularRuleList):
(WebCore::CSSParserImpl::consumeFontFeatureValuesRule):
(WebCore::CSSParserImpl::consumeKeyframesRule):
* Source/WebCore/css/parser/CSSParserImpl.h:
* Source/WebCore/html/track/WebVTTParser.cpp:
(WebCore::WebVTTParser::checkAndStoreStyleSheet):
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::addChildRules):
(WebCore::Style::RuleSetBuilder::addChildRule):
(WebCore::Style::RuleSetBuilder::addStyleRule):
* Source/WebCore/style/RuleSetBuilder.h:
* Source/WebCore/style/StyleInvalidator.cpp:
(WebCore::Style::shouldDirtyAllStyle):
* Source/WebCore/style/UserAgentStyle.cpp:
(WebCore::Style::UserAgentStyle::addToDefaultStyle):

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


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


[webkit-changes] [WebKit/WebKit] 365141: [CSSOM] Fix insertion of rule into orphaned style ...

2023-06-14 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 36514195098dc050e1be84bf346f632b2c1234f7
  
https://github.com/WebKit/WebKit/commit/36514195098dc050e1be84bf346f632b2c1234f7
  Author: Matthieu Dubet 
  Date:   2023-06-14 (Wed, 14 Jun 2023)

  Changed paths:
A LayoutTests/fast/css/cssom-mutation-stylerule-expected.html
A LayoutTests/fast/css/cssom-mutation-stylerule.html
M Source/WebCore/css/CSSStyleRule.cpp

  Log Message:
  ---
  [CSSOM] Fix insertion of rule into orphaned style rule
https://bugs.webkit.org/show_bug.cgi?id=258017
rdar://110629287

Reviewed by Antti Koivisto.

When a StyleRule is orphaned, we don't need any specific mechanism (such as 
RuleMutationScope)
and convert it directly to a StyleRuleWithNesting.

* LayoutTests/fast/css/cssom-mutation-stylerule-expected.html: Added.
* LayoutTests/fast/css/cssom-mutation-stylerule.html: Added.
* Source/WebCore/css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::insertRule):

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


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


[webkit-changes] [WebKit/WebKit] f34766: [CSS] StyleRuleWithNesting is a StyleRule (through...

2023-06-09 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f347660f0196893c4a9f7cab0beb4ed732da00fd
  
https://github.com/WebKit/WebKit/commit/f347660f0196893c4a9f7cab0beb4ed732da00fd
  Author: Matthieu Dubet 
  Date:   2023-06-09 (Fri, 09 Jun 2023)

  Changed paths:
A LayoutTests/fast/css/rule-selector-nesting-overflow-expected.txt
A LayoutTests/fast/css/rule-selector-nesting-overflow.html
M Source/WebCore/css/CSSGroupingRule.cpp
M Source/WebCore/css/CSSStyleRule.cpp
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/StyleSheetContents.cpp
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/style/RuleFeature.h
M Source/WebCore/style/RuleSetBuilder.cpp
M Source/WebCore/style/RuleSetBuilder.h
M Source/WebCore/style/StyleInvalidator.cpp
M Source/WebCore/style/StyleScopeRuleSets.cpp

  Log Message:
  ---
  [CSS] StyleRuleWithNesting is a StyleRule (through inheritance)
https://bugs.webkit.org/show_bug.cgi?id=256693
rdar://109254000

Reviewed by Antti Koivisto.

StyleRuleWithNesting should be treated like a StyleRule
in the codebase.

* LayoutTests/fast/css/rule-selector-nesting-overflow-expected.txt: Added.
* LayoutTests/fast/css/rule-selector-nesting-overflow.html: Added.
* Source/WebCore/css/CSSGroupingRule.cpp:
(WebCore::CSSGroupingRule::insertRule):
* Source/WebCore/css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::insertRule):
* Source/WebCore/css/StyleRule.h:
(WebCore::StyleRuleBase::isStyleRule const):
(isType):
* Source/WebCore/css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::parserAppendRule):
(WebCore::traverseRulesInVector):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeDeclarationListOrStyleBlockHelper):
* Source/WebCore/style/RuleFeature.h:
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::RuleSetBuilder):
(WebCore::Style::m_shouldResolveNesting):

Invalidation selectors assume that the RuleSet doesn't mutate.
We need to be careful not to resolve the nesting selector more than once.

(WebCore::Style::RuleSetBuilder::addStyleRule):
* Source/WebCore/style/RuleSetBuilder.h:
* Source/WebCore/style/StyleInvalidator.cpp:
(WebCore::Style::shouldDirtyAllStyle):
* Source/WebCore/style/StyleScope.cpp:
(WebCore::Style::Scope::updateActiveStyleSheets):
* Source/WebCore/style/StyleScopeRuleSets.cpp:
(WebCore::Style::ScopeRuleSets::appendAuthorStyleSheets):

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


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


[webkit-changes] [WebKit/WebKit] 50ddb4: [CSS] Remove unused/broken CSSSelector equality op...

2023-06-09 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 50ddb4b4a4a91bc5bfe7f43fa3dc6923f5a6787b
  
https://github.com/WebKit/WebKit/commit/50ddb4b4a4a91bc5bfe7f43fa3dc6923f5a6787b
  Author: Matthieu Dubet 
  Date:   2023-06-09 (Fri, 09 Jun 2023)

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

  Log Message:
  ---
  [CSS] Remove unused/broken CSSSelector equality operator
https://bugs.webkit.org/show_bug.cgi?id=257886
rdar://110518189

Reviewed by Antti Koivisto.

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::operator== const): Deleted.
* Source/WebCore/css/CSSSelector.h:

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


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


[webkit-changes] [WebKit/WebKit] fea0e1: Use "enum class" instead of plain enum for ThemeTypes

2023-06-07 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: fea0e1d56ed57b95191a9a593e0cd7a6e8b2c975
  
https://github.com/WebKit/WebKit/commit/fea0e1d56ed57b95191a9a593e0cd7a6e8b2c975
  Author: Matthieu Dubet 
  Date:   2023-06-07 (Wed, 07 Jun 2023)

  Changed paths:
M Source/WebCore/platform/ThemeTypes.cpp
M Source/WebCore/platform/ThemeTypes.h

  Log Message:
  ---
  Use "enum class" instead of plain enum for ThemeTypes
https://bugs.webkit.org/show_bug.cgi?id=257784
rdar://110378475

Reviewed by Youenn Fablet.

* Source/WebCore/platform/ThemeTypes.cpp:
(WebCore::operator<<):
* Source/WebCore/platform/ThemeTypes.h

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


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


[webkit-changes] [WebKit/WebKit] 80e4d7: [CSS] Resolve "currentcolor" with style if possible

2023-05-31 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 80e4d733b9172fb72755d59424e5195944f1d416
  
https://github.com/WebKit/WebKit/commit/80e4d733b9172fb72755d59424e5195944f1d416
  Author: Matthieu Dubet 
  Date:   2023-05-31 (Wed, 31 May 2023)

  Changed paths:
A LayoutTests/fast/css/color-mix-various-expected.html
A LayoutTests/fast/css/color-mix-various.html
M Source/WebCore/style/ColorFromPrimitiveValue.cpp
M Source/WebCore/style/ElementRuleCollector.cpp

  Log Message:
  ---
  [CSS] Resolve "currentcolor" with style if possible
https://bugs.webkit.org/show_bug.cgi?id=257255
rdar://108683501

Reviewed by Tim Nguyen.

Ideally, we should never try to resolve "currentcolor" during
style building.
However, for the rare cases where we do it (gradient, drop-shadow)
it's better to use the incomplete style than assuming an absolute color.

* LayoutTests/fast/css/color-mix-various-expected.html: Added.
* LayoutTests/fast/css/color-mix-various.html: Added.
* Source/WebCore/style/ColorFromPrimitiveValue.cpp:
(WebCore::Style::colorFromPrimitiveValueWithResolvedCurrentColor):
* Source/WebCore/style/ElementRuleCollector.cpp:
(WebCore::Style::ElementRuleCollector::addMatchedProperties):

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


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


[webkit-changes] [WebKit/WebKit] 5bfe62: [WPT] Resync css/css-color

2023-05-23 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5bfe629565cd2dbcf31d14ad920800bd1118aa96
  
https://github.com/WebKit/WebKit/commit/5bfe629565cd2dbcf31d14ad920800bd1118aa96
  Author: Matthieu Dubet 
  Date:   2023-05-23 (Tue, 23 May 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/animation/color-interpolation-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/animation/color-interpolation.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-003-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-1-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-1.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-2-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-2.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-ref.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-1-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-1.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-2-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-2.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-100-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-lab-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-lab.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-color-mix-function-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-color-mix-function.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-hwb-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-hwb.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-lab-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-lab.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-rgb-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-rgb.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-consistency-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-hightlights-vs-getSelection-001-expected.html
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/system-color-hightlights-vs-getSelection-001.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-color/w3c-import.log
A 
LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.html
A 
LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color-expected.html

  Log Message:
  ---
  [WPT] Resync css/css-color
https://bugs.webkit.org/show_bug.cgi?id=256889
rdar://109454228

Reviewed by Tim Nguyen.

>From WPT@7e61dd6b147

* LayoutTests/TestExpectations:
* LayoutTests/imported/w3c/resources/resource-files.json:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/animation/color-interpolation-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/animation/color-interpolation.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/color-mix-currentcolor-003-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-1-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-1.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-2-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-2.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lab-l-over-100-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/lch-l-over-10

[webkit-changes] [WebKit/WebKit] c71ce8: [CSS] Fix shadow of text-decoration/box with curre...

2023-05-16 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c71ce85eb4568e261e01fb6b73cff7cce4dce787
  
https://github.com/WebKit/WebKit/commit/c71ce85eb4568e261e01fb6b73cff7cce4dce787
  Author: Matthieu Dubet 
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
M LayoutTests/TestExpectations
M Source/WebCore/animation/CSSPropertyAnimation.cpp
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/display/css/DisplayBoxDecorationPainter.cpp
M Source/WebCore/display/css/DisplayStyle.cpp
M Source/WebCore/editing/Editor.cpp
M Source/WebCore/rendering/BackgroundPainter.cpp
M Source/WebCore/rendering/EllipsisBoxPainter.cpp
M Source/WebCore/rendering/TextBoxPainter.cpp
M Source/WebCore/rendering/TextDecorationPainter.cpp
M Source/WebCore/rendering/TextDecorationPainter.h
M Source/WebCore/rendering/TextPainter.cpp
M Source/WebCore/rendering/TextPainter.h
M Source/WebCore/rendering/style/ShadowData.h
M Source/WebCore/rendering/svg/SVGInlineTextBox.cpp
M Source/WebCore/style/StyleBuilderCustom.h

  Log Message:
  ---
  [CSS] Fix shadow of text-decoration/box with currentcolor
https://bugs.webkit.org/show_bug.cgi?id=248126
rdar://102542182

Reviewed by Antti Koivisto.

'currentcolor' for shadow (text and box) should be resolved at use time to
inherit the cascade properly and not at specified time.

* LayoutTests/TestExpectations:
* Source/WebCore/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::ComputedStyleExtractor::valueForShadow):
* Source/WebCore/display/css/DisplayBoxDecorationPainter.cpp:
(WebCore::Display::BoxDecorationPainter::paintBoxShadow const):
* Source/WebCore/display/css/DisplayStyle.cpp:
(WebCore::Display::deepCopy):
(WebCore::Display::Style::Style):
* Source/WebCore/editing/Editor.cpp:
(WebCore::Editor::fontAttributesAtSelectionStart):
* Source/WebCore/rendering/BackgroundPainter.cpp:
(WebCore::applyBoxShadowForBackground):
(WebCore::BackgroundPainter::paintBoxShadow):
* Source/WebCore/rendering/EllipsisBoxPainter.cpp:
(WebCore::EllipsisBoxPainter::paint):
* Source/WebCore/rendering/TextBoxPainter.cpp:
(WebCore::TextBoxPainter::paintForeground):
(WebCore::TextBoxPainter::paintBackgroundDecorations):
* Source/WebCore/rendering/TextDecorationPainter.cpp:
(WebCore::TextDecorationPainter::paintBackgroundDecorations):
* Source/WebCore/rendering/TextDecorationPainter.h:
* Source/WebCore/rendering/TextPainter.cpp:
(WebCore::ShadowApplier::ShadowApplier):
(WebCore::TextPainter::TextPainter):
(WebCore::TextPainter::paintTextWithShadows):
* Source/WebCore/rendering/TextPainter.h:
* Source/WebCore/rendering/style/ShadowData.h:
(WebCore::ShadowData::ShadowData):
(WebCore::ShadowData::setColor):
(WebCore::ShadowData::color const):
* Source/WebCore/rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintTextWithShadows):
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyTextOrBoxShadowValue):

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


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


[webkit-changes] [WebKit/WebKit] e07871: [CSS Nesting] Don't serialize first implicit style...

2023-05-12 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e07871e21ea87327296cc3bc0003266655fa1bc0
  
https://github.com/WebKit/WebKit/commit/e07871e21ea87327296cc3bc0003266655fa1bc0
  Author: Matthieu Dubet 
  Date:   2023-05-12 (Fri, 12 May 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.tentative-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.tentative.html
M Source/WebCore/css/CSSGroupingRule.cpp
M Source/WebCore/css/CSSStyleRule.cpp

  Log Message:
  ---
  [CSS Nesting] Don't serialize first implicit style rule inside group rule
https://bugs.webkit.org/show_bug.cgi?id=256647
rdar://109208359

Reviewed by Antti Koivisto.

Orphaned properties in group rule are implicitly added
to a style rule with '&' as selector ;
this implicit style rule should not be serialized.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.tentative-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/serialize-group-rules-with-decls.tentative.html:

 Import from WPT

* Source/WebCore/css/CSSGroupingRule.cpp:
(WebCore::CSSGroupingRule::appendCSSTextForItems const):
(WebCore::CSSGroupingRule::cssTextForDeclsAndRules const):
* Source/WebCore/css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::cssTextForDeclsAndRules const):

This behavior only concerns group rule, not style rule (where a property can't 
be orphaned)

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


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


[webkit-changes] [WebKit/WebKit] 9fa506: [WPT] New test for CSS Nesting with relative selector

2023-05-11 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9fa506cddc457dfbd3894ee2cacfc739ec177c75
  
https://github.com/WebKit/WebKit/commit/9fa506cddc457dfbd3894ee2cacfc739ec177c75
  Author: Matthieu Dubet 
  Date:   2023-05-11 (Thu, 11 May 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting.html

  Log Message:
  ---
  [WPT] New test for CSS Nesting with relative selector
https://bugs.webkit.org/show_bug.cgi?id=256635
rdar://109198284

Reviewed by Antti Koivisto.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ref.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting.html:

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


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


[webkit-changes] [WebKit/WebKit] 22a69c: [CSS Nesting] Don't serialize the implicit parent ...

2023-05-10 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 22a69c73dd84b61a4a15ab5294b3880af1cb14a9
  
https://github.com/WebKit/WebKit/commit/22a69c73dd84b61a4a15ab5294b3880af1cb14a9
  Author: Matthieu Dubet 
  Date:   2023-05-10 (Wed, 10 May 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html
M Source/WebCore/css/CSSSelector.cpp
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSSelectorParser.cpp

  Log Message:
  ---
  [CSS Nesting] Don't serialize the implicit parent selector in relative 
selector
https://bugs.webkit.org/show_bug.cgi?id=256578
rdar://109141615

Reviewed by Antti Koivisto.

Instead of inserting the implicit parent selector at parse time
(which makes it appears in the serialization),
we insert the resolved parent later (during rule set building).

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting-ref.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/implicit-nesting.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/parsing.html:
* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText const):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeStyleRule):
(WebCore::CSSParserImpl::consumeDeclarationListOrStyleBlockHelper):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::parseCSSSelector):
(WebCore::CSSSelectorParser::consumeRelativeNestedSelector):
(WebCore::CSSSelectorParser::resolveNestingParent):

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


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


[webkit-changes] [WebKit/WebKit] 28bb70: [CSS] Fix memory leak in CSSSelector copy ctor

2023-05-09 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 28bb70d0289c97fd73f2531a411efabc06bd0c12
  
https://github.com/WebKit/WebKit/commit/28bb70d0289c97fd73f2531a411efabc06bd0c12
  Author: Matthieu Dubet 
  Date:   2023-05-09 (Tue, 09 May 2023)

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

  Log Message:
  ---
  [CSS] Fix memory leak in CSSSelector copy ctor
https://bugs.webkit.org/show_bug.cgi?id=256412
rdar://108836283

Reviewed by Antti Koivisto.

After leakRef(), the counter is already at 1, calling ref() is wrong.

* Source/WebCore/css/CSSSelector.cpp:
(WebCore::CSSSelector::CSSSelector):

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


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


[webkit-changes] [WebKit/WebKit] 7259c9: [CSS] Delete unused StyleRule::resolvedSelectorList

2023-05-05 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7259c9d431e151a179b72d52a5ce3d899d5bf721
  
https://github.com/WebKit/WebKit/commit/7259c9d431e151a179b72d52a5ce3d899d5bf721
  Author: Matthieu Dubet 
  Date:   2023-05-05 (Fri, 05 May 2023)

  Changed paths:
M Source/WebCore/css/StyleRule.h

  Log Message:
  ---
  [CSS] Delete unused StyleRule::resolvedSelectorList
https://bugs.webkit.org/show_bug.cgi?id=256375
rdar://108954090

Reviewed by Tim Nguyen.

* Source/WebCore/css/StyleRule.h:
(WebCore::StyleRule::resolvedSelectorList const):

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


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


[webkit-changes] [WebKit/WebKit] 829f91: [CSS Nesting] Add WPT for each nested at-rule

2023-05-03 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 829f91f40c1670fe538fd761b879f30354e496af
  
https://github.com/WebKit/WebKit/commit/829f91f40c1670fe538fd761b879f30354e496af
  Author: Matthieu Dubet 
  Date:   2023-05-03 (Wed, 03 May 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-expected.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-ref.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules.html

  Log Message:
  ---
  [CSS Nesting] Add WPT for each nested at-rule
https://bugs.webkit.org/show_bug.cgi?id=256202
rdar://108776084

Reviewed by Tim Nguyen.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules-ref.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/conditional-rules.html:

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


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


[webkit-changes] [WebKit/WebKit] 30d902: [Memory] Re-order FontSizeAdjust to remove some pa...

2023-04-28 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 30d90238fd840d41cd4c42604f21fc2745412604
  
https://github.com/WebKit/WebKit/commit/30d90238fd840d41cd4c42604f21fc2745412604
  Author: Matthieu Dubet 
  Date:   2023-04-28 (Fri, 28 Apr 2023)

  Changed paths:
M Source/WebCore/animation/CSSPropertyAnimation.cpp
M Source/WebCore/platform/graphics/FontCascadeDescription.h
M Source/WebCore/platform/graphics/FontSizeAdjust.h
M Source/WebCore/style/StyleBuilderConverter.h

  Log Message:
  ---
  [Memory] Re-order FontSizeAdjust to remove some padding
https://bugs.webkit.org/show_bug.cgi?id=256085
rdar://108652215

Reviewed by Antti Koivisto and Chris Dumez.

With this patch FontSizeAdjust class shrinks from 12 to 8 bytes.

* Source/WebCore/animation/CSSPropertyAnimation.cpp:
* Source/WebCore/platform/graphics/FontCascadeDescription.h:
(WebCore::FontCascadeDescription::initialFontSizeAdjust):
* Source/WebCore/platform/graphics/FontSizeAdjust.h:
* Source/WebCore/style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertFontSizeAdjust):

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


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


[webkit-changes] [WebKit/WebKit] ab8822: [CSS Nesting] Fix parsing of nested at-rules with ...

2023-04-17 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ab88221743a99d533cee3c21c2b4de51cbf87d6b
  
https://github.com/WebKit/WebKit/commit/ab88221743a99d533cee3c21c2b4de51cbf87d6b
  Author: Matthieu Dubet 
  Date:   2023-04-17 (Mon, 17 Apr 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt
M Source/WebCore/css/parser/CSSParserImpl.cpp

  Log Message:
  ---
  [CSS Nesting] Fix parsing of nested at-rules with CSSOM
https://bugs.webkit.org/show_bug.cgi?id=255530
rdar://107760234

Reviewed by Antti Koivisto.

CSS OM insertion can "bypass" the normal stack by inserting at an arbitrarily
deeply nested context.
We already have isNestedContext() function to check for this, but it was
not used here unfortunately.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeQualifiedRule):
(WebCore::CSSParserImpl::consumeRegularRuleList):
(WebCore::CSSParserImpl::consumeDeclarationListOrStyleBlockHelper):

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


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


[webkit-changes] [WebKit/WebKit] 9eba2e: [CSS Nesting] Rebuild rule set from original (not ...

2023-04-17 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9eba2e0de0fb4e8fb6c8f0d52252732deaeff786
  
https://github.com/WebKit/WebKit/commit/9eba2e0de0fb4e8fb6c8f0d52252732deaeff786
  Author: Matthieu Dubet 
  Date:   2023-04-17 (Mon, 17 Apr 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/invalidation-004-expected.txt
M Source/WebCore/style/RuleSetBuilder.cpp

  Log Message:
  ---
  [CSS Nesting] Rebuild rule set from original (not resolved) selector
https://bugs.webkit.org/show_bug.cgi?id=255521
rdar://108137916

Reviewed by Antti Koivisto.

When there is a modification of a selector by CSSOM,
the next resolution should work on the original user-written selector,
not on the previously resolved selector.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/invalidation-004-expected.txt:
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::resolveSelectorListWithNesting):

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


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


[webkit-changes] [WebKit/WebKit] fdf42a: Fix setSelectorText() to overwrite both selector a...

2023-04-14 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: fdf42acd549d2f4bef233f855cc9f2c0af9d0a6a
  
https://github.com/WebKit/WebKit/commit/fdf42acd549d2f4bef233f855cc9f2c0af9d0a6a
  Author: Matthieu Dubet 
  Date:   2023-04-14 (Fri, 14 Apr 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom.html
M Source/WebCore/css/CSSStyleRule.cpp
M Source/WebCore/css/StyleRule.h

  Log Message:
  ---
  Fix setSelectorText() to overwrite both selector and original selector
https://bugs.webkit.org/show_bug.cgi?id=255446
rdar://108041191

Reviewed by Antti Koivisto.

Before this patch, only the StyleRule selector was overwritten:
selector matching was correct but CSSOM cssText() displayed the wrong selector.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom.html:
* Source/WebCore/css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::setSelectorText):
* Source/WebCore/css/StyleRule.h:
(WebCore::StyleRuleWithNesting::wrapperAdoptOriginalSelectorList):

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


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


[webkit-changes] [WebKit/WebKit] 547e70: Avoid unnecessary copy of CSSSelectorList with non...

2023-04-14 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 547e70e42ef9715daf53fc649da6899a1f0096ad
  
https://github.com/WebKit/WebKit/commit/547e70e42ef9715daf53fc649da6899a1f0096ad
  Author: Matthieu Dubet 
  Date:   2023-04-14 (Fri, 14 Apr 2023)

  Changed paths:
M Source/WebCore/dom/SelectorQuery.cpp
M Source/WebCore/style/RuleSetBuilder.cpp

  Log Message:
  ---
  Avoid unnecessary copy of CSSSelectorList with non nested style rule
https://bugs.webkit.org/show_bug.cgi?id=255443
rdar://108037598

Reviewed by Antti Koivisto.

resolveNestingParent() creates a copy of the selector list
and resolves it.
We should avoid calling it altogether when it's unnecessary
(top level and no & selector).

* Source/WebCore/dom/SelectorQuery.cpp:
(WebCore::SelectorQueryCache::add):
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::resolveSelectorListWithNesting):

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


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


[webkit-changes] [WebKit/WebKit] 14c725: Unreviewed, test rebase for font-variant-alternates

2023-04-12 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 14c72573477d339ada91aad5d9277d6762a08bbd
  
https://github.com/WebKit/WebKit/commit/14c72573477d339ada91aad5d9277d6762a08bbd
  Author: Matthieu Dubet 
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/platform/glib/TestExpectations

  Log Message:
  ---
  Unreviewed, test rebase for font-variant-alternates

* LayoutTests/TestExpectations:
* LayoutTests/platform/glib/TestExpectations:

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


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


[webkit-changes] [WebKit/WebKit] 3ac8b5: Use String::isNull instead of std::optional

2023-04-12 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3ac8b5512c4dd0473a576ad26d5682c93ee1f721
  
https://github.com/WebKit/WebKit/commit/3ac8b5512c4dd0473a576ad26d5682c93ee1f721
  Author: Matthieu Dubet 
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-03.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-06.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-09.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-12.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-15.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-18.html
M Source/WebCore/platform/text/TextFlags.cpp

  Log Message:
  ---
  Use String::isNull instead of std::optional
https://bugs.webkit.org/show_bug.cgi?id=255337
rdar://107758556

Reviewed by Brent Fulgham.

std::optional doesn't make sense because String
has its own representation of invalid (isNull).
In this case, the optional check was always true, thus
passing a null string to the find() method.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-03.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-06.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-09.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-12.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-15.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-variant-alternates-18.html:
* Source/WebCore/platform/text/TextFlags.cpp:
(WebCore::computeFeatureSettingsFromVariants):

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


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


[webkit-changes] [WebKit/WebKit] 72ae66: [Web Inspector] Fix crash when inspecting counter ...

2023-04-11 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 72ae661f7f456a00b7cf4d7e11d5c37738538de9
  
https://github.com/WebKit/WebKit/commit/72ae661f7f456a00b7cf4d7e11d5c37738538de9
  Author: Matthieu Dubet 
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
M LayoutTests/inspector/css/getMatchedStylesForNode.html
M Source/WebCore/css/parser/CSSParserImpl.cpp

  Log Message:
  ---
  [Web Inspector] Fix crash when inspecting counter style rule
https://bugs.webkit.org/show_bug.cgi?id=255084
rdar://107576505

Reviewed by Patrick Angle.

consumeCounterStyleRule() already calls the Web Inspector
methods (startRuleBody/endRuleBody).
Those redundant calls make the Web Inspector crash.

* LayoutTests/inspector/css/getMatchedStylesForNode.html:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeDeclarationListOrStyleBlockHelper):

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


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


[webkit-changes] [WebKit/WebKit] afcf05: [CSS] Enable CSS Nesting feature

2023-03-31 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: afcf053c33949f71c449914803935cb3ca0ec31e
  
https://github.com/WebKit/WebKit/commit/afcf053c33949f71c449914803935cb3ca0ec31e
  Author: Matthieu Dubet 
  Date:   2023-03-31 (Fri, 31 Mar 2023)

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

  Log Message:
  ---
  [CSS] Enable CSS Nesting feature
https://bugs.webkit.org/show_bug.cgi?id=254767
rdar://106825062

Reviewed by Brent Fulgham.

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

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


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


[webkit-changes] [WebKit/WebKit] 90d00d: [CSS] Implement CSSOM insertRule() on StyleRule

2023-03-31 Thread Matthieu Dubet
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 90d00dc15a7b02dda4a6088e22cbdc363b66e567
  
https://github.com/WebKit/WebKit/commit/90d00dc15a7b02dda4a6088e22cbdc363b66e567
  Author: Matthieu Dubet 
  Date:   2023-03-31 (Fri, 31 Mar 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/invalid-inner-rules-expected.txt
M Source/WebCore/css/CSSGroupingRule.cpp
M Source/WebCore/css/CSSGroupingRule.h
M Source/WebCore/css/CSSRule.cpp
M Source/WebCore/css/CSSRule.h
M Source/WebCore/css/CSSStyleRule.cpp
M Source/WebCore/css/CSSStyleSheet.cpp
M Source/WebCore/css/CSSStyleSheet.h
M Source/WebCore/css/StyleRule.cpp
M Source/WebCore/css/StyleRule.h
M Source/WebCore/css/StyleSheetContents.h
M Source/WebCore/css/parser/CSSParser.cpp
M Source/WebCore/css/parser/CSSParser.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSSelectorParser.cpp

  Log Message:
  ---
  [CSS] Implement CSSOM insertRule() on StyleRule
https://bugs.webkit.org/show_bug.cgi?id=254601
rdar://107322119

Reviewed by Antti Koivisto.

This patch handles the transformation of old-school StyleRule object (without a 
children vector)
to a StyleRuleWithNesting object when necessary.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/cssom-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/invalid-inner-rules-expected.txt:
* Source/WebCore/css/CSSGroupingRule.cpp:
(WebCore::CSSGroupingRule::insertRule):
(WebCore::CSSGroupingRule::prepareChildStyleRuleForNesting):
* Source/WebCore/css/CSSGroupingRule.h:
* Source/WebCore/css/CSSRule.cpp:
(WebCore::CSSRule::hasStyleRuleAncestor const):
(WebCore::CSSRule::prepareChildStyleRuleForNesting):
* Source/WebCore/css/CSSRule.h:
* Source/WebCore/css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::setSelectorText):
(WebCore::CSSStyleRule::cssTextForDeclsAndRules const):
(WebCore::CSSStyleRule::insertRule):
(WebCore::CSSStyleRule::deleteRule):
* Source/WebCore/css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::prepareChildStyleRuleForNesting):
* Source/WebCore/css/CSSStyleSheet.h:
* Source/WebCore/css/StyleRule.cpp:
(WebCore::m_originalSelectorList):
(WebCore::StyleRuleWithNesting::StyleRuleWithNesting):
(WebCore::StyleRuleWithNesting::create):
* Source/WebCore/css/StyleRule.h:
(WebCore::StyleRuleBase::isStyleRule const):
* Source/WebCore/css/StyleSheetContents.h:
* Source/WebCore/css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseRule):
* Source/WebCore/css/parser/CSSParser.h:
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::CSSParserImpl):
(WebCore::CSSParserImpl::parseRule):
(WebCore::CSSParserImpl::consumeDeclarationListOrStyleBlockHelper):
* Source/WebCore/css/parser/CSSParserImpl.h:
(WebCore::CSSParserImpl::isNestedContext):
* Source/WebCore/css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumeNestedSelectorList):

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


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


  1   2   >