Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8c6f3e96197beab5fd3a56bbf50678b20becb0c1
      
https://github.com/WebKit/WebKit/commit/8c6f3e96197beab5fd3a56bbf50678b20becb0c1
  Author: Antti Koivisto <[email protected]>
  Date:   2022-12-18 (Sun, 18 Dec 2022)

  Changed paths:
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/js/CSS-supports-CSSStyleDeclaration-expected.txt
    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-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/idlharness-expected.txt
    M 
LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/css/css-conditional/js/CSS-supports-CSSStyleDeclaration-expected.txt
    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/animation/CSSPropertyAnimation.cpp
    M Source/WebCore/bindings/js/JSCSSRuleCustom.cpp
    M Source/WebCore/css/CSSProperties.json
    A Source/WebCore/css/CSSPropertyRule.cpp
    A Source/WebCore/css/CSSPropertyRule.h
    A Source/WebCore/css/CSSPropertyRule.idl
    M Source/WebCore/css/CSSValueKeywords.in
    M Source/WebCore/css/ComputedStyleExtractor.cpp
    M Source/WebCore/css/DOMCSSCustomPropertyDescriptor.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/parser/CSSAtRuleID.cpp
    M Source/WebCore/css/parser/CSSAtRuleID.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/parser/CSSPropertyParser.h
    M Source/WebCore/inspector/InspectorStyleSheet.cpp

  Log Message:
  -----------
  [@property] Add @property rule parsing and CSSOM
https://bugs.webkit.org/show_bug.cgi?id=249554
rdar://103493363

Reviewed by Cameron McCormack.

https://drafts.css-houdini.org/css-properties-values-api/#at-property-rule

The properties defined by @property rules are not yet registered with this 
patch.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-conditional/js/CSS-supports-CSSStyleDeclaration-expected.txt:

The CSS property code generator adds all properties unconditionally to 
CSSStyleDeclaration interface.
However descriptors should in most cases be omitted. That's why these newly 
added descriptors turn into fails in this test.

* 
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-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-properties-values-api/idlharness-expected.txt:
* 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/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

Use isDescriptorOnly to reduce need for special casing. Descriptors are never 
animatable.

* Source/WebCore/bindings/js/JSCSSRuleCustom.cpp:
(WebCore::toJSNewlyCreated):
* Source/WebCore/css/CSSProperties.json:

Add 'syntax', 'inherits' and 'initial-value' descriptors

* Source/WebCore/css/CSSPropertyRule.cpp: Added.
(WebCore::CSSPropertyRule::CSSPropertyRule):
(WebCore::CSSPropertyRule::create):
(WebCore::CSSPropertyRule::name const):
(WebCore::CSSPropertyRule::syntax const):
(WebCore::CSSPropertyRule::inherits const):
(WebCore::CSSPropertyRule::initialValue const):
(WebCore::CSSPropertyRule::cssText const):
(WebCore::CSSPropertyRule::reattach):
* Source/WebCore/css/CSSPropertyRule.h: Added.
* Source/WebCore/css/CSSPropertyRule.idl: Added.

Add a CSSOM wrapper.

* Source/WebCore/css/CSSValueKeywords.in:

Add 'true' and 'false'.

* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
* Source/WebCore/css/DOMCSSCustomPropertyDescriptor.h:
* Source/WebCore/css/StyleRule.cpp:
(WebCore::StyleRuleBase::visitDerived):
(WebCore::StyleRuleBase::createCSSOMWrapper const):
(WebCore::StyleRuleProperty::StyleRuleProperty):
(WebCore::StyleRuleProperty::create):

Add StyleRuleProperty type for representing @property in stylesheets.

* Source/WebCore/css/StyleRule.h:
(WebCore::StyleRuleBase::isPropertyRule 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:
* Source/WebCore/css/parser/CSSParserContext.cpp:
(WebCore::add):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeAtRule):
(WebCore::CSSParserImpl::consumePropertyRule):
* Source/WebCore/css/parser/CSSParserImpl.h:
* Source/WebCore/css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::parseValue):
(WebCore::CSSPropertyParser::parsePropertyDescriptor):
* Source/WebCore/css/parser/CSSPropertyParser.h:
* Source/WebCore/inspector/InspectorStyleSheet.cpp:
(WebCore::flatteningStrategyForStyleRuleType):

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to