Created
April 12, 2017 05:50
-
-
Save darrnshn/88a94abf4e37e26b7fdcc4126beb11fa to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include "StyleBuilderFunctions.h" | |
| #include "CSSValueKeywords.h" | |
| #include "core/animation/css/CSSAnimationData.h" | |
| #include "core/css/BasicShapeFunctions.h" | |
| #include "core/css/CSSContentDistributionValue.h" | |
| #include "core/css/CSSCustomIdentValue.h" | |
| #include "core/css/CSSPrimitiveValueMappings.h" | |
| #include "core/css/CSSURIValue.h" | |
| #include "core/css/CSSValuePair.h" | |
| #include "core/css/resolver/StyleResolverState.h" | |
| namespace blink { | |
| void StyleBuilderFunctions::applyInitialCSSPropertyVectorEffect(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetVectorEffect(SVGComputedStyle::InitialVectorEffect()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyVectorEffect(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetVectorEffect(state.ParentStyle()->SvgStyle().VectorEffect()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyVectorEffect(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetVectorEffect(ToCSSIdentifierValue(value).ConvertTo<EVectorEffect>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFillRule(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFillRule(SVGComputedStyle::InitialFillRule()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFillRule(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFillRule(state.ParentStyle()->SvgStyle().FillRule()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFillRule(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetFillRule(ToCSSIdentifierValue(value).ConvertTo<WindRule>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontVariantNumeric(StyleResolverState& state) { | |
| state.GetFontBuilder().SetVariantNumeric(FontBuilder::InitialVariantNumeric()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontVariantNumeric(StyleResolverState& state) { | |
| state.GetFontBuilder().SetVariantNumeric(state.ParentFontDescription().VariantNumeric()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontVariantNumeric(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetVariantNumeric(StyleBuilderConverter::ConvertFontVariantNumeric(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyCx(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetCx(SVGComputedStyle::InitialCx()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyCx(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetCx(state.ParentStyle()->SvgStyle().Cx()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyCx(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetCx(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyCy(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetCy(SVGComputedStyle::InitialCy()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyCy(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetCy(state.ParentStyle()->SvgStyle().Cy()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyCy(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetCy(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyShapeOutside(StyleResolverState& state) { | |
| state.Style()->SetShapeOutside(ComputedStyle::InitialShapeOutside()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyShapeOutside(StyleResolverState& state) { | |
| state.Style()->SetShapeOutside(state.ParentStyle()->ShapeOutside()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyShapeOutside(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetShapeOutside(StyleBuilderConverter::ConvertShapeValue(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitHyphenateCharacter(StyleResolverState& state) { | |
| state.Style()->SetHyphenationString(ComputedStyle::InitialHyphenationString()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitHyphenateCharacter(StyleResolverState& state) { | |
| state.Style()->SetHyphenationString(state.ParentStyle()->HyphenationString()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitHyphenateCharacter(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetHyphenationString(StyleBuilderConverter::ConvertString<CSSValueAuto>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxPack(StyleResolverState& state) { | |
| state.Style()->SetBoxPack(ComputedStyle::InitialBoxPack()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxPack(StyleResolverState& state) { | |
| state.Style()->SetBoxPack(state.ParentStyle()->BoxPack()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxPack(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxPack(ToCSSIdentifierValue(value).ConvertTo<EBoxPack>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMarginBottomCollapse(StyleResolverState& state) { | |
| state.Style()->SetMarginAfterCollapse(ComputedStyle::InitialMarginAfterCollapse()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMarginBottomCollapse(StyleResolverState& state) { | |
| state.Style()->SetMarginAfterCollapse(state.ParentStyle()->MarginAfterCollapse()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMarginBottomCollapse(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMarginAfterCollapse(ToCSSIdentifierValue(value).ConvertTo<EMarginCollapse>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOutlineWidth(StyleResolverState& state) { | |
| state.Style()->SetOutlineWidth(ComputedStyle::InitialOutlineWidth()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOutlineWidth(StyleResolverState& state) { | |
| state.Style()->SetOutlineWidth(state.ParentStyle()->OutlineWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOutlineWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOutlineWidth(StyleBuilderConverter::ConvertLineWidth<unsigned short>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColumnRuleWidth(StyleResolverState& state) { | |
| state.Style()->SetColumnRuleWidth(ComputedStyle::InitialColumnRuleWidth()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColumnRuleWidth(StyleResolverState& state) { | |
| state.Style()->SetColumnRuleWidth(state.ParentStyle()->ColumnRuleWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColumnRuleWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetColumnRuleWidth(StyleBuilderConverter::ConvertLineWidth<unsigned short>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStrokeOpacity(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeOpacity(SVGComputedStyle::InitialStrokeOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStrokeOpacity(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeOpacity(state.ParentStyle()->SvgStyle().StrokeOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStrokeOpacity(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetStrokeOpacity(StyleBuilderConverter::ConvertNumberOrPercentage(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOffsetRotate(StyleResolverState& state) { | |
| state.Style()->SetOffsetRotate(ComputedStyle::InitialOffsetRotate()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOffsetRotate(StyleResolverState& state) { | |
| state.Style()->SetOffsetRotate(state.ParentStyle()->OffsetRotate()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOffsetRotate(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOffsetRotate(StyleBuilderConverter::ConvertOffsetRotate(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontFamily(StyleResolverState& state) { | |
| state.GetFontBuilder().SetFamilyDescription(FontBuilder::InitialFamilyDescription()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontFamily(StyleResolverState& state) { | |
| state.GetFontBuilder().SetFamilyDescription(state.ParentFontDescription().GetFamilyDescription()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontFamily(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetFamilyDescription(StyleBuilderConverter::ConvertFontFamily(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxFlex(StyleResolverState& state) { | |
| state.Style()->SetBoxFlex(ComputedStyle::InitialBoxFlex()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxFlex(StyleResolverState& state) { | |
| state.Style()->SetBoxFlex(state.ParentStyle()->BoxFlex()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxFlex(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxFlex(ToCSSPrimitiveValue(value).ConvertTo<float>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyContain(StyleResolverState& state) { | |
| state.Style()->SetContain(ComputedStyle::InitialContain()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyContain(StyleResolverState& state) { | |
| state.Style()->SetContain(state.ParentStyle()->Contain()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyContain(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetContain(StyleBuilderConverter::ConvertFlags<Containment>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderBottomStyle(StyleResolverState& state) { | |
| state.Style()->SetBorderBottomStyle(ComputedStyle::InitialBorderStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderBottomStyle(StyleResolverState& state) { | |
| state.Style()->SetBorderBottomStyle(state.ParentStyle()->BorderBottomStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderBottomStyle(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderBottomStyle(ToCSSIdentifierValue(value).ConvertTo<EBorderStyle>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyHeight(StyleResolverState& state) { | |
| state.Style()->SetHeight(ComputedStyle::InitialSize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyHeight(StyleResolverState& state) { | |
| state.Style()->SetHeight(state.ParentStyle()->Height()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyHeight(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetHeight(StyleBuilderConverter::ConvertLengthSizing(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderImageSource(StyleResolverState& state) { | |
| state.Style()->SetBorderImageSource(ComputedStyle::InitialBorderImageSource()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderImageSource(StyleResolverState& state) { | |
| state.Style()->SetBorderImageSource(state.ParentStyle()->BorderImageSource()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPaintOrder(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetPaintOrder(SVGComputedStyle::InitialPaintOrder()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyPaintOrder(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetPaintOrder(state.ParentStyle()->SvgStyle().PaintOrder()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPaintOrder(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetPaintOrder(StyleBuilderConverter::ConvertPaintOrder(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextRendering(StyleResolverState& state) { | |
| state.GetFontBuilder().SetTextRendering(FontBuilder::InitialTextRendering()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextRendering(StyleResolverState& state) { | |
| state.GetFontBuilder().SetTextRendering(state.ParentFontDescription().TextRendering()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextRendering(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetTextRendering(ToCSSIdentifierValue(value).ConvertTo<TextRenderingMode>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderBottomLeftRadius(StyleResolverState& state) { | |
| state.Style()->SetBorderBottomLeftRadius(ComputedStyle::InitialBorderRadius()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderBottomLeftRadius(StyleResolverState& state) { | |
| state.Style()->SetBorderBottomLeftRadius(state.ParentStyle()->BorderBottomLeftRadius()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderBottomLeftRadius(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderBottomLeftRadius(StyleBuilderConverter::ConvertRadius(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColorInterpolation(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetColorInterpolation(SVGComputedStyle::InitialColorInterpolation()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColorInterpolation(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetColorInterpolation(state.ParentStyle()->SvgStyle().ColorInterpolation()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColorInterpolation(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetColorInterpolation(ToCSSIdentifierValue(value).ConvertTo<EColorInterpolation>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontVariationSettings(StyleResolverState& state) { | |
| state.GetFontBuilder().SetVariationSettings(FontBuilder::InitialVariationSettings()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontVariationSettings(StyleResolverState& state) { | |
| state.GetFontBuilder().SetVariationSettings(state.ParentFontDescription().VariationSettings()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontVariationSettings(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetVariationSettings(StyleBuilderConverter::ConvertFontVariationSettings(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextDecorationLine(StyleResolverState& state) { | |
| state.Style()->SetTextDecoration(ComputedStyle::InitialTextDecoration()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextDecorationLine(StyleResolverState& state) { | |
| state.Style()->SetTextDecoration(state.ParentStyle()->GetTextDecoration()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextDecorationLine(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextDecoration(StyleBuilderConverter::ConvertFlags<TextDecoration>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFilter(StyleResolverState& state) { | |
| state.Style()->SetFilter(ComputedStyle::InitialFilter()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFilter(StyleResolverState& state) { | |
| state.Style()->SetFilter(state.ParentStyle()->Filter()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFilter(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetFilter(StyleBuilderConverter::ConvertFilterOperations(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyShapeMargin(StyleResolverState& state) { | |
| state.Style()->SetShapeMargin(ComputedStyle::InitialShapeMargin()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyShapeMargin(StyleResolverState& state) { | |
| state.Style()->SetShapeMargin(state.ParentStyle()->ShapeMargin()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyShapeMargin(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetShapeMargin(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyScrollSnapType(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapType(ComputedStyle::InitialScrollSnapType()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyScrollSnapType(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapType(state.ParentStyle()->GetScrollSnapType()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyScrollSnapType(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetScrollSnapType(ToCSSIdentifierValue(value).ConvertTo<ScrollSnapType>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyImageRendering(StyleResolverState& state) { | |
| state.Style()->SetImageRendering(ComputedStyle::InitialImageRendering()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyImageRendering(StyleResolverState& state) { | |
| state.Style()->SetImageRendering(state.ParentStyle()->ImageRendering()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyImageRendering(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetImageRendering(ToCSSIdentifierValue(value).ConvertTo<EImageRendering>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPaddingBottom(StyleResolverState& state) { | |
| state.Style()->SetPaddingBottom(ComputedStyle::InitialPadding()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyPaddingBottom(StyleResolverState& state) { | |
| state.Style()->SetPaddingBottom(state.ParentStyle()->PaddingBottom()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPaddingBottom(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPaddingBottom(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyQuotes(StyleResolverState& state) { | |
| state.Style()->SetQuotes(ComputedStyle::InitialQuotes()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyQuotes(StyleResolverState& state) { | |
| state.Style()->SetQuotes(state.ParentStyle()->Quotes()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyQuotes(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetQuotes(StyleBuilderConverter::ConvertQuotes(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridAutoRows(StyleResolverState& state) { | |
| state.Style()->SetGridAutoRows(ComputedStyle::InitialGridAutoRows()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridAutoRows(StyleResolverState& state) { | |
| state.Style()->SetGridAutoRows(state.ParentStyle()->GridAutoRows()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridAutoRows(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridAutoRows(StyleBuilderConverter::ConvertGridTrackSizeList(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyClipPath(StyleResolverState& state) { | |
| state.Style()->SetClipPath(ComputedStyle::InitialClipPath()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyClipPath(StyleResolverState& state) { | |
| state.Style()->SetClipPath(state.ParentStyle()->ClipPath()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyClipPath(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetClipPath(StyleBuilderConverter::ConvertClipPath(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBreakBefore(StyleResolverState& state) { | |
| state.Style()->SetBreakBefore(ComputedStyle::InitialBreakBefore()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBreakBefore(StyleResolverState& state) { | |
| state.Style()->SetBreakBefore(state.ParentStyle()->BreakBefore()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBreakBefore(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBreakBefore(ToCSSIdentifierValue(value).ConvertTo<EBreakBetween>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyObjectFit(StyleResolverState& state) { | |
| state.Style()->SetObjectFit(ComputedStyle::InitialObjectFit()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyObjectFit(StyleResolverState& state) { | |
| state.Style()->SetObjectFit(state.ParentStyle()->GetObjectFit()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyObjectFit(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetObjectFit(ToCSSIdentifierValue(value).ConvertTo<ObjectFit>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStopOpacity(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStopOpacity(SVGComputedStyle::InitialStopOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStopOpacity(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStopOpacity(state.ParentStyle()->SvgStyle().StopOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStopOpacity(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetStopOpacity(StyleBuilderConverter::ConvertNumberOrPercentage(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxReflect(StyleResolverState& state) { | |
| state.Style()->SetBoxReflect(ComputedStyle::InitialBoxReflect()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxReflect(StyleResolverState& state) { | |
| state.Style()->SetBoxReflect(state.ParentStyle()->BoxReflect()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxReflect(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxReflect(StyleBuilderConverter::ConvertBoxReflect(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderTopRightRadius(StyleResolverState& state) { | |
| state.Style()->SetBorderTopRightRadius(ComputedStyle::InitialBorderRadius()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderTopRightRadius(StyleResolverState& state) { | |
| state.Style()->SetBorderTopRightRadius(state.ParentStyle()->BorderTopRightRadius()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderTopRightRadius(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderTopRightRadius(StyleBuilderConverter::ConvertRadius(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxDirection(StyleResolverState& state) { | |
| state.Style()->SetBoxDirection(ComputedStyle::InitialBoxDirection()); | |
| state.Style()->SetBoxDirectionIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxDirection(StyleResolverState& state) { | |
| state.Style()->SetBoxDirection(state.ParentStyle()->BoxDirection()); | |
| state.Style()->SetBoxDirectionIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxDirection(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxDirection(ToCSSIdentifierValue(value).ConvertTo<EBoxDirection>()); | |
| state.Style()->SetBoxDirectionIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitUserModify(StyleResolverState& state) { | |
| state.Style()->SetUserModify(ComputedStyle::InitialUserModify()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitUserModify(StyleResolverState& state) { | |
| state.Style()->SetUserModify(state.ParentStyle()->UserModify()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitUserModify(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetUserModify(ToCSSIdentifierValue(value).ConvertTo<EUserModify>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxDecorationBreak(StyleResolverState& state) { | |
| state.Style()->SetBoxDecorationBreak(ComputedStyle::InitialBoxDecorationBreak()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxDecorationBreak(StyleResolverState& state) { | |
| state.Style()->SetBoxDecorationBreak(state.ParentStyle()->BoxDecorationBreak()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxDecorationBreak(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxDecorationBreak(ToCSSIdentifierValue(value).ConvertTo<EBoxDecorationBreak>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontKerning(StyleResolverState& state) { | |
| state.GetFontBuilder().SetKerning(FontBuilder::InitialKerning()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontKerning(StyleResolverState& state) { | |
| state.GetFontBuilder().SetKerning(state.ParentFontDescription().GetKerning()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontKerning(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetKerning(ToCSSIdentifierValue(value).ConvertTo<FontDescription::Kerning>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontWeight(StyleResolverState& state) { | |
| state.GetFontBuilder().SetWeight(FontBuilder::InitialWeight()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontWeight(StyleResolverState& state) { | |
| state.GetFontBuilder().SetWeight(state.ParentFontDescription().Weight()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontWeight(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetWeight(StyleBuilderConverter::ConvertFontWeight(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyShapeImageThreshold(StyleResolverState& state) { | |
| state.Style()->SetShapeImageThreshold(ComputedStyle::InitialShapeImageThreshold()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyShapeImageThreshold(StyleResolverState& state) { | |
| state.Style()->SetShapeImageThreshold(state.ParentStyle()->ShapeImageThreshold()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyShapeImageThreshold(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetShapeImageThreshold(ToCSSPrimitiveValue(value).ConvertTo<float>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyRy(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetRy(SVGComputedStyle::InitialRy()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyRy(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetRy(state.ParentStyle()->SvgStyle().Ry()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyRy(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetRy(StyleBuilderConverter::ConvertLengthOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyRx(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetRx(SVGComputedStyle::InitialRx()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyRx(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetRx(state.ParentStyle()->SvgStyle().Rx()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyRx(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetRx(StyleBuilderConverter::ConvertLengthOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMarginRight(StyleResolverState& state) { | |
| state.Style()->SetMarginRight(ComputedStyle::InitialMargin()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMarginRight(StyleResolverState& state) { | |
| state.Style()->SetMarginRight(state.ParentStyle()->MarginRight()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMarginRight(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMarginRight(StyleBuilderConverter::ConvertQuirkyLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitFontSmoothing(StyleResolverState& state) { | |
| state.GetFontBuilder().SetFontSmoothing(FontBuilder::InitialFontSmoothing()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitFontSmoothing(StyleResolverState& state) { | |
| state.GetFontBuilder().SetFontSmoothing(state.ParentFontDescription().FontSmoothing()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitFontSmoothing(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetFontSmoothing(ToCSSIdentifierValue(value).ConvertTo<FontSmoothingMode>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBreakAfter(StyleResolverState& state) { | |
| state.Style()->SetBreakAfter(ComputedStyle::InitialBreakAfter()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBreakAfter(StyleResolverState& state) { | |
| state.Style()->SetBreakAfter(state.ParentStyle()->BreakAfter()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBreakAfter(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBreakAfter(ToCSSIdentifierValue(value).ConvertTo<EBreakBetween>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOpacity(StyleResolverState& state) { | |
| state.Style()->SetOpacity(ComputedStyle::InitialOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOpacity(StyleResolverState& state) { | |
| state.Style()->SetOpacity(state.ParentStyle()->Opacity()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOpacity(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOpacity(ToCSSPrimitiveValue(value).ConvertTo<float>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyDominantBaseline(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetDominantBaseline(SVGComputedStyle::InitialDominantBaseline()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyDominantBaseline(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetDominantBaseline(state.ParentStyle()->SvgStyle().DominantBaseline()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyDominantBaseline(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetDominantBaseline(ToCSSIdentifierValue(value).ConvertTo<EDominantBaseline>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAlignSelf(StyleResolverState& state) { | |
| state.Style()->SetAlignSelf(ComputedStyle::InitialSelfAlignment()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAlignSelf(StyleResolverState& state) { | |
| state.Style()->SetAlignSelf(state.ParentStyle()->AlignSelf()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAlignSelf(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetAlignSelf(StyleBuilderConverter::ConvertSelfOrDefaultAlignmentData(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyClear(StyleResolverState& state) { | |
| state.Style()->SetClear(ComputedStyle::InitialClear()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyClear(StyleResolverState& state) { | |
| state.Style()->SetClear(state.ParentStyle()->Clear()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyClear(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetClear(ToCSSIdentifierValue(value).ConvertTo<EClear>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPaddingRight(StyleResolverState& state) { | |
| state.Style()->SetPaddingRight(ComputedStyle::InitialPadding()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyPaddingRight(StyleResolverState& state) { | |
| state.Style()->SetPaddingRight(state.ParentStyle()->PaddingRight()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPaddingRight(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPaddingRight(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextCombineUpright(StyleResolverState& state) { | |
| state.Style()->SetTextCombine(ComputedStyle::InitialTextCombine()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextCombineUpright(StyleResolverState& state) { | |
| state.Style()->SetTextCombine(state.ParentStyle()->GetTextCombine()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextCombineUpright(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextCombine(ToCSSIdentifierValue(value).ConvertTo<TextCombine>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTransformStyle(StyleResolverState& state) { | |
| state.Style()->SetTransformStyle3D(ComputedStyle::InitialTransformStyle3D()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTransformStyle(StyleResolverState& state) { | |
| state.Style()->SetTransformStyle3D(state.ParentStyle()->TransformStyle3D()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTransformStyle(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTransformStyle3D(ToCSSIdentifierValue(value).ConvertTo<ETransformStyle3D>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBorderHorizontalSpacing(StyleResolverState& state) { | |
| state.Style()->SetHorizontalBorderSpacing(ComputedStyle::InitialHorizontalBorderSpacing()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBorderHorizontalSpacing(StyleResolverState& state) { | |
| state.Style()->SetHorizontalBorderSpacing(state.ParentStyle()->HorizontalBorderSpacing()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBorderHorizontalSpacing(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetHorizontalBorderSpacing(StyleBuilderConverter::ConvertComputedLength<short>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTapHighlightColor(StyleResolverState& state) { | |
| state.Style()->SetTapHighlightColor(ComputedStyle::InitialTapHighlightColor()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTapHighlightColor(StyleResolverState& state) { | |
| state.Style()->SetTapHighlightColor(state.ParentStyle()->TapHighlightColor()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTapHighlightColor(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTapHighlightColor(StyleBuilderConverter::ConvertColor(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyCaptionSide(StyleResolverState& state) { | |
| state.Style()->SetCaptionSide(ComputedStyle::InitialCaptionSide()); | |
| state.Style()->SetCaptionSideIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyCaptionSide(StyleResolverState& state) { | |
| state.Style()->SetCaptionSide(state.ParentStyle()->CaptionSide()); | |
| state.Style()->SetCaptionSideIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyCaptionSide(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetCaptionSide(ToCSSIdentifierValue(value).ConvertTo<ECaptionSide>()); | |
| state.Style()->SetCaptionSideIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitPrintColorAdjust(StyleResolverState& state) { | |
| state.Style()->SetPrintColorAdjust(ComputedStyle::InitialPrintColorAdjust()); | |
| state.Style()->SetPrintColorAdjustIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitPrintColorAdjust(StyleResolverState& state) { | |
| state.Style()->SetPrintColorAdjust(state.ParentStyle()->PrintColorAdjust()); | |
| state.Style()->SetPrintColorAdjustIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitPrintColorAdjust(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPrintColorAdjust(ToCSSIdentifierValue(value).ConvertTo<EPrintColorAdjust>()); | |
| state.Style()->SetPrintColorAdjustIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStrokeDasharray(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeDashArray(SVGComputedStyle::InitialStrokeDashArray()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStrokeDasharray(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeDashArray(state.ParentStyle()->SvgStyle().StrokeDashArray()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStrokeDasharray(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetStrokeDashArray(StyleBuilderConverter::ConvertStrokeDasharray(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFlexBasis(StyleResolverState& state) { | |
| state.Style()->SetFlexBasis(ComputedStyle::InitialFlexBasis()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFlexBasis(StyleResolverState& state) { | |
| state.Style()->SetFlexBasis(state.ParentStyle()->FlexBasis()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFlexBasis(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetFlexBasis(StyleBuilderConverter::ConvertLengthOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWidows(StyleResolverState& state) { | |
| state.Style()->SetWidows(ComputedStyle::InitialWidows()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWidows(StyleResolverState& state) { | |
| state.Style()->SetWidows(state.ParentStyle()->Widows()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWidows(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetWidows(ToCSSPrimitiveValue(value).ConvertTo<short>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitRubyPosition(StyleResolverState& state) { | |
| state.Style()->SetRubyPosition(ComputedStyle::InitialRubyPosition()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitRubyPosition(StyleResolverState& state) { | |
| state.Style()->SetRubyPosition(state.ParentStyle()->GetRubyPosition()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitRubyPosition(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetRubyPosition(ToCSSIdentifierValue(value).ConvertTo<RubyPosition>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFlexShrink(StyleResolverState& state) { | |
| state.Style()->SetFlexShrink(ComputedStyle::InitialFlexShrink()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFlexShrink(StyleResolverState& state) { | |
| state.Style()->SetFlexShrink(state.ParentStyle()->FlexShrink()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFlexShrink(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetFlexShrink(ToCSSPrimitiveValue(value).ConvertTo<float>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTransformOriginY(StyleResolverState& state) { | |
| state.Style()->SetTransformOriginY(ComputedStyle::InitialTransformOriginY()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTransformOriginY(StyleResolverState& state) { | |
| state.Style()->SetTransformOriginY(state.ParentStyle()->TransformOriginY()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTransformOriginY(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTransformOriginY(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTransformOriginX(StyleResolverState& state) { | |
| state.Style()->SetTransformOriginX(ComputedStyle::InitialTransformOriginX()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTransformOriginX(StyleResolverState& state) { | |
| state.Style()->SetTransformOriginX(state.ParentStyle()->TransformOriginX()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTransformOriginX(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTransformOriginX(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTransform(StyleResolverState& state) { | |
| state.Style()->SetTransform(ComputedStyle::InitialTransform()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTransform(StyleResolverState& state) { | |
| state.Style()->SetTransform(state.ParentStyle()->Transform()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTransform(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTransform(StyleBuilderConverter::ConvertTransformOperations(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyScrollBehavior(StyleResolverState& state) { | |
| state.Style()->SetScrollBehavior(ComputedStyle::InitialScrollBehavior()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyScrollBehavior(StyleResolverState& state) { | |
| state.Style()->SetScrollBehavior(state.ParentStyle()->GetScrollBehavior()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyScrollBehavior(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetScrollBehavior(ToCSSIdentifierValue(value).ConvertTo<ScrollBehavior>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridAutoFlow(StyleResolverState& state) { | |
| state.Style()->SetGridAutoFlow(ComputedStyle::InitialGridAutoFlow()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridAutoFlow(StyleResolverState& state) { | |
| state.Style()->SetGridAutoFlow(state.ParentStyle()->GetGridAutoFlow()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridAutoFlow(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridAutoFlow(StyleBuilderConverter::ConvertGridAutoFlow(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTextEmphasisPosition(StyleResolverState& state) { | |
| state.Style()->SetTextEmphasisPosition(ComputedStyle::InitialTextEmphasisPosition()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTextEmphasisPosition(StyleResolverState& state) { | |
| state.Style()->SetTextEmphasisPosition(state.ParentStyle()->GetTextEmphasisPosition()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTextEmphasisPosition(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextEmphasisPosition(ToCSSIdentifierValue(value).ConvertTo<TextEmphasisPosition>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStopColor(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStopColor(SVGComputedStyle::InitialStopColor()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStopColor(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStopColor(state.ParentStyle()->SvgStyle().StopColor()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStopColor(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetStopColor(StyleBuilderConverter::ConvertColor(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitLineClamp(StyleResolverState& state) { | |
| state.Style()->SetLineClamp(ComputedStyle::InitialLineClamp()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitLineClamp(StyleResolverState& state) { | |
| state.Style()->SetLineClamp(state.ParentStyle()->LineClamp()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitLineClamp(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetLineClamp(ToCSSPrimitiveValue(value).ConvertTo<LineClampValue>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyJustifySelf(StyleResolverState& state) { | |
| state.Style()->SetJustifySelf(ComputedStyle::InitialSelfAlignment()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyJustifySelf(StyleResolverState& state) { | |
| state.Style()->SetJustifySelf(state.ParentStyle()->JustifySelf()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyJustifySelf(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetJustifySelf(StyleBuilderConverter::ConvertSelfOrDefaultAlignmentData(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextJustify(StyleResolverState& state) { | |
| state.Style()->SetTextJustify(ComputedStyle::InitialTextJustify()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextJustify(StyleResolverState& state) { | |
| state.Style()->SetTextJustify(state.ParentStyle()->GetTextJustify()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextJustify(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextJustify(ToCSSIdentifierValue(value).ConvertTo<TextJustify>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWordSpacing(StyleResolverState& state) { | |
| state.Style()->SetWordSpacing(ComputedStyle::InitialLetterWordSpacing()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWordSpacing(StyleResolverState& state) { | |
| state.Style()->SetWordSpacing(state.ParentStyle()->WordSpacing()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWordSpacing(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetWordSpacing(StyleBuilderConverter::ConvertSpacing(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPerspectiveOrigin(StyleResolverState& state) { | |
| state.Style()->SetPerspectiveOrigin(ComputedStyle::InitialPerspectiveOrigin()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyPerspectiveOrigin(StyleResolverState& state) { | |
| state.Style()->SetPerspectiveOrigin(state.ParentStyle()->PerspectiveOrigin()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPerspectiveOrigin(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPerspectiveOrigin(StyleBuilderConverter::ConvertPosition(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextAnchor(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetTextAnchor(SVGComputedStyle::InitialTextAnchor()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextAnchor(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetTextAnchor(state.ParentStyle()->SvgStyle().TextAnchor()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextAnchor(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetTextAnchor(ToCSSIdentifierValue(value).ConvertTo<ETextAnchor>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontStyle(StyleResolverState& state) { | |
| state.GetFontBuilder().SetStyle(FontBuilder::InitialStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontStyle(StyleResolverState& state) { | |
| state.GetFontBuilder().SetStyle(state.ParentFontDescription().Style()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontStyle(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetStyle(ToCSSIdentifierValue(value).ConvertTo<FontStyle>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderBottomRightRadius(StyleResolverState& state) { | |
| state.Style()->SetBorderBottomRightRadius(ComputedStyle::InitialBorderRadius()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderBottomRightRadius(StyleResolverState& state) { | |
| state.Style()->SetBorderBottomRightRadius(state.ParentStyle()->BorderBottomRightRadius()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderBottomRightRadius(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderBottomRightRadius(StyleBuilderConverter::ConvertRadius(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderRightWidth(StyleResolverState& state) { | |
| state.Style()->SetBorderRightWidth(ComputedStyle::InitialBorderWidth()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderRightWidth(StyleResolverState& state) { | |
| state.Style()->SetBorderRightWidth(state.ParentStyle()->BorderRightWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderRightWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderRightWidth(StyleBuilderConverter::ConvertLineWidth<float>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderTopLeftRadius(StyleResolverState& state) { | |
| state.Style()->SetBorderTopLeftRadius(ComputedStyle::InitialBorderRadius()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderTopLeftRadius(StyleResolverState& state) { | |
| state.Style()->SetBorderTopLeftRadius(state.ParentStyle()->BorderTopLeftRadius()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderTopLeftRadius(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderTopLeftRadius(StyleBuilderConverter::ConvertRadius(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWritingMode(StyleResolverState& state) { | |
| state.Style()->SetWritingMode(ComputedStyle::InitialWritingMode()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWritingMode(StyleResolverState& state) { | |
| state.Style()->SetWritingMode(state.ParentStyle()->GetWritingMode()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTextSecurity(StyleResolverState& state) { | |
| state.Style()->SetTextSecurity(ComputedStyle::InitialTextSecurity()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTextSecurity(StyleResolverState& state) { | |
| state.Style()->SetTextSecurity(state.ParentStyle()->TextSecurity()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTextSecurity(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextSecurity(ToCSSIdentifierValue(value).ConvertTo<ETextSecurity>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderLeftWidth(StyleResolverState& state) { | |
| state.Style()->SetBorderLeftWidth(ComputedStyle::InitialBorderWidth()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderLeftWidth(StyleResolverState& state) { | |
| state.Style()->SetBorderLeftWidth(state.ParentStyle()->BorderLeftWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderLeftWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderLeftWidth(StyleBuilderConverter::ConvertLineWidth<float>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitLineBreak(StyleResolverState& state) { | |
| state.Style()->SetLineBreak(ComputedStyle::InitialLineBreak()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitLineBreak(StyleResolverState& state) { | |
| state.Style()->SetLineBreak(state.ParentStyle()->GetLineBreak()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitLineBreak(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetLineBreak(ToCSSIdentifierValue(value).ConvertTo<LineBreak>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyIsolation(StyleResolverState& state) { | |
| state.Style()->SetIsolation(ComputedStyle::InitialIsolation()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyIsolation(StyleResolverState& state) { | |
| state.Style()->SetIsolation(state.ParentStyle()->Isolation()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyIsolation(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetIsolation(ToCSSIdentifierValue(value).ConvertTo<EIsolation>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFillOpacity(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFillOpacity(SVGComputedStyle::InitialFillOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFillOpacity(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFillOpacity(state.ParentStyle()->SvgStyle().FillOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFillOpacity(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetFillOpacity(StyleBuilderConverter::ConvertNumberOrPercentage(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderTopWidth(StyleResolverState& state) { | |
| state.Style()->SetBorderTopWidth(ComputedStyle::InitialBorderWidth()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderTopWidth(StyleResolverState& state) { | |
| state.Style()->SetBorderTopWidth(state.ParentStyle()->BorderTopWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderTopWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderTopWidth(StyleBuilderConverter::ConvertLineWidth<float>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBottom(StyleResolverState& state) { | |
| state.Style()->SetBottom(ComputedStyle::InitialBottom()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBottom(StyleResolverState& state) { | |
| state.Style()->SetBottom(state.ParentStyle()->Bottom()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBottom(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBottom(StyleBuilderConverter::ConvertLengthOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderCollapse(StyleResolverState& state) { | |
| state.Style()->SetBorderCollapse(ComputedStyle::InitialBorderCollapse()); | |
| state.Style()->SetBorderCollapseIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderCollapse(StyleResolverState& state) { | |
| state.Style()->SetBorderCollapse(state.ParentStyle()->BorderCollapse()); | |
| state.Style()->SetBorderCollapseIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderCollapse(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderCollapse(ToCSSIdentifierValue(value).ConvertTo<EBorderCollapse>()); | |
| state.Style()->SetBorderCollapseIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTop(StyleResolverState& state) { | |
| state.Style()->SetTop(ComputedStyle::InitialTop()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTop(StyleResolverState& state) { | |
| state.Style()->SetTop(state.ParentStyle()->Top()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTop(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTop(StyleBuilderConverter::ConvertLengthOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyScrollSnapPointsX(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapPointsX(ComputedStyle::InitialScrollSnapPointsX()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyScrollSnapPointsX(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapPointsX(state.ParentStyle()->ScrollSnapPointsX()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyScrollSnapPointsX(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetScrollSnapPointsX(StyleBuilderConverter::ConvertSnapPoints(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyScrollSnapPointsY(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapPointsY(ComputedStyle::InitialScrollSnapPointsY()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyScrollSnapPointsY(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapPointsY(state.ParentStyle()->ScrollSnapPointsY()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyScrollSnapPointsY(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetScrollSnapPointsY(StyleBuilderConverter::ConvertSnapPoints(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyUnicodeBidi(StyleResolverState& state) { | |
| state.Style()->SetUnicodeBidi(ComputedStyle::InitialUnicodeBidi()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyUnicodeBidi(StyleResolverState& state) { | |
| state.Style()->SetUnicodeBidi(state.ParentStyle()->GetUnicodeBidi()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyUnicodeBidi(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetUnicodeBidi(ToCSSIdentifierValue(value).ConvertTo<UnicodeBidi>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitWritingMode(StyleResolverState& state) { | |
| state.Style()->SetWritingMode(ComputedStyle::InitialWritingMode()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitWritingMode(StyleResolverState& state) { | |
| state.Style()->SetWritingMode(state.ParentStyle()->GetWritingMode()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFloat(StyleResolverState& state) { | |
| state.Style()->SetFloating(ComputedStyle::InitialFloating()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFloat(StyleResolverState& state) { | |
| state.Style()->SetFloating(state.ParentStyle()->Floating()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFloat(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetFloating(ToCSSIdentifierValue(value).ConvertTo<EFloat>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWordWrap(StyleResolverState& state) { | |
| state.Style()->SetOverflowWrap(ComputedStyle::InitialOverflowWrap()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWordWrap(StyleResolverState& state) { | |
| state.Style()->SetOverflowWrap(state.ParentStyle()->OverflowWrap()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWordWrap(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOverflowWrap(ToCSSIdentifierValue(value).ConvertTo<EOverflowWrap>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTransformOrigin(StyleResolverState& state) { | |
| state.Style()->SetTransformOrigin(ComputedStyle::InitialTransformOrigin()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTransformOrigin(StyleResolverState& state) { | |
| state.Style()->SetTransformOrigin(state.ParentStyle()->GetTransformOrigin()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTransformOrigin(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTransformOrigin(StyleBuilderConverter::ConvertTransformOrigin(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitRtlOrdering(StyleResolverState& state) { | |
| state.Style()->SetRtlOrdering(ComputedStyle::InitialRtlOrdering()); | |
| state.Style()->SetRtlOrderingIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitRtlOrdering(StyleResolverState& state) { | |
| state.Style()->SetRtlOrdering(state.ParentStyle()->RtlOrdering()); | |
| state.Style()->SetRtlOrderingIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitRtlOrdering(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetRtlOrdering(ToCSSIdentifierValue(value).ConvertTo<EOrder>()); | |
| state.Style()->SetRtlOrderingIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMarginTop(StyleResolverState& state) { | |
| state.Style()->SetMarginTop(ComputedStyle::InitialMargin()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMarginTop(StyleResolverState& state) { | |
| state.Style()->SetMarginTop(state.ParentStyle()->MarginTop()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMarginTop(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMarginTop(StyleBuilderConverter::ConvertQuirkyLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMaxWidth(StyleResolverState& state) { | |
| state.Style()->SetMaxWidth(ComputedStyle::InitialMaxSize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMaxWidth(StyleResolverState& state) { | |
| state.Style()->SetMaxWidth(state.ParentStyle()->MaxWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMaxWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMaxWidth(StyleBuilderConverter::ConvertLengthMaxSizing(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextShadow(StyleResolverState& state) { | |
| state.Style()->SetTextShadow(ComputedStyle::InitialTextShadow()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextShadow(StyleResolverState& state) { | |
| state.Style()->SetTextShadow(state.ParentStyle()->TextShadow()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextShadow(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextShadow(StyleBuilderConverter::ConvertShadowList(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontVariantCaps(StyleResolverState& state) { | |
| state.GetFontBuilder().SetVariantCaps(FontBuilder::InitialVariantCaps()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontVariantCaps(StyleResolverState& state) { | |
| state.GetFontBuilder().SetVariantCaps(state.ParentFontDescription().VariantCaps()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontVariantCaps(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetVariantCaps(StyleBuilderConverter::ConvertFontVariantCaps(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxOrdinalGroup(StyleResolverState& state) { | |
| state.Style()->SetBoxOrdinalGroup(ComputedStyle::InitialBoxOrdinalGroup()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxOrdinalGroup(StyleResolverState& state) { | |
| state.Style()->SetBoxOrdinalGroup(state.ParentStyle()->BoxOrdinalGroup()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxOrdinalGroup(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxOrdinalGroup(ToCSSPrimitiveValue(value).ConvertTo<unsigned int>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColumnFill(StyleResolverState& state) { | |
| state.Style()->SetColumnFill(ComputedStyle::InitialColumnFill()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColumnFill(StyleResolverState& state) { | |
| state.Style()->SetColumnFill(state.ParentStyle()->GetColumnFill()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColumnFill(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetColumnFill(ToCSSIdentifierValue(value).ConvertTo<ColumnFill>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOverflowX(StyleResolverState& state) { | |
| state.Style()->SetOverflowX(ComputedStyle::InitialOverflowX()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOverflowX(StyleResolverState& state) { | |
| state.Style()->SetOverflowX(state.ParentStyle()->OverflowX()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOverflowX(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOverflowX(ToCSSIdentifierValue(value).ConvertTo<EOverflow>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOverflowY(StyleResolverState& state) { | |
| state.Style()->SetOverflowY(ComputedStyle::InitialOverflowY()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOverflowY(StyleResolverState& state) { | |
| state.Style()->SetOverflowY(state.ParentStyle()->OverflowY()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOverflowY(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOverflowY(ToCSSIdentifierValue(value).ConvertTo<EOverflow>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyHyphens(StyleResolverState& state) { | |
| state.Style()->SetHyphens(ComputedStyle::InitialHyphens()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyHyphens(StyleResolverState& state) { | |
| state.Style()->SetHyphens(state.ParentStyle()->GetHyphens()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyHyphens(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetHyphens(ToCSSIdentifierValue(value).ConvertTo<Hyphens>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextSizeAdjust(StyleResolverState& state) { | |
| state.Style()->SetTextSizeAdjust(ComputedStyle::InitialTextSizeAdjust()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextSizeAdjust(StyleResolverState& state) { | |
| state.Style()->SetTextSizeAdjust(state.ParentStyle()->GetTextSizeAdjust()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextSizeAdjust(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextSizeAdjust(StyleBuilderConverter::ConvertTextSizeAdjust(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPerspective(StyleResolverState& state) { | |
| state.Style()->SetPerspective(ComputedStyle::InitialPerspective()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyPerspective(StyleResolverState& state) { | |
| state.Style()->SetPerspective(state.ParentStyle()->Perspective()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPerspective(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPerspective(StyleBuilderConverter::ConvertPerspective(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyUserSelect(StyleResolverState& state) { | |
| state.Style()->SetUserSelect(ComputedStyle::InitialUserSelect()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyUserSelect(StyleResolverState& state) { | |
| state.Style()->SetUserSelect(state.ParentStyle()->UserSelect()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyUserSelect(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetUserSelect(ToCSSIdentifierValue(value).ConvertTo<EUserSelect>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyLineHeight(StyleResolverState& state) { | |
| state.Style()->SetLineHeight(ComputedStyle::InitialLineHeight()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyLineHeight(StyleResolverState& state) { | |
| state.Style()->SetLineHeight(state.ParentStyle()->SpecifiedLineHeight()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyLineHeight(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetLineHeight(StyleBuilderConverter::ConvertLineHeight(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOrder(StyleResolverState& state) { | |
| state.Style()->SetOrder(ComputedStyle::InitialOrder()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOrder(StyleResolverState& state) { | |
| state.Style()->SetOrder(state.ParentStyle()->Order()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOrder(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOrder(ToCSSPrimitiveValue(value).ConvertTo<int>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxAlign(StyleResolverState& state) { | |
| state.Style()->SetBoxAlign(ComputedStyle::InitialBoxAlign()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxAlign(StyleResolverState& state) { | |
| state.Style()->SetBoxAlign(state.ParentStyle()->BoxAlign()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxAlign(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxAlign(ToCSSIdentifierValue(value).ConvertTo<EBoxAlignment>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyScale(StyleResolverState& state) { | |
| state.Style()->SetScale(ComputedStyle::InitialScale()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyScale(StyleResolverState& state) { | |
| state.Style()->SetScale(state.ParentStyle()->Scale()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyScale(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetScale(StyleBuilderConverter::ConvertScale(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridAutoColumns(StyleResolverState& state) { | |
| state.Style()->SetGridAutoColumns(ComputedStyle::InitialGridAutoColumns()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridAutoColumns(StyleResolverState& state) { | |
| state.Style()->SetGridAutoColumns(state.ParentStyle()->GridAutoColumns()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridAutoColumns(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridAutoColumns(StyleBuilderConverter::ConvertGridTrackSizeList(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridRowStart(StyleResolverState& state) { | |
| state.Style()->SetGridRowStart(ComputedStyle::InitialGridRowStart()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridRowStart(StyleResolverState& state) { | |
| state.Style()->SetGridRowStart(state.ParentStyle()->GridRowStart()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridRowStart(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridRowStart(StyleBuilderConverter::ConvertGridPosition(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTextStrokeWidth(StyleResolverState& state) { | |
| state.Style()->SetTextStrokeWidth(ComputedStyle::InitialTextStrokeWidth()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTextStrokeWidth(StyleResolverState& state) { | |
| state.Style()->SetTextStrokeWidth(state.ParentStyle()->TextStrokeWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTextStrokeWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextStrokeWidth(StyleBuilderConverter::ConvertTextStrokeWidth(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStrokeDashoffset(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeDashOffset(SVGComputedStyle::InitialStrokeDashOffset()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStrokeDashoffset(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeDashOffset(state.ParentStyle()->SvgStyle().StrokeDashOffset()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStrokeDashoffset(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetStrokeDashOffset(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPosition(StyleResolverState& state) { | |
| state.Style()->SetPosition(ComputedStyle::InitialPosition()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPosition(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPosition(ToCSSIdentifierValue(value).ConvertTo<EPosition>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontStretch(StyleResolverState& state) { | |
| state.GetFontBuilder().SetStretch(FontBuilder::InitialStretch()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontStretch(StyleResolverState& state) { | |
| state.GetFontBuilder().SetStretch(state.ParentFontDescription().Stretch()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontStretch(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetStretch(ToCSSIdentifierValue(value).ConvertTo<FontStretch>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMixBlendMode(StyleResolverState& state) { | |
| state.Style()->SetBlendMode(ComputedStyle::InitialBlendMode()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMixBlendMode(StyleResolverState& state) { | |
| state.Style()->SetBlendMode(state.ParentStyle()->BlendMode()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMixBlendMode(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBlendMode(ToCSSIdentifierValue(value).ConvertTo<blink::WebBlendMode>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBaselineShift(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetBaselineShift(SVGComputedStyle::InitialBaselineShift()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPaddingLeft(StyleResolverState& state) { | |
| state.Style()->SetPaddingLeft(ComputedStyle::InitialPadding()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyPaddingLeft(StyleResolverState& state) { | |
| state.Style()->SetPaddingLeft(state.ParentStyle()->PaddingLeft()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPaddingLeft(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPaddingLeft(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWhiteSpace(StyleResolverState& state) { | |
| state.Style()->SetWhiteSpace(ComputedStyle::InitialWhiteSpace()); | |
| state.Style()->SetWhiteSpaceIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWhiteSpace(StyleResolverState& state) { | |
| state.Style()->SetWhiteSpace(state.ParentStyle()->WhiteSpace()); | |
| state.Style()->SetWhiteSpaceIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWhiteSpace(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetWhiteSpace(ToCSSIdentifierValue(value).ConvertTo<EWhiteSpace>()); | |
| state.Style()->SetWhiteSpaceIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOverflowWrap(StyleResolverState& state) { | |
| state.Style()->SetOverflowWrap(ComputedStyle::InitialOverflowWrap()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOverflowWrap(StyleResolverState& state) { | |
| state.Style()->SetOverflowWrap(state.ParentStyle()->OverflowWrap()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOverflowWrap(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOverflowWrap(ToCSSIdentifierValue(value).ConvertTo<EOverflowWrap>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyVerticalAlign(StyleResolverState& state) { | |
| state.Style()->SetVerticalAlign(ComputedStyle::InitialVerticalAlign()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitLocale(StyleResolverState& state) { | |
| state.GetFontBuilder().SetLocale(FontBuilder::InitialLocale()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitLocale(StyleResolverState& state) { | |
| state.GetFontBuilder().SetLocale(state.ParentFontDescription().Locale()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMarginAfterCollapse(StyleResolverState& state) { | |
| state.Style()->SetMarginAfterCollapse(ComputedStyle::InitialMarginAfterCollapse()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMarginAfterCollapse(StyleResolverState& state) { | |
| state.Style()->SetMarginAfterCollapse(state.ParentStyle()->MarginAfterCollapse()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMarginAfterCollapse(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMarginAfterCollapse(ToCSSIdentifierValue(value).ConvertTo<EMarginCollapse>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOffsetPosition(StyleResolverState& state) { | |
| state.Style()->SetOffsetPosition(ComputedStyle::InitialOffsetPosition()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOffsetPosition(StyleResolverState& state) { | |
| state.Style()->SetOffsetPosition(state.ParentStyle()->OffsetPosition()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOffsetPosition(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOffsetPosition(StyleBuilderConverter::ConvertPositionOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackdropFilter(StyleResolverState& state) { | |
| state.Style()->SetBackdropFilter(ComputedStyle::InitialBackdropFilter()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackdropFilter(StyleResolverState& state) { | |
| state.Style()->SetBackdropFilter(state.ParentStyle()->BackdropFilter()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackdropFilter(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBackdropFilter(StyleBuilderConverter::ConvertFilterOperations(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMarkerEnd(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMarkerEndResource(SVGComputedStyle::InitialMarkerEndResource()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMarkerEnd(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMarkerEndResource(state.ParentStyle()->SvgStyle().MarkerEndResource()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMarkerEnd(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetMarkerEndResource(StyleBuilderConverter::ConvertFragmentIdentifier(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxLines(StyleResolverState& state) { | |
| state.Style()->SetBoxLines(ComputedStyle::InitialBoxLines()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxLines(StyleResolverState& state) { | |
| state.Style()->SetBoxLines(state.ParentStyle()->BoxLines()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxLines(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxLines(ToCSSIdentifierValue(value).ConvertTo<EBoxLines>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOffsetAnchor(StyleResolverState& state) { | |
| state.Style()->SetOffsetAnchor(ComputedStyle::InitialOffsetAnchor()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOffsetAnchor(StyleResolverState& state) { | |
| state.Style()->SetOffsetAnchor(state.ParentStyle()->OffsetAnchor()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOffsetAnchor(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOffsetAnchor(StyleBuilderConverter::ConvertPositionOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColumnSpan(StyleResolverState& state) { | |
| state.Style()->SetColumnSpan(ComputedStyle::InitialColumnSpan()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColumnSpan(StyleResolverState& state) { | |
| state.Style()->SetColumnSpan(state.ParentStyle()->GetColumnSpan()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColumnSpan(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetColumnSpan(ToCSSIdentifierValue(value).ConvertTo<ColumnSpan>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTableLayout(StyleResolverState& state) { | |
| state.Style()->SetTableLayout(ComputedStyle::InitialTableLayout()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTableLayout(StyleResolverState& state) { | |
| state.Style()->SetTableLayout(state.ParentStyle()->TableLayout()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTableLayout(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTableLayout(ToCSSIdentifierValue(value).ConvertTo<ETableLayout>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridRowGap(StyleResolverState& state) { | |
| state.Style()->SetGridRowGap(ComputedStyle::InitialGridRowGap()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridRowGap(StyleResolverState& state) { | |
| state.Style()->SetGridRowGap(state.ParentStyle()->GridRowGap()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridRowGap(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridRowGap(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderRightStyle(StyleResolverState& state) { | |
| state.Style()->SetBorderRightStyle(ComputedStyle::InitialBorderStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderRightStyle(StyleResolverState& state) { | |
| state.Style()->SetBorderRightStyle(state.ParentStyle()->BorderRightStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderRightStyle(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderRightStyle(ToCSSIdentifierValue(value).ConvertTo<EBorderStyle>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridRowEnd(StyleResolverState& state) { | |
| state.Style()->SetGridRowEnd(ComputedStyle::InitialGridRowEnd()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridRowEnd(StyleResolverState& state) { | |
| state.Style()->SetGridRowEnd(state.ParentStyle()->GridRowEnd()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridRowEnd(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridRowEnd(StyleBuilderConverter::ConvertGridPosition(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextUnderlinePosition(StyleResolverState& state) { | |
| state.Style()->SetTextUnderlinePosition(ComputedStyle::InitialTextUnderlinePosition()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextUnderlinePosition(StyleResolverState& state) { | |
| state.Style()->SetTextUnderlinePosition(state.ParentStyle()->GetTextUnderlinePosition()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextUnderlinePosition(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextUnderlinePosition(ToCSSIdentifierValue(value).ConvertTo<TextUnderlinePosition>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackfaceVisibility(StyleResolverState& state) { | |
| state.Style()->SetBackfaceVisibility(ComputedStyle::InitialBackfaceVisibility()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackfaceVisibility(StyleResolverState& state) { | |
| state.Style()->SetBackfaceVisibility(state.ParentStyle()->BackfaceVisibility()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackfaceVisibility(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBackfaceVisibility(ToCSSIdentifierValue(value).ConvertTo<EBackfaceVisibility>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyLeft(StyleResolverState& state) { | |
| state.Style()->SetLeft(ComputedStyle::InitialLeft()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyLeft(StyleResolverState& state) { | |
| state.Style()->SetLeft(state.ParentStyle()->Left()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyLeft(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetLeft(StyleBuilderConverter::ConvertLengthOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWidth(StyleResolverState& state) { | |
| state.Style()->SetWidth(ComputedStyle::InitialSize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWidth(StyleResolverState& state) { | |
| state.Style()->SetWidth(state.ParentStyle()->Width()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetWidth(StyleBuilderConverter::ConvertLengthSizing(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColumnRuleStyle(StyleResolverState& state) { | |
| state.Style()->SetColumnRuleStyle(ComputedStyle::InitialBorderStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColumnRuleStyle(StyleResolverState& state) { | |
| state.Style()->SetColumnRuleStyle(state.ParentStyle()->ColumnRuleStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColumnRuleStyle(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetColumnRuleStyle(ToCSSIdentifierValue(value).ConvertTo<EBorderStyle>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOffsetPath(StyleResolverState& state) { | |
| state.Style()->SetOffsetPath(ComputedStyle::InitialOffsetPath()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOffsetPath(StyleResolverState& state) { | |
| state.Style()->SetOffsetPath(state.ParentStyle()->OffsetPath()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOffsetPath(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOffsetPath(StyleBuilderConverter::ConvertPathOrNone(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextDecorationSkip(StyleResolverState& state) { | |
| state.Style()->SetTextDecorationSkip(ComputedStyle::InitialTextDecorationSkip()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextDecorationSkip(StyleResolverState& state) { | |
| state.Style()->SetTextDecorationSkip(state.ParentStyle()->GetTextDecorationSkip()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextDecorationSkip(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextDecorationSkip(StyleBuilderConverter::ConvertFlags<TextDecorationSkip>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBreakInside(StyleResolverState& state) { | |
| state.Style()->SetBreakInside(ComputedStyle::InitialBreakInside()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBreakInside(StyleResolverState& state) { | |
| state.Style()->SetBreakInside(state.ParentStyle()->BreakInside()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBreakInside(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBreakInside(ToCSSIdentifierValue(value).ConvertTo<EBreakInside>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskBoxImageSource(StyleResolverState& state) { | |
| state.Style()->SetMaskBoxImageSource(ComputedStyle::InitialMaskBoxImageSource()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskBoxImageSource(StyleResolverState& state) { | |
| state.Style()->SetMaskBoxImageSource(state.ParentStyle()->MaskBoxImageSource()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontFeatureSettings(StyleResolverState& state) { | |
| state.GetFontBuilder().SetFeatureSettings(FontBuilder::InitialFeatureSettings()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontFeatureSettings(StyleResolverState& state) { | |
| state.GetFontBuilder().SetFeatureSettings(state.ParentFontDescription().FeatureSettings()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontFeatureSettings(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetFeatureSettings(StyleBuilderConverter::ConvertFontFeatureSettings(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStrokeMiterlimit(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeMiterLimit(SVGComputedStyle::InitialStrokeMiterLimit()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStrokeMiterlimit(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeMiterLimit(state.ParentStyle()->SvgStyle().StrokeMiterLimit()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStrokeMiterlimit(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetStrokeMiterLimit(ToCSSPrimitiveValue(value).ConvertTo<float>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOverflowAnchor(StyleResolverState& state) { | |
| state.Style()->SetOverflowAnchor(ComputedStyle::InitialOverflowAnchor()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOverflowAnchor(StyleResolverState& state) { | |
| state.Style()->SetOverflowAnchor(state.ParentStyle()->OverflowAnchor()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOverflowAnchor(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOverflowAnchor(ToCSSIdentifierValue(value).ConvertTo<EOverflowAnchor>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridColumnStart(StyleResolverState& state) { | |
| state.Style()->SetGridColumnStart(ComputedStyle::InitialGridColumnStart()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridColumnStart(StyleResolverState& state) { | |
| state.Style()->SetGridColumnStart(state.ParentStyle()->GridColumnStart()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridColumnStart(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridColumnStart(StyleBuilderConverter::ConvertGridPosition(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMarginBottom(StyleResolverState& state) { | |
| state.Style()->SetMarginBottom(ComputedStyle::InitialMargin()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMarginBottom(StyleResolverState& state) { | |
| state.Style()->SetMarginBottom(state.ParentStyle()->MarginBottom()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMarginBottom(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMarginBottom(StyleBuilderConverter::ConvertQuirkyLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyListStylePosition(StyleResolverState& state) { | |
| state.Style()->SetListStylePosition(ComputedStyle::InitialListStylePosition()); | |
| state.Style()->SetListStylePositionIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyListStylePosition(StyleResolverState& state) { | |
| state.Style()->SetListStylePosition(state.ParentStyle()->ListStylePosition()); | |
| state.Style()->SetListStylePositionIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyListStylePosition(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetListStylePosition(ToCSSIdentifierValue(value).ConvertTo<EListStylePosition>()); | |
| state.Style()->SetListStylePositionIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOutlineOffset(StyleResolverState& state) { | |
| state.Style()->SetOutlineOffset(ComputedStyle::InitialOutlineOffset()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOutlineOffset(StyleResolverState& state) { | |
| state.Style()->SetOutlineOffset(state.ParentStyle()->OutlineOffset()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOutlineOffset(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOutlineOffset(StyleBuilderConverter::ConvertComputedLength<int>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyShapeRendering(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetShapeRendering(SVGComputedStyle::InitialShapeRendering()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyShapeRendering(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetShapeRendering(state.ParentStyle()->SvgStyle().ShapeRendering()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyShapeRendering(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetShapeRendering(ToCSSIdentifierValue(value).ConvertTo<EShapeRendering>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyJustifyItems(StyleResolverState& state) { | |
| state.Style()->SetJustifyItems(ComputedStyle::InitialSelfAlignment()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyJustifyItems(StyleResolverState& state) { | |
| state.Style()->SetJustifyItems(state.ParentStyle()->JustifyItems()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyJustifyItems(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetJustifyItems(StyleBuilderConverter::ConvertSelfOrDefaultAlignmentData(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyRotate(StyleResolverState& state) { | |
| state.Style()->SetRotate(ComputedStyle::InitialRotate()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyRotate(StyleResolverState& state) { | |
| state.Style()->SetRotate(state.ParentStyle()->Rotate()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyRotate(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetRotate(StyleBuilderConverter::ConvertRotate(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColorRendering(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetColorRendering(SVGComputedStyle::InitialColorRendering()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColorRendering(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetColorRendering(state.ParentStyle()->SvgStyle().ColorRendering()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColorRendering(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetColorRendering(ToCSSIdentifierValue(value).ConvertTo<EColorRendering>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStrokeLinejoin(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetJoinStyle(SVGComputedStyle::InitialJoinStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStrokeLinejoin(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetJoinStyle(state.ParentStyle()->SvgStyle().JoinStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStrokeLinejoin(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetJoinStyle(ToCSSIdentifierValue(value).ConvertTo<LineJoin>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFlexGrow(StyleResolverState& state) { | |
| state.Style()->SetFlexGrow(ComputedStyle::InitialFlexGrow()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFlexGrow(StyleResolverState& state) { | |
| state.Style()->SetFlexGrow(state.ParentStyle()->FlexGrow()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFlexGrow(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetFlexGrow(ToCSSPrimitiveValue(value).ConvertTo<float>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMask(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMaskerResource(SVGComputedStyle::InitialMaskerResource()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMask(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMaskerResource(state.ParentStyle()->SvgStyle().MaskerResource()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMask(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetMaskerResource(StyleBuilderConverter::ConvertFragmentIdentifier(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMarginBeforeCollapse(StyleResolverState& state) { | |
| state.Style()->SetMarginBeforeCollapse(ComputedStyle::InitialMarginBeforeCollapse()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMarginBeforeCollapse(StyleResolverState& state) { | |
| state.Style()->SetMarginBeforeCollapse(state.ParentStyle()->MarginBeforeCollapse()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMarginBeforeCollapse(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMarginBeforeCollapse(ToCSSIdentifierValue(value).ConvertTo<EMarginCollapse>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitAppearance(StyleResolverState& state) { | |
| state.Style()->SetAppearance(ComputedStyle::InitialAppearance()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitAppearance(StyleResolverState& state) { | |
| state.Style()->SetAppearance(state.ParentStyle()->Appearance()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitAppearance(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetAppearance(ToCSSIdentifierValue(value).ConvertTo<ControlPart>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPointerEvents(StyleResolverState& state) { | |
| state.Style()->SetPointerEvents(ComputedStyle::InitialPointerEvents()); | |
| state.Style()->SetPointerEventsIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyPointerEvents(StyleResolverState& state) { | |
| state.Style()->SetPointerEvents(state.ParentStyle()->PointerEvents()); | |
| state.Style()->SetPointerEventsIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPointerEvents(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPointerEvents(ToCSSIdentifierValue(value).ConvertTo<EPointerEvents>()); | |
| state.Style()->SetPointerEventsIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxOrient(StyleResolverState& state) { | |
| state.Style()->SetBoxOrient(ComputedStyle::InitialBoxOrient()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxOrient(StyleResolverState& state) { | |
| state.Style()->SetBoxOrient(state.ParentStyle()->BoxOrient()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxOrient(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxOrient(ToCSSIdentifierValue(value).ConvertTo<EBoxOrient>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStrokeLinecap(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetCapStyle(SVGComputedStyle::InitialCapStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStrokeLinecap(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetCapStyle(state.ParentStyle()->SvgStyle().CapStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStrokeLinecap(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetCapStyle(ToCSSIdentifierValue(value).ConvertTo<LineCap>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderLeftStyle(StyleResolverState& state) { | |
| state.Style()->SetBorderLeftStyle(ComputedStyle::InitialBorderStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderLeftStyle(StyleResolverState& state) { | |
| state.Style()->SetBorderLeftStyle(state.ParentStyle()->BorderLeftStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderLeftStyle(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderLeftStyle(ToCSSIdentifierValue(value).ConvertTo<EBorderStyle>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitUserDrag(StyleResolverState& state) { | |
| state.Style()->SetUserDrag(ComputedStyle::InitialUserDrag()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitUserDrag(StyleResolverState& state) { | |
| state.Style()->SetUserDrag(state.ParentStyle()->UserDrag()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitUserDrag(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetUserDrag(ToCSSIdentifierValue(value).ConvertTo<EUserDrag>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontVariantLigatures(StyleResolverState& state) { | |
| state.GetFontBuilder().SetVariantLigatures(FontBuilder::InitialVariantLigatures()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontVariantLigatures(StyleResolverState& state) { | |
| state.GetFontBuilder().SetVariantLigatures(state.ParentFontDescription().GetVariantLigatures()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontVariantLigatures(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetVariantLigatures(StyleBuilderConverter::ConvertFontVariantLigatures(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMarkerMid(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMarkerMidResource(SVGComputedStyle::InitialMarkerMidResource()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMarkerMid(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMarkerMidResource(state.ParentStyle()->SvgStyle().MarkerMidResource()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMarkerMid(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetMarkerMidResource(StyleBuilderConverter::ConvertFragmentIdentifier(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTextCombine(StyleResolverState& state) { | |
| state.Style()->SetTextCombine(ComputedStyle::InitialTextCombine()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTextCombine(StyleResolverState& state) { | |
| state.Style()->SetTextCombine(state.ParentStyle()->GetTextCombine()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTextCombine(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextCombine(ToCSSIdentifierValue(value).ConvertTo<TextCombine>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyX(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetX(SVGComputedStyle::InitialX()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyX(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetX(state.ParentStyle()->SvgStyle().X()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyX(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetX(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyY(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetY(SVGComputedStyle::InitialY()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyY(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetY(state.ParentStyle()->SvgStyle().Y()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyY(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetY(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyR(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetR(SVGComputedStyle::InitialR()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyR(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetR(state.ParentStyle()->SvgStyle().R()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyR(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetR(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyResize(StyleResolverState& state) { | |
| state.Style()->SetResize(ComputedStyle::InitialResize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyResize(StyleResolverState& state) { | |
| state.Style()->SetResize(state.ParentStyle()->Resize()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOffsetDistance(StyleResolverState& state) { | |
| state.Style()->SetOffsetDistance(ComputedStyle::InitialOffsetDistance()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOffsetDistance(StyleResolverState& state) { | |
| state.Style()->SetOffsetDistance(state.ParentStyle()->OffsetDistance()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOffsetDistance(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOffsetDistance(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyLetterSpacing(StyleResolverState& state) { | |
| state.Style()->SetLetterSpacing(ComputedStyle::InitialLetterWordSpacing()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyLetterSpacing(StyleResolverState& state) { | |
| state.Style()->SetLetterSpacing(state.ParentStyle()->LetterSpacing()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyLetterSpacing(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetLetterSpacing(StyleBuilderConverter::ConvertSpacing(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTransformOriginZ(StyleResolverState& state) { | |
| state.Style()->SetTransformOriginZ(ComputedStyle::InitialTransformOriginZ()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTransformOriginZ(StyleResolverState& state) { | |
| state.Style()->SetTransformOriginZ(state.ParentStyle()->TransformOriginZ()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTransformOriginZ(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTransformOriginZ(StyleBuilderConverter::ConvertComputedLength<float>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTextOrientation(StyleResolverState& state) { | |
| state.Style()->SetTextOrientation(ComputedStyle::InitialTextOrientation()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTextOrientation(StyleResolverState& state) { | |
| state.Style()->SetTextOrientation(state.ParentStyle()->GetTextOrientation()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyD(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetD(SVGComputedStyle::InitialD()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyD(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetD(state.ParentStyle()->SvgStyle().D()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyD(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetD(StyleBuilderConverter::ConvertPathOrNone(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColorInterpolationFilters(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetColorInterpolationFilters(SVGComputedStyle::InitialColorInterpolationFilters()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColorInterpolationFilters(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetColorInterpolationFilters(state.ParentStyle()->SvgStyle().ColorInterpolationFilters()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColorInterpolationFilters(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetColorInterpolationFilters(ToCSSIdentifierValue(value).ConvertTo<EColorInterpolation>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextTransform(StyleResolverState& state) { | |
| state.Style()->SetTextTransform(ComputedStyle::InitialTextTransform()); | |
| state.Style()->SetTextTransformIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextTransform(StyleResolverState& state) { | |
| state.Style()->SetTextTransform(state.ParentStyle()->TextTransform()); | |
| state.Style()->SetTextTransformIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextTransform(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextTransform(ToCSSIdentifierValue(value).ConvertTo<ETextTransform>()); | |
| state.Style()->SetTextTransformIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyRight(StyleResolverState& state) { | |
| state.Style()->SetRight(ComputedStyle::InitialRight()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyRight(StyleResolverState& state) { | |
| state.Style()->SetRight(state.ParentStyle()->Right()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyRight(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetRight(StyleBuilderConverter::ConvertLengthOrAuto(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridColumnEnd(StyleResolverState& state) { | |
| state.Style()->SetGridColumnEnd(ComputedStyle::InitialGridColumnEnd()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridColumnEnd(StyleResolverState& state) { | |
| state.Style()->SetGridColumnEnd(state.ParentStyle()->GridColumnEnd()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridColumnEnd(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridColumnEnd(StyleBuilderConverter::ConvertGridPosition(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyScrollSnapCoordinate(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapCoordinate(ComputedStyle::InitialScrollSnapCoordinate()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyScrollSnapCoordinate(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapCoordinate(state.ParentStyle()->ScrollSnapCoordinate()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyScrollSnapCoordinate(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetScrollSnapCoordinate(StyleBuilderConverter::ConvertSnapCoordinates(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAlignContent(StyleResolverState& state) { | |
| state.Style()->SetAlignContent(ComputedStyle::InitialContentAlignment()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAlignContent(StyleResolverState& state) { | |
| state.Style()->SetAlignContent(state.ParentStyle()->AlignContent()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAlignContent(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetAlignContent(StyleBuilderConverter::ConvertContentAlignmentData(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyDirection(StyleResolverState& state) { | |
| state.Style()->SetDirection(ComputedStyle::InitialDirection()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyDirection(StyleResolverState& state) { | |
| state.Style()->SetDirection(state.ParentStyle()->Direction()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextOrientation(StyleResolverState& state) { | |
| state.Style()->SetTextOrientation(ComputedStyle::InitialTextOrientation()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextOrientation(StyleResolverState& state) { | |
| state.Style()->SetTextOrientation(state.ParentStyle()->GetTextOrientation()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyLineHeightStep(StyleResolverState& state) { | |
| state.Style()->SetLineHeightStep(ComputedStyle::InitialLineHeightStep()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyLineHeightStep(StyleResolverState& state) { | |
| state.Style()->SetLineHeightStep(state.ParentStyle()->LineHeightStep()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyLineHeightStep(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetLineHeightStep(StyleBuilderConverter::ConvertComputedLength<uint8_t>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBorderImage(StyleResolverState& state) { | |
| state.Style()->SetBorderImage(ComputedStyle::InitialNinePieceImage()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBorderImage(StyleResolverState& state) { | |
| state.Style()->SetBorderImage(state.ParentStyle()->BorderImage()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTouchAction(StyleResolverState& state) { | |
| state.Style()->SetTouchAction(ComputedStyle::InitialTouchAction()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTouchAction(StyleResolverState& state) { | |
| state.Style()->SetTouchAction(state.ParentStyle()->GetTouchAction()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTouchAction(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTouchAction(StyleBuilderConverter::ConvertFlags<TouchAction>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBorderVerticalSpacing(StyleResolverState& state) { | |
| state.Style()->SetVerticalBorderSpacing(ComputedStyle::InitialVerticalBorderSpacing()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBorderVerticalSpacing(StyleResolverState& state) { | |
| state.Style()->SetVerticalBorderSpacing(state.ParentStyle()->VerticalBorderSpacing()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBorderVerticalSpacing(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetVerticalBorderSpacing(StyleBuilderConverter::ConvertComputedLength<short>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMarginLeft(StyleResolverState& state) { | |
| state.Style()->SetMarginLeft(ComputedStyle::InitialMargin()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMarginLeft(StyleResolverState& state) { | |
| state.Style()->SetMarginLeft(state.ParentStyle()->MarginLeft()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMarginLeft(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMarginLeft(StyleBuilderConverter::ConvertQuirkyLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFlexWrap(StyleResolverState& state) { | |
| state.Style()->SetFlexWrap(ComputedStyle::InitialFlexWrap()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFlexWrap(StyleResolverState& state) { | |
| state.Style()->SetFlexWrap(state.ParentStyle()->FlexWrap()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFlexWrap(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetFlexWrap(ToCSSIdentifierValue(value).ConvertTo<EFlexWrap>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMinHeight(StyleResolverState& state) { | |
| state.Style()->SetMinHeight(ComputedStyle::InitialMinSize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMinHeight(StyleResolverState& state) { | |
| state.Style()->SetMinHeight(state.ParentStyle()->MinHeight()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMinHeight(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMinHeight(StyleBuilderConverter::ConvertLengthSizing(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFloodColor(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFloodColor(SVGComputedStyle::InitialFloodColor()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFloodColor(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFloodColor(state.ParentStyle()->SvgStyle().FloodColor()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFloodColor(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetFloodColor(StyleBuilderConverter::ConvertColor(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMaxHeight(StyleResolverState& state) { | |
| state.Style()->SetMaxHeight(ComputedStyle::InitialMaxSize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMaxHeight(StyleResolverState& state) { | |
| state.Style()->SetMaxHeight(state.ParentStyle()->MaxHeight()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMaxHeight(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMaxHeight(StyleBuilderConverter::ConvertLengthMaxSizing(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBufferedRendering(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetBufferedRendering(SVGComputedStyle::InitialBufferedRendering()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBufferedRendering(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetBufferedRendering(state.ParentStyle()->SvgStyle().BufferedRendering()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBufferedRendering(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetBufferedRendering(ToCSSIdentifierValue(value).ConvertTo<EBufferedRendering>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOrphans(StyleResolverState& state) { | |
| state.Style()->SetOrphans(ComputedStyle::InitialOrphans()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOrphans(StyleResolverState& state) { | |
| state.Style()->SetOrphans(state.ParentStyle()->Orphans()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOrphans(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOrphans(ToCSSPrimitiveValue(value).ConvertTo<short>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAlignmentBaseline(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetAlignmentBaseline(SVGComputedStyle::InitialAlignmentBaseline()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAlignmentBaseline(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetAlignmentBaseline(state.ParentStyle()->SvgStyle().AlignmentBaseline()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAlignmentBaseline(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetAlignmentBaseline(ToCSSIdentifierValue(value).ConvertTo<EAlignmentBaseline>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMinWidth(StyleResolverState& state) { | |
| state.Style()->SetMinWidth(ComputedStyle::InitialMinSize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMinWidth(StyleResolverState& state) { | |
| state.Style()->SetMinWidth(state.ParentStyle()->MinWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMinWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMinWidth(StyleBuilderConverter::ConvertLengthSizing(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMaskType(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMaskType(SVGComputedStyle::InitialMaskType()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMaskType(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMaskType(state.ParentStyle()->SvgStyle().MaskType()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMaskType(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetMaskType(ToCSSIdentifierValue(value).ConvertTo<EMaskType>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitPerspectiveOriginY(StyleResolverState& state) { | |
| state.Style()->SetPerspectiveOriginY(ComputedStyle::InitialPerspectiveOriginY()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitPerspectiveOriginY(StyleResolverState& state) { | |
| state.Style()->SetPerspectiveOriginY(state.ParentStyle()->PerspectiveOriginY()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitPerspectiveOriginY(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPerspectiveOriginY(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextAlignLast(StyleResolverState& state) { | |
| state.Style()->SetTextAlignLast(ComputedStyle::InitialTextAlignLast()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextAlignLast(StyleResolverState& state) { | |
| state.Style()->SetTextAlignLast(state.ParentStyle()->GetTextAlignLast()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextAlignLast(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextAlignLast(ToCSSIdentifierValue(value).ConvertTo<TextAlignLast>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMarginTopCollapse(StyleResolverState& state) { | |
| state.Style()->SetMarginBeforeCollapse(ComputedStyle::InitialMarginBeforeCollapse()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMarginTopCollapse(StyleResolverState& state) { | |
| state.Style()->SetMarginBeforeCollapse(state.ParentStyle()->MarginBeforeCollapse()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMarginTopCollapse(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMarginBeforeCollapse(ToCSSIdentifierValue(value).ConvertTo<EMarginCollapse>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTabSize(StyleResolverState& state) { | |
| state.Style()->SetTabSize(ComputedStyle::InitialTabSize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTabSize(StyleResolverState& state) { | |
| state.Style()->SetTabSize(state.ParentStyle()->GetTabSize()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTabSize(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTabSize(StyleBuilderConverter::ConvertLengthOrTabSpaces(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOffsetRotation(StyleResolverState& state) { | |
| state.Style()->SetOffsetRotation(ComputedStyle::InitialOffsetRotation()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOffsetRotation(StyleResolverState& state) { | |
| state.Style()->SetOffsetRotation(state.ParentStyle()->OffsetRotation()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOffsetRotation(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetOffsetRotation(StyleBuilderConverter::ConvertOffsetRotate(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderBottomWidth(StyleResolverState& state) { | |
| state.Style()->SetBorderBottomWidth(ComputedStyle::InitialBorderWidth()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderBottomWidth(StyleResolverState& state) { | |
| state.Style()->SetBorderBottomWidth(state.ParentStyle()->BorderBottomWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderBottomWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderBottomWidth(StyleBuilderConverter::ConvertLineWidth<float>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitHighlight(StyleResolverState& state) { | |
| state.Style()->SetHighlight(ComputedStyle::InitialHighlight()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitHighlight(StyleResolverState& state) { | |
| state.Style()->SetHighlight(state.ParentStyle()->Highlight()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitHighlight(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetHighlight(StyleBuilderConverter::ConvertString<CSSValueNone>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyEmptyCells(StyleResolverState& state) { | |
| state.Style()->SetEmptyCells(ComputedStyle::InitialEmptyCells()); | |
| state.Style()->SetEmptyCellsIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyEmptyCells(StyleResolverState& state) { | |
| state.Style()->SetEmptyCells(state.ParentStyle()->EmptyCells()); | |
| state.Style()->SetEmptyCellsIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyEmptyCells(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetEmptyCells(ToCSSIdentifierValue(value).ConvertTo<EEmptyCells>()); | |
| state.Style()->SetEmptyCellsIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextOverflow(StyleResolverState& state) { | |
| state.Style()->SetTextOverflow(ComputedStyle::InitialTextOverflow()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextOverflow(StyleResolverState& state) { | |
| state.Style()->SetTextOverflow(state.ParentStyle()->GetTextOverflow()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextOverflow(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextOverflow(ToCSSIdentifierValue(value).ConvertTo<TextOverflow>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBoxSizing(StyleResolverState& state) { | |
| state.Style()->SetBoxSizing(ComputedStyle::InitialBoxSizing()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBoxSizing(StyleResolverState& state) { | |
| state.Style()->SetBoxSizing(state.ParentStyle()->BoxSizing()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBoxSizing(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxSizing(ToCSSIdentifierValue(value).ConvertTo<EBoxSizing>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStrokeWidth(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeWidth(SVGComputedStyle::InitialStrokeWidth()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStrokeWidth(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokeWidth(state.ParentStyle()->SvgStyle().StrokeWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStrokeWidth(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetStrokeWidth(StyleBuilderConverter::ConvertUnzoomedLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMarkerStart(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMarkerStartResource(SVGComputedStyle::InitialMarkerStartResource()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMarkerStart(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetMarkerStartResource(state.ParentStyle()->SvgStyle().MarkerStartResource()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMarkerStart(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetMarkerStartResource(StyleBuilderConverter::ConvertFragmentIdentifier(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextDecorationStyle(StyleResolverState& state) { | |
| state.Style()->SetTextDecorationStyle(ComputedStyle::InitialTextDecorationStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextDecorationStyle(StyleResolverState& state) { | |
| state.Style()->SetTextDecorationStyle(state.ParentStyle()->GetTextDecorationStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextDecorationStyle(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTextDecorationStyle(ToCSSIdentifierValue(value).ConvertTo<TextDecorationStyle>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTranslate(StyleResolverState& state) { | |
| state.Style()->SetTranslate(ComputedStyle::InitialTranslate()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTranslate(StyleResolverState& state) { | |
| state.Style()->SetTranslate(state.ParentStyle()->Translate()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTranslate(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTranslate(StyleBuilderConverter::ConvertTranslate(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyPaddingTop(StyleResolverState& state) { | |
| state.Style()->SetPaddingTop(ComputedStyle::InitialPadding()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyPaddingTop(StyleResolverState& state) { | |
| state.Style()->SetPaddingTop(state.ParentStyle()->PaddingTop()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyPaddingTop(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPaddingTop(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyDisplay(StyleResolverState& state) { | |
| state.Style()->SetDisplay(ComputedStyle::InitialDisplay()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyDisplay(StyleResolverState& state) { | |
| state.Style()->SetDisplay(state.ParentStyle()->Display()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyDisplay(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetDisplay(ToCSSIdentifierValue(value).ConvertTo<EDisplay>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWordBreak(StyleResolverState& state) { | |
| state.Style()->SetWordBreak(ComputedStyle::InitialWordBreak()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWordBreak(StyleResolverState& state) { | |
| state.Style()->SetWordBreak(state.ParentStyle()->WordBreak()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWordBreak(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetWordBreak(ToCSSIdentifierValue(value).ConvertTo<EWordBreak>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderTopStyle(StyleResolverState& state) { | |
| state.Style()->SetBorderTopStyle(ComputedStyle::InitialBorderStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderTopStyle(StyleResolverState& state) { | |
| state.Style()->SetBorderTopStyle(state.ParentStyle()->BorderTopStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderTopStyle(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderTopStyle(ToCSSIdentifierValue(value).ConvertTo<EBorderStyle>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyJustifyContent(StyleResolverState& state) { | |
| state.Style()->SetJustifyContent(ComputedStyle::InitialContentAlignment()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyJustifyContent(StyleResolverState& state) { | |
| state.Style()->SetJustifyContent(state.ParentStyle()->JustifyContent()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyJustifyContent(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetJustifyContent(StyleBuilderConverter::ConvertContentAlignmentData(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBoxShadow(StyleResolverState& state) { | |
| state.Style()->SetBoxShadow(ComputedStyle::InitialBoxShadow()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBoxShadow(StyleResolverState& state) { | |
| state.Style()->SetBoxShadow(state.ParentStyle()->BoxShadow()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBoxShadow(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxShadow(StyleBuilderConverter::ConvertShadowList(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertySpeak(StyleResolverState& state) { | |
| state.Style()->SetSpeak(ComputedStyle::InitialSpeak()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertySpeak(StyleResolverState& state) { | |
| state.Style()->SetSpeak(state.ParentStyle()->Speak()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertySpeak(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetSpeak(ToCSSIdentifierValue(value).ConvertTo<ESpeak>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyListStyleImage(StyleResolverState& state) { | |
| state.Style()->SetListStyleImage(ComputedStyle::InitialListStyleImage()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyListStyleImage(StyleResolverState& state) { | |
| state.Style()->SetListStyleImage(state.ParentStyle()->ListStyleImage()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFloodOpacity(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFloodOpacity(SVGComputedStyle::InitialFloodOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFloodOpacity(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFloodOpacity(state.ParentStyle()->SvgStyle().FloodOpacity()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFloodOpacity(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetFloodOpacity(StyleBuilderConverter::ConvertNumberOrPercentage(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyClipRule(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetClipRule(SVGComputedStyle::InitialClipRule()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyClipRule(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetClipRule(state.ParentStyle()->SvgStyle().ClipRule()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyClipRule(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetClipRule(ToCSSIdentifierValue(value).ConvertTo<WindRule>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFlexDirection(StyleResolverState& state) { | |
| state.Style()->SetFlexDirection(ComputedStyle::InitialFlexDirection()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFlexDirection(StyleResolverState& state) { | |
| state.Style()->SetFlexDirection(state.ParentStyle()->FlexDirection()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFlexDirection(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetFlexDirection(ToCSSIdentifierValue(value).ConvertTo<EFlexDirection>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyLightingColor(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetLightingColor(SVGComputedStyle::InitialLightingColor()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyLightingColor(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetLightingColor(state.ParentStyle()->SvgStyle().LightingColor()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyLightingColor(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->AccessSVGStyle().SetLightingColor(StyleBuilderConverter::ConvertColor(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyListStyleType(StyleResolverState& state) { | |
| state.Style()->SetListStyleType(ComputedStyle::InitialListStyleType()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyListStyleType(StyleResolverState& state) { | |
| state.Style()->SetListStyleType(state.ParentStyle()->ListStyleType()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyListStyleType(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetListStyleType(ToCSSIdentifierValue(value).ConvertTo<EListStyleType>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyImageOrientation(StyleResolverState& state) { | |
| state.Style()->SetRespectImageOrientation(ComputedStyle::InitialRespectImageOrientation()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyImageOrientation(StyleResolverState& state) { | |
| state.Style()->SetRespectImageOrientation(state.ParentStyle()->RespectImageOrientation()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyImageOrientation(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetRespectImageOrientation(StyleBuilderConverter::ConvertImageOrientation(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextAlign(StyleResolverState& state) { | |
| state.Style()->SetTextAlign(ComputedStyle::InitialTextAlign()); | |
| state.Style()->SetTextAlignIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextAlign(StyleResolverState& state) { | |
| state.Style()->SetTextAlign(state.ParentStyle()->GetTextAlign()); | |
| state.Style()->SetTextAlignIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAlignItems(StyleResolverState& state) { | |
| state.Style()->SetAlignItems(ComputedStyle::InitialDefaultAlignment()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAlignItems(StyleResolverState& state) { | |
| state.Style()->SetAlignItems(state.ParentStyle()->AlignItems()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAlignItems(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetAlignItems(StyleBuilderConverter::ConvertSelfOrDefaultAlignmentData(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyObjectPosition(StyleResolverState& state) { | |
| state.Style()->SetObjectPosition(ComputedStyle::InitialObjectPosition()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyObjectPosition(StyleResolverState& state) { | |
| state.Style()->SetObjectPosition(state.ParentStyle()->ObjectPosition()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyObjectPosition(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetObjectPosition(StyleBuilderConverter::ConvertPosition(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridColumnGap(StyleResolverState& state) { | |
| state.Style()->SetGridColumnGap(ComputedStyle::InitialGridColumnGap()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridColumnGap(StyleResolverState& state) { | |
| state.Style()->SetGridColumnGap(state.ParentStyle()->GridColumnGap()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridColumnGap(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetGridColumnGap(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyScrollSnapDestination(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapDestination(ComputedStyle::InitialScrollSnapDestination()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyScrollSnapDestination(StyleResolverState& state) { | |
| state.Style()->SetScrollSnapDestination(state.ParentStyle()->ScrollSnapDestination()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyScrollSnapDestination(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetScrollSnapDestination(StyleBuilderConverter::ConvertPosition(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTransformBox(StyleResolverState& state) { | |
| state.Style()->SetTransformBox(ComputedStyle::InitialTransformBox()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTransformBox(StyleResolverState& state) { | |
| state.Style()->SetTransformBox(state.ParentStyle()->TransformBox()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTransformBox(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetTransformBox(ToCSSIdentifierValue(value).ConvertTo<ETransformBox>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitBoxFlexGroup(StyleResolverState& state) { | |
| state.Style()->SetBoxFlexGroup(ComputedStyle::InitialBoxFlexGroup()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitBoxFlexGroup(StyleResolverState& state) { | |
| state.Style()->SetBoxFlexGroup(state.ParentStyle()->BoxFlexGroup()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitBoxFlexGroup(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBoxFlexGroup(ToCSSPrimitiveValue(value).ConvertTo<unsigned int>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitPerspectiveOriginX(StyleResolverState& state) { | |
| state.Style()->SetPerspectiveOriginX(ComputedStyle::InitialPerspectiveOriginX()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitPerspectiveOriginX(StyleResolverState& state) { | |
| state.Style()->SetPerspectiveOriginX(state.ParentStyle()->PerspectiveOriginX()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitPerspectiveOriginX(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetPerspectiveOriginX(StyleBuilderConverter::ConvertLength(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontSizeAdjust(StyleResolverState& state) { | |
| state.GetFontBuilder().SetSizeAdjust(FontBuilder::InitialSizeAdjust()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontSizeAdjust(StyleResolverState& state) { | |
| state.GetFontBuilder().SetSizeAdjust(state.ParentFontDescription().SizeAdjust()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontSizeAdjust(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetSizeAdjust(StyleBuilderConverter::ConvertFontSizeAdjust(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFontSize(StyleResolverState& state) { | |
| state.GetFontBuilder().SetSize(FontBuilder::InitialSize()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFontSize(StyleResolverState& state) { | |
| state.GetFontBuilder().SetSize(state.ParentFontDescription().GetSize()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFontSize(StyleResolverState& state, const CSSValue& value) { | |
| state.GetFontBuilder().SetSize(StyleBuilderConverter::ConvertFontSize(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyVisibility(StyleResolverState& state) { | |
| state.Style()->SetVisibility(ComputedStyle::InitialVisibility()); | |
| state.Style()->SetVisibilityIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyVisibility(StyleResolverState& state) { | |
| state.Style()->SetVisibility(state.ParentStyle()->Visibility()); | |
| state.Style()->SetVisibilityIsInherited | |
| (true); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyVisibility(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetVisibility(ToCSSIdentifierValue(value).ConvertTo<EVisibility>()); | |
| state.Style()->SetVisibilityIsInherited | |
| (false); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAnimationDelay(StyleResolverState& state) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.DelayList().Clear(); | |
| data.DelayList().push_back(CSSAnimationData::InitialDelay()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAnimationDelay(StyleResolverState& state) { | |
| const CSSAnimationData* parentData = state.ParentStyle()->Animations(); | |
| if (!parentData) | |
| applyInitialCSSPropertyAnimationDelay(state); | |
| else | |
| state.Style()->AccessAnimations().DelayList() = parentData->DelayList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAnimationDelay(StyleResolverState& state, const CSSValue& value) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.DelayList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.DelayList().push_back(CSSToStyleMap::MapAnimationDelay(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAnimationDirection(StyleResolverState& state) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.DirectionList().Clear(); | |
| data.DirectionList().push_back(CSSAnimationData::InitialDirection()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAnimationDirection(StyleResolverState& state) { | |
| const CSSAnimationData* parentData = state.ParentStyle()->Animations(); | |
| if (!parentData) | |
| applyInitialCSSPropertyAnimationDirection(state); | |
| else | |
| state.Style()->AccessAnimations().DirectionList() = parentData->DirectionList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAnimationDirection(StyleResolverState& state, const CSSValue& value) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.DirectionList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.DirectionList().push_back(CSSToStyleMap::MapAnimationDirection(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAnimationDuration(StyleResolverState& state) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.DurationList().Clear(); | |
| data.DurationList().push_back(CSSAnimationData::InitialDuration()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAnimationDuration(StyleResolverState& state) { | |
| const CSSAnimationData* parentData = state.ParentStyle()->Animations(); | |
| if (!parentData) | |
| applyInitialCSSPropertyAnimationDuration(state); | |
| else | |
| state.Style()->AccessAnimations().DurationList() = parentData->DurationList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAnimationDuration(StyleResolverState& state, const CSSValue& value) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.DurationList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.DurationList().push_back(CSSToStyleMap::MapAnimationDuration(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAnimationFillMode(StyleResolverState& state) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.FillModeList().Clear(); | |
| data.FillModeList().push_back(CSSAnimationData::InitialFillMode()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAnimationFillMode(StyleResolverState& state) { | |
| const CSSAnimationData* parentData = state.ParentStyle()->Animations(); | |
| if (!parentData) | |
| applyInitialCSSPropertyAnimationFillMode(state); | |
| else | |
| state.Style()->AccessAnimations().FillModeList() = parentData->FillModeList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAnimationFillMode(StyleResolverState& state, const CSSValue& value) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.FillModeList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.FillModeList().push_back(CSSToStyleMap::MapAnimationFillMode(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAnimationIterationCount(StyleResolverState& state) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.IterationCountList().Clear(); | |
| data.IterationCountList().push_back(CSSAnimationData::InitialIterationCount()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAnimationIterationCount(StyleResolverState& state) { | |
| const CSSAnimationData* parentData = state.ParentStyle()->Animations(); | |
| if (!parentData) | |
| applyInitialCSSPropertyAnimationIterationCount(state); | |
| else | |
| state.Style()->AccessAnimations().IterationCountList() = parentData->IterationCountList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAnimationIterationCount(StyleResolverState& state, const CSSValue& value) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.IterationCountList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.IterationCountList().push_back(CSSToStyleMap::MapAnimationIterationCount(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAnimationName(StyleResolverState& state) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.NameList().Clear(); | |
| data.NameList().push_back(CSSAnimationData::InitialName()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAnimationName(StyleResolverState& state) { | |
| const CSSAnimationData* parentData = state.ParentStyle()->Animations(); | |
| if (!parentData) | |
| applyInitialCSSPropertyAnimationName(state); | |
| else | |
| state.Style()->AccessAnimations().NameList() = parentData->NameList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAnimationName(StyleResolverState& state, const CSSValue& value) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.NameList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.NameList().push_back(CSSToStyleMap::MapAnimationName(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAnimationPlayState(StyleResolverState& state) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.PlayStateList().Clear(); | |
| data.PlayStateList().push_back(CSSAnimationData::InitialPlayState()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAnimationPlayState(StyleResolverState& state) { | |
| const CSSAnimationData* parentData = state.ParentStyle()->Animations(); | |
| if (!parentData) | |
| applyInitialCSSPropertyAnimationPlayState(state); | |
| else | |
| state.Style()->AccessAnimations().PlayStateList() = parentData->PlayStateList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAnimationPlayState(StyleResolverState& state, const CSSValue& value) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.PlayStateList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.PlayStateList().push_back(CSSToStyleMap::MapAnimationPlayState(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyAnimationTimingFunction(StyleResolverState& state) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.TimingFunctionList().Clear(); | |
| data.TimingFunctionList().push_back(CSSAnimationData::InitialTimingFunction()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyAnimationTimingFunction(StyleResolverState& state) { | |
| const CSSAnimationData* parentData = state.ParentStyle()->Animations(); | |
| if (!parentData) | |
| applyInitialCSSPropertyAnimationTimingFunction(state); | |
| else | |
| state.Style()->AccessAnimations().TimingFunctionList() = parentData->TimingFunctionList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyAnimationTimingFunction(StyleResolverState& state, const CSSValue& value) { | |
| CSSAnimationData& data = state.Style()->AccessAnimations(); | |
| data.TimingFunctionList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.TimingFunctionList().push_back(CSSToStyleMap::MapAnimationTimingFunction(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTransitionDelay(StyleResolverState& state) { | |
| CSSTransitionData& data = state.Style()->AccessTransitions(); | |
| data.DelayList().Clear(); | |
| data.DelayList().push_back(CSSTransitionData::InitialDelay()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTransitionDelay(StyleResolverState& state) { | |
| const CSSTransitionData* parentData = state.ParentStyle()->Transitions(); | |
| if (!parentData) | |
| applyInitialCSSPropertyTransitionDelay(state); | |
| else | |
| state.Style()->AccessTransitions().DelayList() = parentData->DelayList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTransitionDelay(StyleResolverState& state, const CSSValue& value) { | |
| CSSTransitionData& data = state.Style()->AccessTransitions(); | |
| data.DelayList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.DelayList().push_back(CSSToStyleMap::MapAnimationDelay(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTransitionDuration(StyleResolverState& state) { | |
| CSSTransitionData& data = state.Style()->AccessTransitions(); | |
| data.DurationList().Clear(); | |
| data.DurationList().push_back(CSSTransitionData::InitialDuration()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTransitionDuration(StyleResolverState& state) { | |
| const CSSTransitionData* parentData = state.ParentStyle()->Transitions(); | |
| if (!parentData) | |
| applyInitialCSSPropertyTransitionDuration(state); | |
| else | |
| state.Style()->AccessTransitions().DurationList() = parentData->DurationList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTransitionDuration(StyleResolverState& state, const CSSValue& value) { | |
| CSSTransitionData& data = state.Style()->AccessTransitions(); | |
| data.DurationList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.DurationList().push_back(CSSToStyleMap::MapAnimationDuration(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTransitionProperty(StyleResolverState& state) { | |
| CSSTransitionData& data = state.Style()->AccessTransitions(); | |
| data.PropertyList().Clear(); | |
| data.PropertyList().push_back(CSSTransitionData::InitialProperty()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTransitionProperty(StyleResolverState& state) { | |
| const CSSTransitionData* parentData = state.ParentStyle()->Transitions(); | |
| if (!parentData) | |
| applyInitialCSSPropertyTransitionProperty(state); | |
| else | |
| state.Style()->AccessTransitions().PropertyList() = parentData->PropertyList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTransitionProperty(StyleResolverState& state, const CSSValue& value) { | |
| CSSTransitionData& data = state.Style()->AccessTransitions(); | |
| data.PropertyList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.PropertyList().push_back(CSSToStyleMap::MapAnimationProperty(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTransitionTimingFunction(StyleResolverState& state) { | |
| CSSTransitionData& data = state.Style()->AccessTransitions(); | |
| data.TimingFunctionList().Clear(); | |
| data.TimingFunctionList().push_back(CSSTransitionData::InitialTimingFunction()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTransitionTimingFunction(StyleResolverState& state) { | |
| const CSSTransitionData* parentData = state.ParentStyle()->Transitions(); | |
| if (!parentData) | |
| applyInitialCSSPropertyTransitionTimingFunction(state); | |
| else | |
| state.Style()->AccessTransitions().TimingFunctionList() = parentData->TimingFunctionList(); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTransitionTimingFunction(StyleResolverState& state, const CSSValue& value) { | |
| CSSTransitionData& data = state.Style()->AccessTransitions(); | |
| data.TimingFunctionList().Clear(); | |
| for (auto& listValue : ToCSSValueList(value)) | |
| data.TimingFunctionList().push_back(CSSToStyleMap::MapAnimationTimingFunction(*listValue)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyClip(StyleResolverState& state) { | |
| state.Style()->SetHasAutoClip(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyClip(StyleResolverState& state) { | |
| if (state.ParentStyle()->HasAutoClip()) | |
| state.Style()->SetHasAutoClip(); | |
| else | |
| state.Style()->SetClip(state.ParentStyle()->Clip()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyClip(StyleResolverState& state, const CSSValue& value) { | |
| if (value.IsIdentifierValue() && ToCSSIdentifierValue(value).GetValueID() == CSSValueAuto) | |
| state.Style()->SetHasAutoClip(); | |
| else | |
| state.Style()->SetClip(StyleBuilderConverter::ConvertClip(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColumnCount(StyleResolverState& state) { | |
| state.Style()->SetHasAutoColumnCount(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColumnCount(StyleResolverState& state) { | |
| if (state.ParentStyle()->HasAutoColumnCount()) | |
| state.Style()->SetHasAutoColumnCount(); | |
| else | |
| state.Style()->SetColumnCount(state.ParentStyle()->ColumnCount()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColumnCount(StyleResolverState& state, const CSSValue& value) { | |
| if (value.IsIdentifierValue() && ToCSSIdentifierValue(value).GetValueID() == CSSValueAuto) | |
| state.Style()->SetHasAutoColumnCount(); | |
| else | |
| state.Style()->SetColumnCount(ToCSSPrimitiveValue(value).ConvertTo<unsigned short>()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColumnGap(StyleResolverState& state) { | |
| state.Style()->SetHasNormalColumnGap(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColumnGap(StyleResolverState& state) { | |
| if (state.ParentStyle()->HasNormalColumnGap()) | |
| state.Style()->SetHasNormalColumnGap(); | |
| else | |
| state.Style()->SetColumnGap(state.ParentStyle()->ColumnGap()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColumnGap(StyleResolverState& state, const CSSValue& value) { | |
| if (value.IsIdentifierValue() && ToCSSIdentifierValue(value).GetValueID() == CSSValueNormal) | |
| state.Style()->SetHasNormalColumnGap(); | |
| else | |
| state.Style()->SetColumnGap(StyleBuilderConverter::ConvertComputedLength<float>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColumnWidth(StyleResolverState& state) { | |
| state.Style()->SetHasAutoColumnWidth(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColumnWidth(StyleResolverState& state) { | |
| if (state.ParentStyle()->HasAutoColumnWidth()) | |
| state.Style()->SetHasAutoColumnWidth(); | |
| else | |
| state.Style()->SetColumnWidth(state.ParentStyle()->ColumnWidth()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColumnWidth(StyleResolverState& state, const CSSValue& value) { | |
| if (value.IsIdentifierValue() && ToCSSIdentifierValue(value).GetValueID() == CSSValueAuto) | |
| state.Style()->SetHasAutoColumnWidth(); | |
| else | |
| state.Style()->SetColumnWidth(StyleBuilderConverter::ConvertComputedLength<float>(state, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyZIndex(StyleResolverState& state) { | |
| state.Style()->SetHasAutoZIndex(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyZIndex(StyleResolverState& state) { | |
| if (state.ParentStyle()->HasAutoZIndex()) | |
| state.Style()->SetHasAutoZIndex(); | |
| else | |
| state.Style()->SetZIndex(state.ParentStyle()->ZIndex()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyZIndex(StyleResolverState& state, const CSSValue& value) { | |
| if (value.IsIdentifierValue() && ToCSSIdentifierValue(value).GetValueID() == CSSValueAuto) | |
| state.Style()->SetHasAutoZIndex(); | |
| else | |
| state.Style()->SetZIndex(ToCSSPrimitiveValue(value).ConvertTo<int>()); | |
| } | |
| static bool lengthMatchesAllSides(const LengthBox& lengthBox, | |
| const Length& length) { | |
| return (lengthBox.Left() == length && | |
| lengthBox.Right() == length && | |
| lengthBox.Top() == length && | |
| lengthBox.Bottom() == length); | |
| } | |
| static bool borderImageLengthMatchesAllSides( | |
| const BorderImageLengthBox& borderImageLengthBox, | |
| const BorderImageLength& borderImageLength) { | |
| return (borderImageLengthBox.Left() == borderImageLength && | |
| borderImageLengthBox.Right() == borderImageLength && | |
| borderImageLengthBox.Top() == borderImageLength && | |
| borderImageLengthBox.Bottom() == borderImageLength); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderImageOutset(StyleResolverState& state) { | |
| const NinePieceImage& currentImage = state.Style()->BorderImage(); | |
| if (borderImageLengthMatchesAllSides(currentImage.Outset(), | |
| BorderImageLength(Length(0, kFixed)))) | |
| return; | |
| NinePieceImage image(currentImage); | |
| image.SetOutset(Length(0, kFixed)); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderImageOutset(StyleResolverState& state) { | |
| NinePieceImage image(state.Style()->BorderImage()); | |
| image.CopyOutsetFrom(state.ParentStyle()->BorderImage()); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderImageOutset(StyleResolverState& state, const CSSValue& value) { | |
| NinePieceImage image(state.Style()->BorderImage()); | |
| image.SetOutset(CSSToStyleMap::MapNinePieceImageQuad(state, value)); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderImageRepeat(StyleResolverState& state) { | |
| const NinePieceImage& currentImage = state.Style()->BorderImage(); | |
| if (currentImage.HorizontalRule() == kStretchImageRule && | |
| currentImage.VerticalRule() == kStretchImageRule) | |
| return; | |
| NinePieceImage image(currentImage); | |
| image.SetHorizontalRule(kStretchImageRule); | |
| image.SetVerticalRule(kStretchImageRule); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderImageRepeat(StyleResolverState& state) { | |
| NinePieceImage image(state.Style()->BorderImage()); | |
| image.CopyRepeatFrom(state.ParentStyle()->BorderImage()); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderImageRepeat(StyleResolverState& state, const CSSValue& value) { | |
| NinePieceImage image(state.Style()->BorderImage()); | |
| CSSToStyleMap::MapNinePieceImageRepeat(state, value, image); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderImageSlice(StyleResolverState& state) { | |
| const NinePieceImage& currentImage = state.Style()->BorderImage(); | |
| if (currentImage.Fill() == false && | |
| lengthMatchesAllSides(currentImage.ImageSlices(), Length(100, kPercent))) | |
| return; | |
| NinePieceImage image(currentImage); | |
| image.SetImageSlices(LengthBox(Length(100, kPercent), Length(100, kPercent), Length(100, kPercent), Length(100, kPercent))); | |
| image.SetFill(false); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderImageSlice(StyleResolverState& state) { | |
| NinePieceImage image(state.Style()->BorderImage()); | |
| image.CopyImageSlicesFrom(state.ParentStyle()->BorderImage()); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderImageSlice(StyleResolverState& state, const CSSValue& value) { | |
| NinePieceImage image(state.Style()->BorderImage()); | |
| CSSToStyleMap::MapNinePieceImageSlice(state, value, image); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderImageWidth(StyleResolverState& state) { | |
| const NinePieceImage& currentImage = state.Style()->BorderImage(); | |
| if (borderImageLengthMatchesAllSides(currentImage.BorderSlices(), | |
| BorderImageLength(1.0))) | |
| return; | |
| NinePieceImage image(currentImage); | |
| image.SetBorderSlices(1.0); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderImageWidth(StyleResolverState& state) { | |
| NinePieceImage image(state.Style()->BorderImage()); | |
| image.CopyBorderSlicesFrom(state.ParentStyle()->BorderImage()); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderImageWidth(StyleResolverState& state, const CSSValue& value) { | |
| NinePieceImage image(state.Style()->BorderImage()); | |
| image.SetBorderSlices(CSSToStyleMap::MapNinePieceImageQuad(state, value)); | |
| state.Style()->SetBorderImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskBoxImageOutset(StyleResolverState& state) { | |
| const NinePieceImage& currentImage = state.Style()->MaskBoxImage(); | |
| if (borderImageLengthMatchesAllSides(currentImage.Outset(), | |
| BorderImageLength(Length(0, kFixed)))) | |
| return; | |
| NinePieceImage image(currentImage); | |
| image.SetOutset(Length(0, kFixed)); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskBoxImageOutset(StyleResolverState& state) { | |
| NinePieceImage image(state.Style()->MaskBoxImage()); | |
| image.CopyOutsetFrom(state.ParentStyle()->MaskBoxImage()); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskBoxImageOutset(StyleResolverState& state, const CSSValue& value) { | |
| NinePieceImage image(state.Style()->MaskBoxImage()); | |
| image.SetOutset(CSSToStyleMap::MapNinePieceImageQuad(state, value)); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskBoxImageRepeat(StyleResolverState& state) { | |
| const NinePieceImage& currentImage = state.Style()->MaskBoxImage(); | |
| if (currentImage.HorizontalRule() == kStretchImageRule && | |
| currentImage.VerticalRule() == kStretchImageRule) | |
| return; | |
| NinePieceImage image(currentImage); | |
| image.SetHorizontalRule(kStretchImageRule); | |
| image.SetVerticalRule(kStretchImageRule); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskBoxImageRepeat(StyleResolverState& state) { | |
| NinePieceImage image(state.Style()->MaskBoxImage()); | |
| image.CopyRepeatFrom(state.ParentStyle()->MaskBoxImage()); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskBoxImageRepeat(StyleResolverState& state, const CSSValue& value) { | |
| NinePieceImage image(state.Style()->MaskBoxImage()); | |
| CSSToStyleMap::MapNinePieceImageRepeat(state, value, image); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskBoxImageSlice(StyleResolverState& state) { | |
| const NinePieceImage& currentImage = state.Style()->MaskBoxImage(); | |
| // Masks have a different initial value for slices. Preserve the value of 0 | |
| // for backwards compatibility. | |
| if (currentImage.Fill() == true && | |
| lengthMatchesAllSides(currentImage.ImageSlices(), Length(0, kFixed))) | |
| return; | |
| NinePieceImage image(currentImage); | |
| image.SetImageSlices(LengthBox(Length(0, kFixed), Length(0, kFixed), Length(0, kFixed), Length(0, kFixed))); | |
| image.SetFill(true); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskBoxImageSlice(StyleResolverState& state) { | |
| NinePieceImage image(state.Style()->MaskBoxImage()); | |
| image.CopyImageSlicesFrom(state.ParentStyle()->MaskBoxImage()); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskBoxImageSlice(StyleResolverState& state, const CSSValue& value) { | |
| NinePieceImage image(state.Style()->MaskBoxImage()); | |
| CSSToStyleMap::MapNinePieceImageSlice(state, value, image); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskBoxImageWidth(StyleResolverState& state) { | |
| const NinePieceImage& currentImage = state.Style()->MaskBoxImage(); | |
| // Masks have a different initial value for widths. Preserve the value of | |
| // 'auto' for backwards compatibility. | |
| if (borderImageLengthMatchesAllSides(currentImage.BorderSlices(), | |
| BorderImageLength(Length(kAuto)))) | |
| return; | |
| NinePieceImage image(currentImage); | |
| image.SetBorderSlices(Length(kAuto)); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskBoxImageWidth(StyleResolverState& state) { | |
| NinePieceImage image(state.Style()->MaskBoxImage()); | |
| image.CopyBorderSlicesFrom(state.ParentStyle()->MaskBoxImage()); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskBoxImageWidth(StyleResolverState& state, const CSSValue& value) { | |
| NinePieceImage image(state.Style()->MaskBoxImage()); | |
| image.SetBorderSlices(CSSToStyleMap::MapNinePieceImageQuad(state, value)); | |
| state.Style()->SetMaskBoxImage(image); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderImageSource(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetBorderImageSource(state.GetStyleImage(CSSPropertyBorderImageSource, value)); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskBoxImageSource(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->SetMaskBoxImageSource(state.GetStyleImage(CSSPropertyWebkitMaskBoxImageSource, value)); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundColor(StyleResolverState& state) { | |
| StyleColor color = ComputedStyle::InitialBackgroundColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBackgroundColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBackgroundColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->BackgroundColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBackgroundColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBackgroundColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBackgroundColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkBackgroundColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderBottomColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderBottomColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBorderBottomColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderBottomColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->BorderBottomColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderBottomColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBorderBottomColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderBottomColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderBottomColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkBorderBottomColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderLeftColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderLeftColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBorderLeftColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderLeftColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->BorderLeftColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderLeftColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBorderLeftColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderLeftColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderLeftColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkBorderLeftColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderRightColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderRightColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBorderRightColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderRightColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->BorderRightColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderRightColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBorderRightColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderRightColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderRightColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkBorderRightColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBorderTopColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderTopColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBorderTopColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBorderTopColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->BorderTopColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderTopColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkBorderTopColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBorderTopColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetBorderTopColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkBorderTopColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyOutlineColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetOutlineColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkOutlineColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyOutlineColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->OutlineColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetOutlineColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkOutlineColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyOutlineColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetOutlineColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkOutlineColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyTextDecorationColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextDecorationColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkTextDecorationColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyTextDecorationColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->TextDecorationColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextDecorationColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkTextDecorationColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyTextDecorationColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextDecorationColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkTextDecorationColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyColumnRuleColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetColumnRuleColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkColumnRuleColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyColumnRuleColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->ColumnRuleColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetColumnRuleColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkColumnRuleColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyColumnRuleColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetColumnRuleColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkColumnRuleColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTextEmphasisColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextEmphasisColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkTextEmphasisColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTextEmphasisColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->TextEmphasisColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextEmphasisColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkTextEmphasisColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTextEmphasisColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextEmphasisColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkTextEmphasisColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTextFillColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextFillColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkTextFillColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTextFillColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->TextFillColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextFillColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkTextFillColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTextFillColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextFillColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkTextFillColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitTextStrokeColor(StyleResolverState& state) { | |
| StyleColor color = StyleColor::CurrentColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextStrokeColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkTextStrokeColor(color); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitTextStrokeColor(StyleResolverState& state) { | |
| // Visited link style can never explicitly inherit from parent visited link | |
| // style so no separate getters are needed. | |
| StyleColor color = state.ParentStyle()->TextStrokeColor(); | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextStrokeColor(color); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) | |
| state.Style()->SetVisitedLinkTextStrokeColor(color); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitTextStrokeColor(StyleResolverState& state, const CSSValue& value) | |
| { | |
| if (state.ApplyPropertyToRegularStyle()) | |
| state.Style()->SetTextStrokeColor(StyleBuilderConverter::ConvertStyleColor(state, value)); | |
| if (state.ApplyPropertyToVisitedLinkStyle()) { | |
| state.Style()->SetVisitedLinkTextStrokeColor( | |
| StyleBuilderConverter::ConvertStyleColor(state, value, true)); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyCounterIncrement(StyleResolverState& state) { | |
| state.Style()->ClearIncrementDirectives(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyCounterIncrement(StyleResolverState& state) { | |
| const CounterDirectiveMap* parentMap = state.ParentStyle()->GetCounterDirectives(); | |
| if (!parentMap) | |
| return; | |
| CounterDirectiveMap& map = state.Style()->AccessCounterDirectives(); | |
| DCHECK(!parentMap->IsEmpty()); | |
| typedef CounterDirectiveMap::const_iterator Iterator; | |
| Iterator end = parentMap->end(); | |
| for (Iterator it = parentMap->begin(); it != end; ++it) { | |
| CounterDirectives& directives = map.insert(it->key, CounterDirectives()).stored_value->value; | |
| directives.InheritIncrement(it->value); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyCounterIncrement(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->ClearIncrementDirectives(); | |
| if (!value.IsValueList()) { | |
| DCHECK(value.IsIdentifierValue()); | |
| DCHECK_EQ(ToCSSIdentifierValue(value).GetValueID(), CSSValueNone); | |
| return; | |
| } | |
| CounterDirectiveMap& map = state.Style()->AccessCounterDirectives(); | |
| const CSSValueList& list = ToCSSValueList(value); | |
| for (size_t i = 0; i < list.length(); ++i) { | |
| const CSSValuePair& pair = ToCSSValuePair(list.Item(i)); | |
| AtomicString identifier(ToCSSCustomIdentValue(pair.First()).Value()); | |
| int value = ToCSSPrimitiveValue(pair.Second()).GetIntValue(); | |
| CounterDirectives& directives = | |
| map.insert(identifier, CounterDirectives()).stored_value->value; | |
| directives.AddIncrementValue(value); | |
| } | |
| DCHECK(!map.IsEmpty()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyCounterReset(StyleResolverState& state) { | |
| state.Style()->ClearResetDirectives(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyCounterReset(StyleResolverState& state) { | |
| const CounterDirectiveMap* parentMap = state.ParentStyle()->GetCounterDirectives(); | |
| if (!parentMap) | |
| return; | |
| CounterDirectiveMap& map = state.Style()->AccessCounterDirectives(); | |
| DCHECK(!parentMap->IsEmpty()); | |
| typedef CounterDirectiveMap::const_iterator Iterator; | |
| Iterator end = parentMap->end(); | |
| for (Iterator it = parentMap->begin(); it != end; ++it) { | |
| CounterDirectives& directives = map.insert(it->key, CounterDirectives()).stored_value->value; | |
| directives.InheritReset(it->value); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyCounterReset(StyleResolverState& state, const CSSValue& value) { | |
| state.Style()->ClearResetDirectives(); | |
| if (!value.IsValueList()) { | |
| DCHECK(value.IsIdentifierValue()); | |
| DCHECK_EQ(ToCSSIdentifierValue(value).GetValueID(), CSSValueNone); | |
| return; | |
| } | |
| CounterDirectiveMap& map = state.Style()->AccessCounterDirectives(); | |
| const CSSValueList& list = ToCSSValueList(value); | |
| for (size_t i = 0; i < list.length(); ++i) { | |
| const CSSValuePair& pair = ToCSSValuePair(list.Item(i)); | |
| AtomicString identifier(ToCSSCustomIdentValue(pair.First()).Value()); | |
| int value = ToCSSPrimitiveValue(pair.Second()).GetIntValue(); | |
| CounterDirectives& directives = | |
| map.insert(identifier, CounterDirectives()).stored_value->value; | |
| directives.SetResetValue(value); | |
| } | |
| DCHECK(!map.IsEmpty()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundAttachment(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetAttachment(FillLayer::InitialFillAttachment(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearAttachment(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundAttachment(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsAttachmentSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetAttachment(currParent->Attachment()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearAttachment(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundAttachment(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillAttachment(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillAttachment(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearAttachment(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundBlendMode(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetBlendMode(FillLayer::InitialFillBlendMode(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearBlendMode(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundBlendMode(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsBlendModeSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetBlendMode(currParent->BlendMode()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearBlendMode(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundBlendMode(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillBlendMode(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillBlendMode(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearBlendMode(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundClip(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetClip(FillLayer::InitialFillClip(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearClip(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundClip(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsClipSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetClip(currParent->Clip()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearClip(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundClip(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillClip(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillClip(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearClip(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundImage(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetImage(FillLayer::InitialFillImage(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearImage(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundImage(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsImageSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetImage(currParent->GetImage()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearImage(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundImage(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillImage(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillImage(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearImage(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundOrigin(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetOrigin(FillLayer::InitialFillOrigin(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearOrigin(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundOrigin(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsOriginSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetOrigin(currParent->Origin()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearOrigin(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundOrigin(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillOrigin(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillOrigin(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearOrigin(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundPositionX(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetXPosition(FillLayer::InitialFillXPosition(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearXPosition(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundPositionX(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsXPositionSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetXPosition(currParent->XPosition()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearXPosition(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundPositionX(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillXPosition(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillXPosition(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearXPosition(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundPositionY(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetYPosition(FillLayer::InitialFillYPosition(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearYPosition(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundPositionY(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsYPositionSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetYPosition(currParent->YPosition()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearYPosition(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundPositionY(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillYPosition(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillYPosition(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearYPosition(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundRepeatX(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetRepeatX(FillLayer::InitialFillRepeatX(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearRepeatX(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundRepeatX(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsRepeatXSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetRepeatX(currParent->RepeatX()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearRepeatX(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundRepeatX(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillRepeatX(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillRepeatX(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearRepeatX(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundRepeatY(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetRepeatY(FillLayer::InitialFillRepeatY(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearRepeatY(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundRepeatY(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsRepeatYSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetRepeatY(currParent->RepeatY()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearRepeatY(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundRepeatY(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillRepeatY(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillRepeatY(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearRepeatY(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyBackgroundSize(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| currChild->SetSize(FillLayer::InitialFillSize(kBackgroundFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearSize(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyBackgroundSize(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->BackgroundLayers(); | |
| while (currParent && currParent->IsSizeSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetSize(currParent->size()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearSize(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyBackgroundSize(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessBackgroundLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillSize(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillSize(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearSize(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyMaskSourceType(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetMaskSourceType(FillLayer::InitialFillMaskSourceType(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearMaskSourceType(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyMaskSourceType(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsMaskSourceTypeSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetMaskSourceType(currParent->MaskSourceType()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearMaskSourceType(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyMaskSourceType(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillMaskSourceType(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillMaskSourceType(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearMaskSourceType(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskClip(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetClip(FillLayer::InitialFillClip(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearClip(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskClip(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsClipSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetClip(currParent->Clip()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearClip(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskClip(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillClip(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillClip(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearClip(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskComposite(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetComposite(FillLayer::InitialFillComposite(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearComposite(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskComposite(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsCompositeSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetComposite(currParent->Composite()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearComposite(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskComposite(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillComposite(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillComposite(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearComposite(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskImage(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetImage(FillLayer::InitialFillImage(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearImage(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskImage(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsImageSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetImage(currParent->GetImage()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearImage(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskImage(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillImage(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillImage(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearImage(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskOrigin(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetOrigin(FillLayer::InitialFillOrigin(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearOrigin(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskOrigin(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsOriginSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetOrigin(currParent->Origin()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearOrigin(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskOrigin(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillOrigin(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillOrigin(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearOrigin(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskPositionX(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetXPosition(FillLayer::InitialFillXPosition(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearXPosition(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskPositionX(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsXPositionSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetXPosition(currParent->XPosition()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearXPosition(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskPositionX(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillXPosition(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillXPosition(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearXPosition(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskPositionY(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetYPosition(FillLayer::InitialFillYPosition(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearYPosition(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskPositionY(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsYPositionSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetYPosition(currParent->YPosition()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearYPosition(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskPositionY(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillYPosition(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillYPosition(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearYPosition(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskRepeatX(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetRepeatX(FillLayer::InitialFillRepeatX(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearRepeatX(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskRepeatX(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsRepeatXSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetRepeatX(currParent->RepeatX()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearRepeatX(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskRepeatX(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillRepeatX(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillRepeatX(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearRepeatX(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskRepeatY(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetRepeatY(FillLayer::InitialFillRepeatY(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearRepeatY(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskRepeatY(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsRepeatYSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetRepeatY(currParent->RepeatY()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearRepeatY(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskRepeatY(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillRepeatY(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillRepeatY(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearRepeatY(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyWebkitMaskSize(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| currChild->SetSize(FillLayer::InitialFillSize(kMaskFillLayer)); | |
| for (currChild = currChild->Next(); currChild; currChild = currChild->Next()) | |
| currChild->ClearSize(); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyWebkitMaskSize(StyleResolverState& state) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| const FillLayer* currParent = &state.ParentStyle()->MaskLayers(); | |
| while (currParent && currParent->IsSizeSet()) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| currChild->SetSize(currParent->size()); | |
| prevChild = currChild; | |
| currChild = prevChild->Next(); | |
| currParent = currParent->Next(); | |
| } | |
| while (currChild) { | |
| // Reset any remaining layers to not have the property set. | |
| currChild->ClearSize(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyWebkitMaskSize(StyleResolverState& state, const CSSValue& value) { | |
| FillLayer* currChild = &state.Style()->AccessMaskLayers(); | |
| FillLayer* prevChild = 0; | |
| if (value.IsValueList() && !value.IsImageSetValue()) { | |
| // Walk each value and put it into a layer, creating new layers as needed. | |
| const CSSValueList& valueList = ToCSSValueList(value); | |
| for (unsigned int i = 0; i < valueList.length(); i++) { | |
| if (!currChild) | |
| currChild = prevChild->EnsureNext(); | |
| CSSToStyleMap::MapFillSize(state, currChild, valueList.Item(i)); | |
| prevChild = currChild; | |
| currChild = currChild->Next(); | |
| } | |
| } else { | |
| CSSToStyleMap::MapFillSize(state, currChild, value); | |
| currChild = currChild->Next(); | |
| } | |
| while (currChild) { | |
| // Reset all remaining layers to not have the property set. | |
| currChild->ClearSize(); | |
| currChild = currChild->Next(); | |
| } | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridTemplateColumns(StyleResolverState& state) { | |
| state.Style()->SetGridTemplateColumns(ComputedStyle::InitialGridTemplateColumns()); | |
| state.Style()->SetNamedGridColumnLines(ComputedStyle::InitialNamedGridColumnLines()); | |
| state.Style()->SetOrderedNamedGridColumnLines(ComputedStyle::InitialOrderedNamedGridColumnLines()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridTemplateColumns(StyleResolverState& state) { | |
| state.Style()->SetGridTemplateColumns(state.ParentStyle()->GridTemplateColumns()); | |
| state.Style()->SetNamedGridColumnLines(state.ParentStyle()->NamedGridColumnLines()); | |
| state.Style()->SetOrderedNamedGridColumnLines(state.ParentStyle()->OrderedNamedGridColumnLines()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridTemplateColumns(StyleResolverState& state, const CSSValue& value) { | |
| Vector<GridTrackSize> trackSizes; | |
| Vector<GridTrackSize> autoRepeatTrackSizes; | |
| NamedGridLinesMap namedGridLines; | |
| OrderedNamedGridLines orderedNamedGridLines; | |
| NamedGridLinesMap autoRepeatNamedGridLines; | |
| OrderedNamedGridLines autoRepeatOrderedNamedGridLines; | |
| AutoRepeatType autoRepeatType = ComputedStyle::InitialGridAutoRepeatType(); | |
| size_t autoRepeatInsertionPoint = | |
| ComputedStyle::InitialGridAutoRepeatInsertionPoint(); | |
| StyleBuilderConverter::ConvertGridTrackList( | |
| value, trackSizes, namedGridLines, orderedNamedGridLines, | |
| autoRepeatTrackSizes, autoRepeatNamedGridLines, | |
| autoRepeatOrderedNamedGridLines, autoRepeatInsertionPoint, | |
| autoRepeatType, state); | |
| const NamedGridAreaMap& namedGridAreas = state.Style()->NamedGridArea(); | |
| if (!namedGridAreas.IsEmpty()) { | |
| StyleBuilderConverter::CreateImplicitNamedGridLinesFromGridArea( | |
| namedGridAreas, namedGridLines, kForColumns); | |
| } | |
| state.Style()->SetGridTemplateColumns(trackSizes); | |
| state.Style()->SetNamedGridColumnLines(namedGridLines); | |
| state.Style()->SetOrderedNamedGridColumnLines(orderedNamedGridLines); | |
| state.Style()->SetGridAutoRepeatColumns(autoRepeatTrackSizes); | |
| state.Style()->SetGridAutoRepeatColumnsInsertionPoint( | |
| autoRepeatInsertionPoint); | |
| state.Style()->SetAutoRepeatNamedGridColumnLines(autoRepeatNamedGridLines); | |
| state.Style()->SetAutoRepeatOrderedNamedGridColumnLines( | |
| autoRepeatOrderedNamedGridLines); | |
| state.Style()->SetGridAutoRepeatColumnsType(autoRepeatType); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyGridTemplateRows(StyleResolverState& state) { | |
| state.Style()->SetGridTemplateRows(ComputedStyle::InitialGridTemplateRows()); | |
| state.Style()->SetNamedGridRowLines(ComputedStyle::InitialNamedGridRowLines()); | |
| state.Style()->SetOrderedNamedGridRowLines(ComputedStyle::InitialOrderedNamedGridRowLines()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyGridTemplateRows(StyleResolverState& state) { | |
| state.Style()->SetGridTemplateRows(state.ParentStyle()->GridTemplateRows()); | |
| state.Style()->SetNamedGridRowLines(state.ParentStyle()->NamedGridRowLines()); | |
| state.Style()->SetOrderedNamedGridRowLines(state.ParentStyle()->OrderedNamedGridRowLines()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyGridTemplateRows(StyleResolverState& state, const CSSValue& value) { | |
| Vector<GridTrackSize> trackSizes; | |
| Vector<GridTrackSize> autoRepeatTrackSizes; | |
| NamedGridLinesMap namedGridLines; | |
| OrderedNamedGridLines orderedNamedGridLines; | |
| NamedGridLinesMap autoRepeatNamedGridLines; | |
| OrderedNamedGridLines autoRepeatOrderedNamedGridLines; | |
| AutoRepeatType autoRepeatType = ComputedStyle::InitialGridAutoRepeatType(); | |
| size_t autoRepeatInsertionPoint = | |
| ComputedStyle::InitialGridAutoRepeatInsertionPoint(); | |
| StyleBuilderConverter::ConvertGridTrackList( | |
| value, trackSizes, namedGridLines, orderedNamedGridLines, | |
| autoRepeatTrackSizes, autoRepeatNamedGridLines, | |
| autoRepeatOrderedNamedGridLines, autoRepeatInsertionPoint, | |
| autoRepeatType, state); | |
| const NamedGridAreaMap& namedGridAreas = state.Style()->NamedGridArea(); | |
| if (!namedGridAreas.IsEmpty()) { | |
| StyleBuilderConverter::CreateImplicitNamedGridLinesFromGridArea( | |
| namedGridAreas, namedGridLines, kForRows); | |
| } | |
| state.Style()->SetGridTemplateRows(trackSizes); | |
| state.Style()->SetNamedGridRowLines(namedGridLines); | |
| state.Style()->SetOrderedNamedGridRowLines(orderedNamedGridLines); | |
| state.Style()->SetGridAutoRepeatRows(autoRepeatTrackSizes); | |
| state.Style()->SetGridAutoRepeatRowsInsertionPoint( | |
| autoRepeatInsertionPoint); | |
| state.Style()->SetAutoRepeatNamedGridRowLines(autoRepeatNamedGridLines); | |
| state.Style()->SetAutoRepeatOrderedNamedGridRowLines( | |
| autoRepeatOrderedNamedGridLines); | |
| state.Style()->SetGridAutoRepeatRowsType(autoRepeatType); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyFill(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetFillPaint( | |
| SVGComputedStyle::InitialFillPaintType(), | |
| SVGComputedStyle::InitialFillPaintColor(), | |
| SVGComputedStyle::InitialFillPaintUri(), | |
| state.ApplyPropertyToRegularStyle(), | |
| state.ApplyPropertyToVisitedLinkStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyFill(StyleResolverState& state) { | |
| const SVGComputedStyle& svgParentStyle = state.ParentStyle()->SvgStyle(); | |
| state.Style()->AccessSVGStyle().SetFillPaint( | |
| svgParentStyle.FillPaintType(), | |
| svgParentStyle.FillPaintColor(), | |
| svgParentStyle.FillPaintUri(), | |
| state.ApplyPropertyToRegularStyle(), | |
| state.ApplyPropertyToVisitedLinkStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyFill(StyleResolverState& state, const CSSValue& value) { | |
| const CSSValue* localValue = &value; | |
| String url; | |
| if (value.IsValueList()) { | |
| const CSSValueList& list = ToCSSValueList(value); | |
| DCHECK_EQ(list.length(), 2U); | |
| url = ToCSSURIValue(list.Item(0)).Value(); | |
| localValue = &list.Item(1); | |
| } | |
| Color color; | |
| SVGPaintType paintType = SVG_PAINTTYPE_RGBCOLOR; | |
| if (localValue->IsURIValue()) { | |
| paintType = SVG_PAINTTYPE_URI; | |
| url = ToCSSURIValue(localValue)->Value(); | |
| } else if (localValue->IsIdentifierValue() && | |
| ToCSSIdentifierValue(localValue)->GetValueID() == CSSValueNone) { | |
| paintType = url.IsEmpty() ? SVG_PAINTTYPE_NONE : SVG_PAINTTYPE_URI_NONE; | |
| } else if (localValue->IsIdentifierValue() && | |
| ToCSSIdentifierValue(localValue)->GetValueID() == CSSValueCurrentcolor) { | |
| color = state.Style()->GetColor(); | |
| paintType = url.IsEmpty() ? SVG_PAINTTYPE_CURRENTCOLOR | |
| : SVG_PAINTTYPE_URI_CURRENTCOLOR; | |
| } else { | |
| color = StyleBuilderConverter::ConvertColor(state, *localValue); | |
| paintType = url.IsEmpty() ? SVG_PAINTTYPE_RGBCOLOR | |
| : SVG_PAINTTYPE_URI_RGBCOLOR; | |
| } | |
| state.Style()->AccessSVGStyle().SetFillPaint(paintType, color, url, | |
| state.ApplyPropertyToRegularStyle(), | |
| state.ApplyPropertyToVisitedLinkStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInitialCSSPropertyStroke(StyleResolverState& state) { | |
| state.Style()->AccessSVGStyle().SetStrokePaint( | |
| SVGComputedStyle::InitialStrokePaintType(), | |
| SVGComputedStyle::InitialStrokePaintColor(), | |
| SVGComputedStyle::InitialStrokePaintUri(), | |
| state.ApplyPropertyToRegularStyle(), | |
| state.ApplyPropertyToVisitedLinkStyle()); | |
| } | |
| void StyleBuilderFunctions::applyInheritCSSPropertyStroke(StyleResolverState& state) { | |
| const SVGComputedStyle& svgParentStyle = state.ParentStyle()->SvgStyle(); | |
| state.Style()->AccessSVGStyle().SetStrokePaint( | |
| svgParentStyle.StrokePaintType(), | |
| svgParentStyle.StrokePaintColor(), | |
| svgParentStyle.StrokePaintUri(), | |
| state.ApplyPropertyToRegularStyle(), | |
| state.ApplyPropertyToVisitedLinkStyle()); | |
| } | |
| void StyleBuilderFunctions::applyValueCSSPropertyStroke(StyleResolverState& state, const CSSValue& value) { | |
| const CSSValue* localValue = &value; | |
| String url; | |
| if (value.IsValueList()) { | |
| const CSSValueList& list = ToCSSValueList(value); | |
| DCHECK_EQ(list.length(), 2U); | |
| url = ToCSSURIValue(list.Item(0)).Value(); | |
| localValue = &list.Item(1); | |
| } | |
| Color color; | |
| SVGPaintType paintType = SVG_PAINTTYPE_RGBCOLOR; | |
| if (localValue->IsURIValue()) { | |
| paintType = SVG_PAINTTYPE_URI; | |
| url = ToCSSURIValue(localValue)->Value(); | |
| } else if (localValue->IsIdentifierValue() && | |
| ToCSSIdentifierValue(localValue)->GetValueID() == CSSValueNone) { | |
| paintType = url.IsEmpty() ? SVG_PAINTTYPE_NONE : SVG_PAINTTYPE_URI_NONE; | |
| } else if (localValue->IsIdentifierValue() && | |
| ToCSSIdentifierValue(localValue)->GetValueID() == CSSValueCurrentcolor) { | |
| color = state.Style()->GetColor(); | |
| paintType = url.IsEmpty() ? SVG_PAINTTYPE_CURRENTCOLOR | |
| : SVG_PAINTTYPE_URI_CURRENTCOLOR; | |
| } else { | |
| color = StyleBuilderConverter::ConvertColor(state, *localValue); | |
| paintType = url.IsEmpty() ? SVG_PAINTTYPE_RGBCOLOR | |
| : SVG_PAINTTYPE_URI_RGBCOLOR; | |
| } | |
| state.Style()->AccessSVGStyle().SetStrokePaint(paintType, color, url, | |
| state.ApplyPropertyToRegularStyle(), | |
| state.ApplyPropertyToVisitedLinkStyle()); | |
| } | |
| } // namespace blink |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment