| Index: third_party/WebKit/Source/build/scripts/templates/CSSPropertyMetadata.cpp.tmpl
|
| diff --git a/third_party/WebKit/Source/build/scripts/templates/CSSPropertyMetadata.cpp.tmpl b/third_party/WebKit/Source/build/scripts/templates/CSSPropertyMetadata.cpp.tmpl
|
| index a7866727bca4196398aea782fbe058f3d40b9545..06316f79fa36fac468e02e00791e693d32513835 100644
|
| --- a/third_party/WebKit/Source/build/scripts/templates/CSSPropertyMetadata.cpp.tmpl
|
| +++ b/third_party/WebKit/Source/build/scripts/templates/CSSPropertyMetadata.cpp.tmpl
|
| @@ -3,6 +3,7 @@
|
|
|
| #include "core/css/CSSPropertyMetadata.h"
|
|
|
| +#include "core/css/CSSValuePool.h"
|
| #include "platform/RuntimeEnabledFeatures.h"
|
| #include <bitset>
|
|
|
| @@ -67,4 +68,203 @@ bool CSSPropertyMetadata::isDescriptorOnly(CSSPropertyID property)
|
| return property >= {{descriptors[0].property_id}} && property <= {{descriptors[-1].property_id}};
|
| }
|
|
|
| +CSSValue* CSSPropertyMetadata::initialValue(CSSPropertyID property)
|
| +{
|
| + CSSValue* value = nullptr;
|
| + switch (property) {
|
| + case CSSPropertyOutlineColor:
|
| + case CSSPropertyWebkitTextFillColor:
|
| + case CSSPropertyWebkitBorderAfterColor:
|
| + case CSSPropertyWebkitBorderBeforeColor:
|
| + case CSSPropertyWebkitTextEmphasisColor:
|
| + case CSSPropertyTextDecorationColor:
|
| + case CSSPropertyColumnRuleColor:
|
| + case CSSPropertyBorderColor:
|
| + case CSSPropertyBorderTopColor:
|
| + case CSSPropertyBorderRightColor:
|
| + case CSSPropertyBorderBottomColor:
|
| + case CSSPropertyBorderLeftColor: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, currentColor, (new CSSPrimitiveValue(CSSValueCurrentcolor)));
|
| + value = currentColor;
|
| + break;
|
| + }
|
| + case CSSPropertyOutlineWidth:
|
| + case CSSPropertyColumnRuleWidth:
|
| + case CSSPropertyWebkitBorderAfterWidth:
|
| + case CSSPropertyWebkitBorderBeforeWidth:
|
| + case CSSPropertyBorderWidth:
|
| + case CSSPropertyBorderTopWidth:
|
| + case CSSPropertyBorderRightWidth:
|
| + case CSSPropertyBorderBottomWidth:
|
| + case CSSPropertyBorderLeftWidth: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, medium, (new CSSPrimitiveValue(CSSValueMedium)));
|
| + value = medium;
|
| + break;
|
| + }
|
| + case CSSPropertyAnimationName:
|
| + case CSSPropertyAnimationFillMode:
|
| + case CSSPropertyGridTemplateColumns:
|
| + case CSSPropertyGridTemplateRows:
|
| + case CSSPropertyGridTemplateAreas:
|
| + case CSSPropertyWebkitMaskImage:
|
| + case CSSPropertyBackgroundImage:
|
| + case CSSPropertyOutlineStyle:
|
| + case CSSPropertyColumnRuleStyle:
|
| + case CSSPropertyWebkitTextEmphasisStyle:
|
| + case CSSPropertyBorderStyle:
|
| + case CSSPropertyBorderTopStyle:
|
| + case CSSPropertyBorderRightStyle:
|
| + case CSSPropertyBorderBottomStyle:
|
| + case CSSPropertyBorderLeftStyle:
|
| + case CSSPropertyCounterReset:
|
| + case CSSPropertyCounterIncrement:
|
| + case CSSPropertyBorderImageSource:
|
| + case CSSPropertyWebkitMaskBoxImageSource:
|
| + case CSSPropertyListStyleImage: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, none, (new CSSPrimitiveValue(CSSValueNone)));
|
| + value = none;
|
| + break;
|
| + }
|
| + case CSSPropertyWebkitMaskRepeatX:
|
| + case CSSPropertyWebkitMaskRepeatY:
|
| + case CSSPropertyBackgroundRepeatX:
|
| + case CSSPropertyBackgroundRepeatY:
|
| + case CSSPropertyBackgroundRepeat: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, repeat, (new CSSPrimitiveValue(CSSValueRepeat)));
|
| + value = repeat;
|
| + break;
|
| + }
|
| + case CSSPropertyWebkitMaskBoxImageRepeat:
|
| + case CSSPropertyBorderImageRepeat: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, stretch, (new CSSPrimitiveValue(CSSValueStretch)));
|
| + value = stretch;
|
| + break;
|
| + }
|
| + case CSSPropertyAnimationIterationCount:
|
| + case CSSPropertyWebkitMaskBoxImageWidth:
|
| + case CSSPropertyBorderImageWidth: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, imageWidth, (new CSSPrimitiveValue(1, CSSPrimitiveValue::UnitType::Integer)));
|
| + value = imageWidth;
|
| + break;
|
| + }
|
| + case CSSPropertyWebkitMaskBoxImageSlice:
|
| + case CSSPropertyBorderImageSlice: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, imageSlice, (new CSSPrimitiveValue(100, CSSPrimitiveValue::UnitType::Percentage)));
|
| + value = imageSlice;
|
| + break;
|
| + }
|
| + case CSSPropertyWebkitMaskPositionX:
|
| + case CSSPropertyWebkitMaskPositionY:
|
| + case CSSPropertyBackgroundPositionX:
|
| + case CSSPropertyBackgroundPositionY: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, backgroundPosition, (new CSSPrimitiveValue(0, CSSPrimitiveValue::UnitType::Percentage)));
|
| + value = backgroundPosition;
|
| + break;
|
| + }
|
| + case CSSPropertyTransitionDelay:
|
| + case CSSPropertyTransitionDuration:
|
| + case CSSPropertyAnimationDelay:
|
| + case CSSPropertyAnimationDuration: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, seconds, (new CSSPrimitiveValue(0, CSSPrimitiveValue::UnitType::Seconds)));
|
| + value = seconds;
|
| + break;
|
| + }
|
| + case CSSPropertyTransitionTimingFunction:
|
| + case CSSPropertyAnimationTimingFunction: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, ease, (new CSSPrimitiveValue(CSSValueEase)));
|
| + value = ease;
|
| + break;
|
| + }
|
| + case CSSPropertyAnimationPlayState: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, running, (new CSSPrimitiveValue(CSSValueRunning)));
|
| + value = running;
|
| + break;
|
| + }
|
| + case CSSPropertyAnimationDirection: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, normal, (new CSSPrimitiveValue(CSSValueNormal)));
|
| + value = normal;
|
| + break;
|
| + }
|
| + case CSSPropertyTransitionProperty: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, all, (new CSSPrimitiveValue(CSSValueAll)));
|
| + value = all;
|
| + break;
|
| + }
|
| + case CSSPropertyListStyleType: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, disc, (new CSSPrimitiveValue(CSSValueDisc)));
|
| + value = disc;
|
| + break;
|
| + }
|
| + case CSSPropertyListStylePosition: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, listStylePosition, (new CSSPrimitiveValue(CSSValueOutside)));
|
| + value = listStylePosition;
|
| + break;
|
| + }
|
| + case CSSPropertyTextDecorationStyle: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, decorationStyle, (new CSSPrimitiveValue(CSSValueSolid)));
|
| + value = decorationStyle;
|
| + break;
|
| + }
|
| + case CSSPropertyWebkitTextStrokeColor: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, textStrokeColor, (CSSColorValue::create(Color::black)));
|
| + value = textStrokeColor;
|
| + break;
|
| + }
|
| + case CSSPropertyGridColumnGap:
|
| + case CSSPropertyGridRowGap:
|
| + case CSSPropertyWebkitMaskBoxImageOutset:
|
| + case CSSPropertyBorderImageOutset:
|
| + case CSSPropertyWebkitTextStrokeWidth: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, textStrokeWidth, (new CSSPrimitiveValue(0, CSSPrimitiveValue::UnitType::Integer)));
|
| + value = textStrokeWidth;
|
| + break;
|
| + }
|
| + case CSSPropertyGridAutoFlow:
|
| + case CSSPropertyFlexDirection: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, flexDirection, (new CSSPrimitiveValue(CSSValueRow)));
|
| + value = flexDirection;
|
| + break;
|
| + }
|
| + case CSSPropertyFlexWrap: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, flexWrap, (new CSSPrimitiveValue(CSSValueNowrap)));
|
| + value = flexWrap;
|
| + break;
|
| + }
|
| + case CSSPropertyGridAutoColumns:
|
| + case CSSPropertyGridAutoRows:
|
| + case CSSPropertyWebkitMaskSize:
|
| + case CSSPropertyBackgroundSize: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, backgroundSize, (new CSSPrimitiveValue(CSSValueAuto)));
|
| + value = backgroundSize;
|
| + break;
|
| + }
|
| + case CSSPropertyBackgroundAttachment: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, backgroundAttachment, (new CSSPrimitiveValue(CSSValueScroll)));
|
| + value = backgroundAttachment;
|
| + break;
|
| + }
|
| + case CSSPropertyWebkitMaskClip:
|
| + case CSSPropertyBackgroundClip: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, backgroundClip, (new CSSPrimitiveValue(CSSValueBorderBox)));
|
| + value = backgroundClip;
|
| + break;
|
| + }
|
| + case CSSPropertyWebkitMaskOrigin:
|
| + case CSSPropertyBackgroundOrigin: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, backgroundOrigin, (new CSSPrimitiveValue(CSSValuePaddingBox)));
|
| + value = backgroundOrigin;
|
| + break;
|
| + }
|
| + case CSSPropertyBackgroundColor: {
|
| + DEFINE_STATIC_LOCAL(CSSValue*, backgroundColor, (new CSSPrimitiveValue(CSSValueTransparent)));
|
| + value = backgroundColor;
|
| + break;
|
| + }
|
| + default:
|
| + return nullptr;
|
| + }
|
| + value->setImplicit();
|
| + return value;
|
| +}
|
| +
|
| } // namespace blink
|
|
|