diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/core/css/cssom')
59 files changed, 90 insertions, 94 deletions
diff --git a/chromium/third_party/blink/renderer/core/css/cssom/computed_style_property_map.cc b/chromium/third_party/blink/renderer/core/css/cssom/computed_style_property_map.cc index b92cf86d07b..16d58911f2d 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/computed_style_property_map.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/computed_style_property_map.cc @@ -167,9 +167,11 @@ unsigned int ComputedStylePropertyMap::size() { if (!style) return 0; - const auto& variables = ComputedStyleCSSValueMapping::GetVariables(*style); + DCHECK(StyledNode()); return CSSComputedStyleDeclaration::ComputableProperties().size() + - (variables ? variables->size() : 0); + ComputedStyleCSSValueMapping::GetVariables( + *style, StyledNode()->GetDocument().GetPropertyRegistry()) + .size(); } bool ComputedStylePropertyMap::ComparePropertyNames(const String& a, @@ -264,15 +266,12 @@ void ComputedStylePropertyMap::ForEachProperty( values.emplace_back(property->GetPropertyNameAtomicString(), value); } - const auto& variables = ComputedStyleCSSValueMapping::GetVariables(*style); - if (variables) { - for (const auto& name_value : *variables) { - if (name_value.value) { - values.emplace_back(name_value.key, - CSSCustomPropertyDeclaration::Create( - name_value.key, name_value.value)); - } - } + PropertyRegistry* registry = + StyledNode()->GetDocument().GetPropertyRegistry(); + + for (const auto& name_value : + ComputedStyleCSSValueMapping::GetVariables(*style, registry)) { + values.emplace_back(name_value.key, name_value.value); } std::sort(values.begin(), values.end(), [](const auto& a, const auto& b) { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_image_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_image_value.idl index 683bc070e76..272f96b1e98 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_image_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_image_value.idl @@ -6,7 +6,6 @@ // image types. // https://drafts.css-houdini.org/css-typed-om/#imagevalue-objects [ - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), ImplementedAs=CSSStyleImageValue ] interface CSSImageValue : CSSStyleValue { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_keyword_value.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_keyword_value.cc index f298aff0324..b23b9d6e813 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_keyword_value.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_keyword_value.cc @@ -4,13 +4,13 @@ #include "third_party/blink/renderer/core/css/cssom/css_keyword_value.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_custom_ident_value.h" #include "third_party/blink/renderer/core/css/css_identifier_value.h" #include "third_party/blink/renderer/core/css/css_inherited_value.h" #include "third_party/blink/renderer/core/css/css_initial_value.h" #include "third_party/blink/renderer/core/css/css_unset_value.h" #include "third_party/blink/renderer/core/css/parser/css_property_parser.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" #include "third_party/blink/renderer/platform/wtf/text/atomic_string.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_keyword_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_keyword_value.idl index 22c70605022..31f6b51730d 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_keyword_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_keyword_value.idl @@ -7,7 +7,6 @@ // https://drafts.css-houdini.org/css-typed-om/#keywordvalue-objects [ Constructor(CSSOMString keyword), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSKeywordValue : CSSStyleValue { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_invert.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_math_invert.cc index cf4b1612b5e..b3ef32adfc6 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_invert.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_invert.cc @@ -5,6 +5,7 @@ #include "third_party/blink/renderer/core/css/cssom/css_math_invert.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_sum_value.h" +#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_invert.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_math_invert.idl index b580f529f51..c165677b6c5 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_invert.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_invert.idl @@ -6,7 +6,6 @@ // https://drafts.css-houdini.org/css-typed-om/#cssmathinvert [ Constructor(CSSNumberish arg), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSMathInvert : CSSMathValue { readonly attribute CSSNumberish value; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_max.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_math_max.cc index ea119e46b2c..afad8017ee3 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_max.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_max.cc @@ -5,13 +5,15 @@ #include "third_party/blink/renderer/core/css/cssom/css_math_max.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_sum_value.h" +#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { CSSMathMax* CSSMathMax::Create(const HeapVector<CSSNumberish>& args, ExceptionState& exception_state) { if (args.IsEmpty()) { - exception_state.ThrowDOMException(kSyntaxError, "Arguments can't be empty"); + exception_state.ThrowDOMException(DOMExceptionCode::kSyntaxError, + "Arguments can't be empty"); return nullptr; } diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_max.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_math_max.idl index 590b3b7eada..4a29b526ffd 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_max.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_max.idl @@ -6,7 +6,6 @@ // https://drafts.css-houdini.org/css-typed-om/#cssmathsum [ Constructor(CSSNumberish... args), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSMathMax : CSSMathValue { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_min.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_math_min.cc index ecf7293b86a..49afba461d3 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_min.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_min.cc @@ -5,13 +5,15 @@ #include "third_party/blink/renderer/core/css/cssom/css_math_min.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_sum_value.h" +#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { CSSMathMin* CSSMathMin::Create(const HeapVector<CSSNumberish>& args, ExceptionState& exception_state) { if (args.IsEmpty()) { - exception_state.ThrowDOMException(kSyntaxError, "Arguments can't be empty"); + exception_state.ThrowDOMException(DOMExceptionCode::kSyntaxError, + "Arguments can't be empty"); return nullptr; } diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_min.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_math_min.idl index a028f4ac449..fd8fbb1d2f8 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_min.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_min.idl @@ -6,7 +6,6 @@ // https://drafts.css-houdini.org/css-typed-om/#cssmathsum [ Constructor(CSSNumberish... args), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSMathMin : CSSMathValue { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_negate.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_math_negate.cc index 1cc2296ac1b..a7e04624aac 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_negate.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_negate.cc @@ -5,6 +5,7 @@ #include "third_party/blink/renderer/core/css/cssom/css_math_negate.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_sum_value.h" +#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_negate.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_math_negate.idl index faf4b4194ba..69095537e37 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_negate.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_negate.idl @@ -6,7 +6,6 @@ // https://drafts.css-houdini.org/css-typed-om/#cssmathnegate [ Constructor(CSSNumberish arg), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSMathNegate : CSSMathValue { readonly attribute CSSNumberish value; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_product.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_math_product.cc index 37b20a9001c..80a528e8b0b 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_product.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_product.cc @@ -6,6 +6,7 @@ #include "third_party/blink/renderer/core/css/css_calculation_value.h" #include "third_party/blink/renderer/core/css/cssom/css_math_invert.h" +#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { @@ -33,7 +34,8 @@ CSSNumericSumValue::UnitMap MultiplyUnitMaps( CSSMathProduct* CSSMathProduct::Create(const HeapVector<CSSNumberish>& args, ExceptionState& exception_state) { if (args.IsEmpty()) { - exception_state.ThrowDOMException(kSyntaxError, "Arguments can't be empty"); + exception_state.ThrowDOMException(DOMExceptionCode::kSyntaxError, + "Arguments can't be empty"); return nullptr; } diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_product.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_math_product.idl index 19680ca468e..f4c4471331d 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_product.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_product.idl @@ -6,7 +6,6 @@ // https://drafts.css-houdini.org/css-typed-om/#cssmathsub [ Constructor(CSSNumberish... args), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSMathProduct : CSSMathValue { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_sum.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_math_sum.cc index d7116e51ff7..615a96f6bc9 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_sum.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_sum.cc @@ -6,6 +6,7 @@ #include "third_party/blink/renderer/core/css/css_calculation_value.h" #include "third_party/blink/renderer/core/css/cssom/css_math_negate.h" +#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { @@ -51,7 +52,8 @@ bool operator==(const CSSNumericSumValue::Term& a, const UnitMapComparator& b) { CSSMathSum* CSSMathSum::Create(const HeapVector<CSSNumberish>& args, ExceptionState& exception_state) { if (args.IsEmpty()) { - exception_state.ThrowDOMException(kSyntaxError, "Arguments can't be empty"); + exception_state.ThrowDOMException(DOMExceptionCode::kSyntaxError, + "Arguments can't be empty"); return nullptr; } diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_sum.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_math_sum.idl index 5b8e0372379..72b8cb82e9f 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_sum.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_sum.idl @@ -6,7 +6,6 @@ // https://drafts.css-houdini.org/css-typed-om/#cssmathsum [ Constructor(CSSNumberish... args), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSMathSum : CSSMathValue { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_math_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_math_value.idl index 18eb71ee19e..f4d6a81f638 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_math_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_math_value.idl @@ -14,7 +14,6 @@ enum CSSMathOperator { }; [ - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSMathValue : CSSNumericValue { [ImplementedAs=getOperator] readonly attribute CSSMathOperator operator; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_matrix_component.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_matrix_component.idl index 5db9a74e3ff..530e42f1402 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_matrix_component.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_matrix_component.idl @@ -8,7 +8,6 @@ [ Constructor(DOMMatrixReadOnly matrix, optional CSSMatrixComponentOptions options), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSMatrixComponent : CSSTransformComponent { attribute DOMMatrix matrix; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_array.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_array.idl index c5dc75dfee9..402d98c6720 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_array.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_array.idl @@ -5,7 +5,6 @@ // Represents the sum of one or more CSSNumericValues. // https://drafts.css-houdini.org/css-typed-om/#cssmathsum [ - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSNumericArray { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_type.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_type.idl index 5584af49721..e539ea80e9a 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_type.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_type.idl @@ -3,7 +3,6 @@ // found in the LICENSE file. [ - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] enum CSSNumericBaseType { "length", diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_value.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_value.cc index b2f12340763..ca43018cd54 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_value.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_value.cc @@ -4,7 +4,8 @@ #include "third_party/blink/renderer/core/css/cssom/css_numeric_value.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" +#include <numeric> + #include "third_party/blink/renderer/core/css/css_calculation_value.h" #include "third_party/blink/renderer/core/css/css_primitive_value.h" #include "third_party/blink/renderer/core/css/cssom/css_math_invert.h" @@ -16,8 +17,7 @@ #include "third_party/blink/renderer/core/css/cssom/css_unit_value.h" #include "third_party/blink/renderer/core/css/parser/css_parser_token_stream.h" #include "third_party/blink/renderer/core/css/parser/css_tokenizer.h" - -#include <numeric> +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { @@ -128,16 +128,16 @@ CSSNumericValue* CalcToNumericValue(const CSSCalcExpressionNode& root) { CSSNumericValueVector values; // For cases like calc(1 + 2 + 3), the calc expression tree looks like: - // + - // / \ - // + 3 - // / \ - // 1 2 + // + // + // / \ // + // + 3 // + // / \ // + // 1 2 // // // But we want to produce a CSSMathValue tree that looks like: - // + - // /|\ - // 1 2 3 + // + // + // /|\ // + // 1 2 3 // // // So when the left child has the same operator as its parent, we can combine // the two nodes. We keep moving down the left side of the tree as long as the @@ -209,7 +209,8 @@ CSSNumericValue* CSSNumericValue::parse(const String& css_text, auto range = stream.ConsumeUntilPeekedTypeIs<>(); stream.ConsumeWhitespace(); if (!stream.AtEnd()) { - exception_state.ThrowDOMException(kSyntaxError, "Invalid math expression"); + exception_state.ThrowDOMException(DOMExceptionCode::kSyntaxError, + "Invalid math expression"); return nullptr; } @@ -237,7 +238,8 @@ CSSNumericValue* CSSNumericValue::parse(const String& css_text, break; } - exception_state.ThrowDOMException(kSyntaxError, "Invalid math expression"); + exception_state.ThrowDOMException(DOMExceptionCode::kSyntaxError, + "Invalid math expression"); return nullptr; } @@ -260,7 +262,7 @@ CSSUnitValue* CSSNumericValue::to(const String& unit_string, ExceptionState& exception_state) { CSSPrimitiveValue::UnitType target_unit = UnitFromName(unit_string); if (!IsValidUnit(target_unit)) { - exception_state.ThrowDOMException(kSyntaxError, + exception_state.ThrowDOMException(DOMExceptionCode::kSyntaxError, "Invalid unit for conversion"); return nullptr; } @@ -289,7 +291,7 @@ CSSMathSum* CSSNumericValue::toSum(const Vector<String>& unit_strings, ExceptionState& exception_state) { for (const auto& unit_string : unit_strings) { if (!IsValidUnit(UnitFromName(unit_string))) { - exception_state.ThrowDOMException(kSyntaxError, + exception_state.ThrowDOMException(DOMExceptionCode::kSyntaxError, "Invalid unit for conversion"); return nullptr; } diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_value.idl index eb633b6d1a3..ae86a128983 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_numeric_value.idl @@ -7,7 +7,6 @@ typedef (double or CSSNumericValue) CSSNumberish; [ - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSNumericValue : CSSStyleValue { [RaisesException, NewObject] CSSNumericValue add(CSSNumberish... values); diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_perspective.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_perspective.cc index e283ab2eb2f..e6969ce5359 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_perspective.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_perspective.cc @@ -4,10 +4,10 @@ #include "third_party/blink/renderer/core/css/cssom/css_perspective.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_calculation_value.h" #include "third_party/blink/renderer/core/css/cssom/css_unit_value.h" #include "third_party/blink/renderer/core/geometry/dom_matrix.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_perspective.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_perspective.idl index 2fbea491324..9cba1d1f123 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_perspective.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_perspective.idl @@ -7,7 +7,6 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#cssperspective [ Constructor(CSSNumericValue length), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSPerspective : CSSTransformComponent { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_position_value.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_position_value.cc index 31fc48c34f8..81c2b3cc8ca 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_position_value.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_position_value.cc @@ -4,12 +4,12 @@ #include "third_party/blink/renderer/core/css/cssom/css_position_value.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_identifier_value.h" #include "third_party/blink/renderer/core/css/css_value_pair.h" #include "third_party/blink/renderer/core/css/cssom/css_math_sum.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_value.h" #include "third_party/blink/renderer/core/css/cssom/css_unit_value.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_position_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_position_value.idl index 0edf3262f86..3954abba2d5 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_position_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_position_value.idl @@ -7,7 +7,6 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#positionvalue-objects [ Constructor(CSSNumericValue x, CSSNumericValue y), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSPositionValue : CSSStyleValue { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_rotate.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_rotate.cc index 8f912beb2e0..51bd5f8503d 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_rotate.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_rotate.cc @@ -4,11 +4,11 @@ #include "third_party/blink/renderer/core/css/cssom/css_rotate.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_function_value.h" #include "third_party/blink/renderer/core/css/css_primitive_value.h" #include "third_party/blink/renderer/core/css/cssom/css_unit_value.h" #include "third_party/blink/renderer/core/geometry/dom_matrix.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_rotate.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_rotate.idl index f2fe3a950e8..1b19a86e0e0 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_rotate.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_rotate.idl @@ -8,7 +8,6 @@ [ Constructor(CSSNumericValue angleValue), Constructor(CSSNumberish x, CSSNumberish y, CSSNumberish z, CSSNumericValue angle), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSRotate : CSSTransformComponent { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_scale.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_scale.idl index cd5d3c2a3f1..2644e70bb61 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_scale.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_scale.idl @@ -7,7 +7,6 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#cssscale [ Constructor(CSSNumberish x, CSSNumberish y, optional CSSNumberish z), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSScale : CSSTransformComponent { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_skew.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_skew.cc index 7f02a422354..9bf1634eff4 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_skew.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_skew.cc @@ -4,13 +4,13 @@ #include "third_party/blink/renderer/core/css/cssom/css_skew.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_function_value.h" #include "third_party/blink/renderer/core/css/css_primitive_value.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_value.h" #include "third_party/blink/renderer/core/css/cssom/css_style_value.h" #include "third_party/blink/renderer/core/css/cssom/css_unit_value.h" #include "third_party/blink/renderer/core/geometry/dom_matrix.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_skew.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_skew.idl index d600a548721..8aed33f0326 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_skew.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_skew.idl @@ -7,7 +7,6 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#cssskew [ Constructor(CSSNumericValue ax, CSSNumericValue ay), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSSkew : CSSTransformComponent { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_skew_x.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_skew_x.cc index 14e29737988..424665d8524 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_skew_x.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_skew_x.cc @@ -4,13 +4,13 @@ #include "third_party/blink/renderer/core/css/cssom/css_skew_x.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_function_value.h" #include "third_party/blink/renderer/core/css/css_primitive_value.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_value.h" #include "third_party/blink/renderer/core/css/cssom/css_style_value.h" #include "third_party/blink/renderer/core/css/cssom/css_unit_value.h" #include "third_party/blink/renderer/core/geometry/dom_matrix.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_skew_x.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_skew_x.idl index 56c29e62067..fc08ea50bf3 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_skew_x.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_skew_x.idl @@ -7,7 +7,6 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#cssskewx [ Constructor(CSSNumericValue ax), - RuntimeEnabled=CSSTypedOM, Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), RaisesException=Constructor] interface CSSSkewX : CSSTransformComponent { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_skew_y.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_skew_y.cc index 8ea69f6509a..f064f891e0e 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_skew_y.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_skew_y.cc @@ -4,13 +4,13 @@ #include "third_party/blink/renderer/core/css/cssom/css_skew_y.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_function_value.h" #include "third_party/blink/renderer/core/css/css_primitive_value.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_value.h" #include "third_party/blink/renderer/core/css/cssom/css_style_value.h" #include "third_party/blink/renderer/core/css/cssom/css_unit_value.h" #include "third_party/blink/renderer/core/geometry/dom_matrix.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_skew_y.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_skew_y.idl index 692e00c4670..eea0517cc41 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_skew_y.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_skew_y.idl @@ -7,7 +7,6 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#cssskewy [ Constructor(CSSNumericValue ay), - RuntimeEnabled=CSSTypedOM, Exposed=(Window, Worker, PaintWorklet, LayoutWorklet), RaisesException=Constructor] interface CSSSkewY : CSSTransformComponent { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_style_value.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_style_value.cc index c6451322901..4c4706cfe0b 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_style_value.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_style_value.cc @@ -4,13 +4,13 @@ #include "third_party/blink/renderer/core/css/cssom/css_style_value.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/bindings/core/v8/script_value.h" #include "third_party/blink/renderer/bindings/core/v8/to_v8_for_core.h" #include "third_party/blink/renderer/core/css/cssom/style_value_factory.h" #include "third_party/blink/renderer/core/css/parser/css_parser_context.h" #include "third_party/blink/renderer/core/css/properties/css_property.h" #include "third_party/blink/renderer/core/style_property_shorthand.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_style_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_style_value.idl index 88ae318d0c7..d63a4b1ae7b 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_style_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_style_value.idl @@ -7,7 +7,7 @@ // base CSSStyleValues. // Spec: https://drafts.css-houdini.org/css-typed-om/#stylevalue-objects [ - Exposed(Window CSSTypedOM,LayoutWorklet CSSTypedOM,PaintWorklet CSSPaintAPI) + Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSStyleValue { stringifier; // Putting Exposed=Window in the next line makes |parse| not exposed to Worklets. diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_transform_component.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_transform_component.idl index ab1d67b7128..cfb178357c0 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_transform_component.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_transform_component.idl @@ -7,7 +7,6 @@ // before they can be used as a value for properties like "transform". // Spec: https://drafts.css-houdini.org/css-typed-om/#csstransformcomponent [ - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSTransformComponent { stringifier; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_transform_value.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_transform_value.cc index a8846750b1e..9939dd3ee21 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_transform_value.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_transform_value.cc @@ -7,6 +7,8 @@ #include "third_party/blink/renderer/core/css/css_value_list.h" #include "third_party/blink/renderer/core/css/cssom/css_transform_component.h" #include "third_party/blink/renderer/core/geometry/dom_matrix.h" +#include "third_party/blink/renderer/platform/bindings/exception_messages.h" +#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_transform_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_transform_value.idl index d6b71ee6609..7c654d1180a 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_transform_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_transform_value.idl @@ -5,7 +5,6 @@ [ Constructor(sequence<CSSTransformComponent> transforms), RaisesException=Constructor, - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSTransformValue : CSSStyleValue { iterable<CSSTransformComponent>; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_translate.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_translate.cc index b978112e8df..f571a1e4758 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_translate.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_translate.cc @@ -4,11 +4,11 @@ #include "third_party/blink/renderer/core/css/cssom/css_translate.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_primitive_value.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_value.h" #include "third_party/blink/renderer/core/css/cssom/css_style_value.h" #include "third_party/blink/renderer/core/geometry/dom_matrix.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_translate.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_translate.idl index ca272a6734f..51f2ce9e6de 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_translate.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_translate.idl @@ -8,7 +8,6 @@ [ Constructor(CSSNumericValue x, CSSNumericValue y, optional CSSNumericValue z), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor ] interface CSSTranslate : CSSTransformComponent { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_unit_value.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_unit_value.cc index ec8561fb28b..22b3c060978 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_unit_value.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_unit_value.cc @@ -4,7 +4,6 @@ #include "third_party/blink/renderer/core/css/cssom/css_unit_value.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/animation/length_property_functions.h" #include "third_party/blink/renderer/core/css/css_calculation_value.h" #include "third_party/blink/renderer/core/css/css_resolution_units.h" @@ -15,7 +14,9 @@ #include "third_party/blink/renderer/core/css/cssom/css_math_sum.h" #include "third_party/blink/renderer/core/css/cssom/css_numeric_sum_value.h" #include "third_party/blink/renderer/core/css/properties/css_property.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" #include "third_party/blink/renderer/platform/wtf/math_extras.h" +#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_unit_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_unit_value.idl index fe651c98c0b..b0be5d7bdfd 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_unit_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_unit_value.idl @@ -8,7 +8,6 @@ [ Constructor(double value, CSSOMString unit), RaisesException=Constructor, - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSUnitValue : CSSNumericValue { attribute double value; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_unit_values.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_unit_values.idl index 5f1eeb3a11e..36a25b5148c 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_unit_values.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_unit_values.idl @@ -5,8 +5,7 @@ // https://drafts.css-houdini.org/css-typed-om/#numeric-factory [ - ImplementedAs=CSSUnitValues, - RuntimeEnabled=CSSTypedOM + ImplementedAs=CSSUnitValues ] partial interface CSS { [NewObject] static CSSUnitValue number(double value); [NewObject] static CSSUnitValue percent(double value); diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_unparsed_value.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_unparsed_value.cc index c0115351288..d599148a2f2 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_unparsed_value.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_unparsed_value.cc @@ -9,6 +9,7 @@ #include "third_party/blink/renderer/core/css/css_variable_reference_value.h" #include "third_party/blink/renderer/core/css/cssom/css_style_variable_reference_value.h" #include "third_party/blink/renderer/core/css/parser/css_tokenizer.h" +#include "third_party/blink/renderer/platform/bindings/exception_messages.h" #include "third_party/blink/renderer/platform/wtf/text/string_builder.h" namespace blink { @@ -40,7 +41,8 @@ HeapVector<CSSUnparsedSegment> ParserTokenRangeToTokens( HeapVector<CSSUnparsedSegment> tokens; StringBuilder builder; while (!range.AtEnd()) { - if (range.Peek().FunctionId() == CSSValueVar) { + if (range.Peek().FunctionId() == CSSValueVar || + range.Peek().FunctionId() == CSSValueEnv) { if (!builder.IsEmpty()) { tokens.push_back(CSSUnparsedSegment::FromString(builder.ToString())); builder.Clear(); @@ -120,8 +122,8 @@ const CSSValue* CSSUnparsedValue::ToCSSValue() const { CSSTokenizer tokenizer(ToString()); const auto tokens = tokenizer.TokenizeToEOF(); return CSSVariableReferenceValue::Create(CSSVariableData::Create( - CSSParserTokenRange(tokens), false /* isAnimationTainted */, - false /* needsVariableResolution */)); + CSSParserTokenRange(tokens), false /* is_animation_tainted */, + false /* needs_variable_resolution */, KURL(), WTF::TextEncoding())); } String CSSUnparsedValue::ToString() const { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_unparsed_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_unparsed_value.idl index 236fcd1cbc0..685c20f086c 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_unparsed_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_unparsed_value.idl @@ -7,7 +7,6 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#unparsedvalue-objects [ Constructor(sequence<CSSUnparsedSegment> members), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface CSSUnparsedValue : CSSStyleValue { iterable<CSSUnparsedSegment>; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_url_image_value.cc b/chromium/third_party/blink/renderer/core/css/cssom/css_url_image_value.cc index 3ec4f06dc5a..d0bb96c66fe 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_url_image_value.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_url_image_value.cc @@ -4,11 +4,11 @@ #include "third_party/blink/renderer/core/css/cssom/css_url_image_value.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_image_value.h" #include "third_party/blink/renderer/core/execution_context/execution_context.h" #include "third_party/blink/renderer/core/loader/resource/image_resource_content.h" #include "third_party/blink/renderer/core/style/style_image.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" #include "third_party/blink/renderer/platform/bindings/script_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/css_variable_reference_value.idl b/chromium/third_party/blink/renderer/core/css/cssom/css_variable_reference_value.idl index 8da21e8191f..ca4677386dd 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/css_variable_reference_value.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/css_variable_reference_value.idl @@ -6,7 +6,6 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#cssvariablereferencevalue [ Constructor(CSSOMString variable, optional CSSUnparsedValue? fallback = null), - RuntimeEnabled=CSSTypedOM, Exposed=(Window,LayoutWorklet,PaintWorklet), RaisesException=Constructor, ImplementedAs=CSSStyleVariableReferenceValue diff --git a/chromium/third_party/blink/renderer/core/css/cssom/declared_style_property_map.cc b/chromium/third_party/blink/renderer/core/css/cssom/declared_style_property_map.cc index 0b00dd6d22b..1856f7f80ee 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/declared_style_property_map.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/declared_style_property_map.cc @@ -123,7 +123,7 @@ String DeclaredStylePropertyMap::SerializationForShorthand( DCHECK(property.IsShorthand()); if (StyleRule* style_rule = GetStyleRule()) { return StylePropertySerializer(style_rule->Properties()) - .GetPropertyValue(property.PropertyID()); + .SerializeShorthand(property.PropertyID()); } return ""; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/element_computed_style_map.idl b/chromium/third_party/blink/renderer/core/css/cssom/element_computed_style_map.idl index b212058e2f9..38f0117151c 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/element_computed_style_map.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/element_computed_style_map.idl @@ -5,8 +5,7 @@ // https://drafts.css-houdini.org/css-typed-om/#computed-stylepropertymapreadonly-objects [ - ImplementedAs=ElementComputedStyleMap, - RuntimeEnabled=CSSTypedOM + ImplementedAs=ElementComputedStyleMap ] partial interface Element { [MeasureAs=CSSTypedOMStylePropertyMap] StylePropertyMapReadOnly computedStyleMap(); }; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/inline_style_property_map.cc b/chromium/third_party/blink/renderer/core/css/cssom/inline_style_property_map.cc index 555b687f9f3..65e9ed9260c 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/inline_style_property_map.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/inline_style_property_map.cc @@ -90,7 +90,7 @@ String InlineStylePropertyMap::SerializationForShorthand( DCHECK(property.IsShorthand()); if (const CSSPropertyValueSet* inline_style = owner_element_->InlineStyle()) { return StylePropertySerializer(*inline_style) - .GetPropertyValue(property.PropertyID()); + .SerializeShorthand(property.PropertyID()); } NOTREACHED(); diff --git a/chromium/third_party/blink/renderer/core/css/cssom/prepopulated_computed_style_property_map.h b/chromium/third_party/blink/renderer/core/css/cssom/prepopulated_computed_style_property_map.h index f081f788336..f691eafe73f 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/prepopulated_computed_style_property_map.h +++ b/chromium/third_party/blink/renderer/core/css/cssom/prepopulated_computed_style_property_map.h @@ -11,6 +11,8 @@ namespace blink { +class ComputedStyle; + // This class has the same behaviour as the ComputedStylePropertyMap, except it // only contains the properties given to the constructor. // diff --git a/chromium/third_party/blink/renderer/core/css/cssom/prepopulated_computed_style_property_map_test.cc b/chromium/third_party/blink/renderer/core/css/cssom/prepopulated_computed_style_property_map_test.cc index 9ae84f12315..e0cc71c85c6 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/prepopulated_computed_style_property_map_test.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/prepopulated_computed_style_property_map_test.cc @@ -8,6 +8,7 @@ #include "testing/gtest/include/gtest/gtest.h" #include "third_party/blink/renderer/core/css/css_computed_style_declaration.h" #include "third_party/blink/renderer/core/dom/element.h" +#include "third_party/blink/renderer/core/dom/node_computed_style.h" #include "third_party/blink/renderer/core/testing/page_test_base.h" #include "third_party/blink/renderer/platform/heap/handle.h" @@ -38,13 +39,13 @@ TEST_F(PrepopulatedComputedStylePropertyMapTest, NativePropertyAccessors) { {CSSPropertyColor, CSSPropertyAlignItems}); Vector<AtomicString> empty_custom_properties; + GetDocument().View()->UpdateAllLifecyclePhases(); Node* node = PageNode(); - const ComputedStyle& style = *node->EnsureComputedStyle(); PrepopulatedComputedStylePropertyMap* map = - new PrepopulatedComputedStylePropertyMap(GetDocument(), style, node, - native_properties, - empty_custom_properties); + new PrepopulatedComputedStylePropertyMap( + GetDocument(), node->ComputedStyleRef(), node, native_properties, + empty_custom_properties); DummyExceptionStateForTesting exception_state; @@ -74,13 +75,13 @@ TEST_F(PrepopulatedComputedStylePropertyMapTest, CustomPropertyAccessors) { Vector<CSSPropertyID> empty_native_properties; Vector<AtomicString> custom_properties({"--foo", "--bar"}); + GetDocument().View()->UpdateAllLifecyclePhases(); Node* node = PageNode(); - const ComputedStyle& style = *node->EnsureComputedStyle(); PrepopulatedComputedStylePropertyMap* map = - new PrepopulatedComputedStylePropertyMap(GetDocument(), style, node, - empty_native_properties, - custom_properties); + new PrepopulatedComputedStylePropertyMap( + GetDocument(), node->ComputedStyleRef(), node, + empty_native_properties, custom_properties); DummyExceptionStateForTesting exception_state; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/style_property_map.cc b/chromium/third_party/blink/renderer/core/css/cssom/style_property_map.cc index db8d0348983..0ec4c0624a5 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/style_property_map.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/style_property_map.cc @@ -4,7 +4,6 @@ #include "third_party/blink/renderer/core/css/cssom/style_property_map.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_identifier_value.h" #include "third_party/blink/renderer/core/css/css_value_list.h" #include "third_party/blink/renderer/core/css/css_value_pair.h" @@ -15,6 +14,7 @@ #include "third_party/blink/renderer/core/css/parser/css_parser_context.h" #include "third_party/blink/renderer/core/css/properties/css_property.h" #include "third_party/blink/renderer/core/style_property_shorthand.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { diff --git a/chromium/third_party/blink/renderer/core/css/cssom/style_property_map.idl b/chromium/third_party/blink/renderer/core/css/cssom/style_property_map.idl index c8d3b1ccabc..775ab0b0cb0 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/style_property_map.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/style_property_map.idl @@ -5,7 +5,6 @@ // https://drafts.css-houdini.org/css-typed-om/#the-stylepropertymap [ - RuntimeEnabled=CSSTypedOM, Exposed=(Window) ] interface StylePropertyMap : StylePropertyMapReadOnly { // TODO(https://crbug.com/838890): DOMString should be CSSOMString diff --git a/chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.cc b/chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.cc index 1359ab6ada1..bd91dd14b39 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.cc @@ -4,7 +4,6 @@ #include "third_party/blink/renderer/core/css/cssom/style_property_map_read_only.h" -#include "third_party/blink/renderer/bindings/core/v8/exception_state.h" #include "third_party/blink/renderer/core/css/css_custom_property_declaration.h" #include "third_party/blink/renderer/core/css/css_value_list.h" #include "third_party/blink/renderer/core/css/css_variable_reference_value.h" @@ -15,6 +14,7 @@ #include "third_party/blink/renderer/core/css/properties/css_property.h" #include "third_party/blink/renderer/core/css_property_names.h" #include "third_party/blink/renderer/core/style_property_shorthand.h" +#include "third_party/blink/renderer/platform/bindings/exception_state.h" namespace blink { @@ -72,7 +72,9 @@ CSSStyleValue* StylePropertyMapReadOnly::get(const String& property_name, if (!value) return nullptr; - if (property.IsRepeated()) { + // Custom properties count as repeated whenever we have a CSSValueList. + if (property.IsRepeated() || + (property_id == CSSPropertyVariable && value->IsValueList())) { CSSStyleValueVector values = StyleValueFactory::CssValueToStyleValueVector(property_id, *value); return values.IsEmpty() ? nullptr : values[0]; diff --git a/chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.idl b/chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.idl index 8a73e33c07c..5fab519e625 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.idl +++ b/chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.idl @@ -4,7 +4,7 @@ // Spec: https://drafts.css-houdini.org/css-typed-om/#the-stylepropertymap [ - Exposed(Window CSSTypedOM,LayoutWorklet CSSTypedOM,PaintWorklet CSSPaintAPI) + Exposed=(Window,LayoutWorklet,PaintWorklet) ] interface StylePropertyMapReadOnly { iterable<CSSOMString, sequence<CSSStyleValue>>; /* TODO: This should return (undefined or CSSStyleValue), diff --git a/chromium/third_party/blink/renderer/core/css/cssom/style_value_factory.cc b/chromium/third_party/blink/renderer/core/css/cssom/style_value_factory.cc index 13038719e36..52601ae6f96 100644 --- a/chromium/third_party/blink/renderer/core/css/cssom/style_value_factory.cc +++ b/chromium/third_party/blink/renderer/core/css/cssom/style_value_factory.cc @@ -255,9 +255,10 @@ CSSStyleValueVector StyleValueFactory::FromString( if ((property_id == CSSPropertyVariable && !tokens.IsEmpty()) || CSSVariableParser::ContainsValidVariableReferences(range)) { - const auto variable_data = - CSSVariableData::Create(range, false /* is_animation_tainted */, - false /* needs variable resolution */); + const auto variable_data = CSSVariableData::Create( + range, false /* is_animation_tainted */, + false /* needs variable resolution */, parser_context->BaseURL(), + parser_context->Charset()); CSSStyleValueVector values; values.push_back(CSSUnparsedValue::FromCSSVariableData(*variable_data)); return values; @@ -289,7 +290,10 @@ CSSStyleValueVector StyleValueFactory::CssValueToStyleValueVector( return style_value_vector; } - if (!css_value.IsValueList() || !CSSProperty::Get(property_id).IsRepeated()) { + // Custom properties count as repeated whenever we have a CSSValueList. + if (!css_value.IsValueList() || + (!CSSProperty::Get(property_id).IsRepeated() && + property_id != CSSPropertyVariable)) { return UnsupportedCSSValue(property_id, css_value); } |