| Index: third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp
|
| diff --git a/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp b/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp
|
| index cb27b6b55f89c8eb1707cfce2d21562dcd142272..f10ef1ae0dec952a962508dfc72ab24518a7e67b 100644
|
| --- a/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp
|
| +++ b/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp
|
| @@ -40,6 +40,8 @@
|
| #include "core/css/parser/CSSParserIdioms.h"
|
| #include "core/css/parser/CSSPropertyParserHelpers.h"
|
| #include "core/css/parser/CSSVariableParser.h"
|
| +#include "core/css/properties/CSSPaddingProperties.h"
|
| +#include "core/css/properties/CSSPropertyDescriptor.h"
|
| #include "core/frame/UseCounter.h"
|
| #include "core/layout/LayoutTheme.h"
|
| #include "core/svg/SVGPathUtilities.h"
|
| @@ -3425,6 +3427,18 @@ const CSSValue* CSSPropertyParser::parseSingleValue(
|
| m_range.peek().id());
|
| return consumeIdent(m_range);
|
| }
|
| +
|
| + /* Gets the parsing function for our current property from the property API.
|
| + If it has been implemented, we call this function, otherwise we manually
|
| + parse
|
| + this value in the switch statement below. As we implement APIs for other
|
| + properties,
|
| + those properties will be taken out of the switch statement. */
|
| + const CSSPropertyDescriptor& cssPropertyDesc =
|
| + CSSPropertyDescriptor::get(property);
|
| + if (cssPropertyDesc.isValidProperty)
|
| + return cssPropertyDesc.parseSingleValue(m_range, m_context);
|
| +
|
| switch (property) {
|
| case CSSPropertyWillChange:
|
| return consumeWillChange(m_range);
|
| @@ -3515,13 +3529,6 @@ const CSSValue* CSSPropertyParser::parseSingleValue(
|
| return consumeLengthOrPercent(m_range, m_context.mode(),
|
| ValueRangeNonNegative,
|
| UnitlessQuirk::Allow);
|
| - case CSSPropertyWebkitPaddingStart:
|
| - case CSSPropertyWebkitPaddingEnd:
|
| - case CSSPropertyWebkitPaddingBefore:
|
| - case CSSPropertyWebkitPaddingAfter:
|
| - return consumeLengthOrPercent(m_range, m_context.mode(),
|
| - ValueRangeNonNegative,
|
| - UnitlessQuirk::Forbid);
|
| case CSSPropertyClip:
|
| return consumeClip(m_range, m_context.mode());
|
| case CSSPropertyTouchAction:
|
|
|