Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) |
| 3 * Copyright (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) | 3 * Copyright (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) |
| 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved. | 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved. |
| 5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> | 5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> |
| 6 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> | 6 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> |
| 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) | 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) |
| 8 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. | 8 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. |
| 9 * Copyright (C) 2012 Intel Corporation. All rights reserved. | 9 * Copyright (C) 2012 Intel Corporation. All rights reserved. |
| 10 * | 10 * |
| (...skipping 1623 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1634 return false; | 1634 return false; |
| 1635 // Properties below are validated inside parseViewportProperty, because we | 1635 // Properties below are validated inside parseViewportProperty, because we |
| 1636 // check for parser state. We need to invalidate if someone adds them outsid e | 1636 // check for parser state. We need to invalidate if someone adds them outsid e |
| 1637 // a @viewport rule. | 1637 // a @viewport rule. |
| 1638 case CSSPropertyMaxZoom: | 1638 case CSSPropertyMaxZoom: |
| 1639 case CSSPropertyMinZoom: | 1639 case CSSPropertyMinZoom: |
| 1640 case CSSPropertyOrientation: | 1640 case CSSPropertyOrientation: |
| 1641 case CSSPropertyUserZoom: | 1641 case CSSPropertyUserZoom: |
| 1642 validPrimitive = false; | 1642 validPrimitive = false; |
| 1643 break; | 1643 break; |
| 1644 | |
| 1645 case CSSPropertyAll: | |
| 1646 if (id == CSSValueInitial || id == CSSValueInherit || id == CSSValueUnse t) { | |
| 1647 validPrimitive = true; | |
| 1648 break; | |
| 1649 } | |
| 1650 return false; | |
| 1651 | |
| 1644 default: | 1652 default: |
| 1645 return parseSVGValue(propId, important); | 1653 return parseSVGValue(propId, important); |
| 1646 } | 1654 } |
| 1647 | 1655 |
| 1648 if (validPrimitive) { | 1656 if (validPrimitive) { |
| 1649 parsedValue = parseValidPrimitive(id, value); | 1657 parsedValue = parseValidPrimitive(id, value); |
| 1650 m_valueList->next(); | 1658 m_valueList->next(); |
| 1651 } | 1659 } |
| 1652 ASSERT(!m_parsedCalculation); | 1660 ASSERT(!m_parsedCalculation); |
| 1653 if (parsedValue) { | 1661 if (parsedValue) { |
| (...skipping 1457 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 3111 if (value->id == CSSValueRunning || value->id == CSSValuePaused) | 3119 if (value->id == CSSValueRunning || value->id == CSSValuePaused) |
| 3112 return cssValuePool().createIdentifierValue(value->id); | 3120 return cssValuePool().createIdentifierValue(value->id); |
| 3113 return nullptr; | 3121 return nullptr; |
| 3114 } | 3122 } |
| 3115 | 3123 |
| 3116 PassRefPtrWillBeRawPtr<CSSValue> CSSPropertyParser::parseAnimationProperty(Anima tionParseContext& context) | 3124 PassRefPtrWillBeRawPtr<CSSValue> CSSPropertyParser::parseAnimationProperty(Anima tionParseContext& context) |
| 3117 { | 3125 { |
| 3118 CSSParserValue* value = m_valueList->current(); | 3126 CSSParserValue* value = m_valueList->current(); |
| 3119 if (value->unit != CSSPrimitiveValue::CSS_IDENT) | 3127 if (value->unit != CSSPrimitiveValue::CSS_IDENT) |
| 3120 return nullptr; | 3128 return nullptr; |
| 3129 // Since all is valid css property keyword, cssPropertyID for all | |
| 3130 // returns non-null value. We need to check "all" before | |
| 3131 // cssPropertyID check. | |
| 3132 if (equalIgnoringCase(value, "all")) | |
| 3133 return cssValuePool().createIdentifierValue(CSSValueAll); | |
| 3121 CSSPropertyID result = cssPropertyID(value->string); | 3134 CSSPropertyID result = cssPropertyID(value->string); |
| 3122 if (result && RuntimeCSSEnabled::isCSSPropertyEnabled(result)) | 3135 if (result && RuntimeCSSEnabled::isCSSPropertyEnabled(result)) |
| 3123 return cssValuePool().createIdentifierValue(result); | 3136 return cssValuePool().createIdentifierValue(result); |
| 3124 if (equalIgnoringCase(value, "all")) | |
| 3125 return cssValuePool().createIdentifierValue(CSSValueAll); | |
| 3126 if (equalIgnoringCase(value, "none")) { | 3137 if (equalIgnoringCase(value, "none")) { |
| 3127 context.commitAnimationPropertyKeyword(); | 3138 context.commitAnimationPropertyKeyword(); |
| 3128 return cssValuePool().createIdentifierValue(CSSValueNone); | 3139 return cssValuePool().createIdentifierValue(CSSValueNone); |
| 3129 } | 3140 } |
| 3130 return nullptr; | 3141 return nullptr; |
| 3131 } | 3142 } |
| 3132 | 3143 |
| 3133 bool CSSPropertyParser::parseWebkitTransformOriginShorthand(RefPtrWillBeRawPtr<C SSValue>& value1, RefPtrWillBeRawPtr<CSSValue>& value2, RefPtrWillBeRawPtr<CSSVa lue>& value3) | 3144 bool CSSPropertyParser::parseWebkitTransformOriginShorthand(RefPtrWillBeRawPtr<C SSValue>& value1, RefPtrWillBeRawPtr<CSSValue>& value2, RefPtrWillBeRawPtr<CSSVa lue>& value3) |
| 3134 { | 3145 { |
| 3135 parse2ValuesFillPosition(m_valueList.get(), value1, value2); | 3146 parse2ValuesFillPosition(m_valueList.get(), value1, value2); |
| (...skipping 4123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 7259 expectComma = false; | 7270 expectComma = false; |
| 7260 m_valueList->next(); | 7271 m_valueList->next(); |
| 7261 continue; | 7272 continue; |
| 7262 } | 7273 } |
| 7263 | 7274 |
| 7264 if (currentValue->unit != CSSPrimitiveValue::CSS_IDENT) | 7275 if (currentValue->unit != CSSPrimitiveValue::CSS_IDENT) |
| 7265 return false; | 7276 return false; |
| 7266 | 7277 |
| 7267 CSSPropertyID property = cssPropertyID(currentValue->string); | 7278 CSSPropertyID property = cssPropertyID(currentValue->string); |
| 7268 if (property && RuntimeCSSEnabled::isCSSPropertyEnabled(property)) { | 7279 if (property && RuntimeCSSEnabled::isCSSPropertyEnabled(property)) { |
| 7269 if (property == CSSPropertyWillChange) | 7280 // Now "all" is used by both CSSValue and CSSPropertyValue. |
| 7281 // Need to return false when currentValue is CSSPropertyAll. | |
| 7282 if (property == CSSPropertyWillChange || property == CSSPropertyAll) | |
|
esprehn
2014/05/30 00:59:22
Does the spec say that will-change: all doesn't wo
tasak
2014/06/04 09:37:41
I looked at the below "swith~case" and found that
| |
| 7270 return false; | 7283 return false; |
| 7271 values->append(cssValuePool().createIdentifierValue(property)); | 7284 values->append(cssValuePool().createIdentifierValue(property)); |
| 7272 } else { | 7285 } else { |
| 7273 switch (currentValue->id) { | 7286 switch (currentValue->id) { |
| 7274 case CSSValueNone: | 7287 case CSSValueNone: |
| 7275 case CSSValueAll: | 7288 case CSSValueAll: |
| 7276 case CSSValueAuto: | 7289 case CSSValueAuto: |
| 7277 case CSSValueDefault: | 7290 case CSSValueDefault: |
| 7278 case CSSValueInitial: | 7291 case CSSValueInitial: |
| 7279 case CSSValueInherit: | 7292 case CSSValueInherit: |
| (...skipping 1226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 8506 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueFill)); | 8519 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueFill)); |
| 8507 if (!seenStroke) | 8520 if (!seenStroke) |
| 8508 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueStroke) ); | 8521 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueStroke) ); |
| 8509 if (!seenMarkers) | 8522 if (!seenMarkers) |
| 8510 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueMarkers )); | 8523 parsedValues->append(CSSPrimitiveValue::createIdentifier(CSSValueMarkers )); |
| 8511 | 8524 |
| 8512 return parsedValues.release(); | 8525 return parsedValues.release(); |
| 8513 } | 8526 } |
| 8514 | 8527 |
| 8515 } // namespace WebCore | 8528 } // namespace WebCore |
| OLD | NEW |