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 783 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
794 return true; | 794 return true; |
795 break; | 795 break; |
796 case CSSPropertyWebkitAppearance: | 796 case CSSPropertyWebkitAppearance: |
797 if ((valueID >= CSSValueCheckbox && valueID <= CSSValueTextarea) || valu
eID == CSSValueNone) | 797 if ((valueID >= CSSValueCheckbox && valueID <= CSSValueTextarea) || valu
eID == CSSValueNone) |
798 return true; | 798 return true; |
799 break; | 799 break; |
800 case CSSPropertyWebkitBackfaceVisibility: | 800 case CSSPropertyWebkitBackfaceVisibility: |
801 if (valueID == CSSValueVisible || valueID == CSSValueHidden) | 801 if (valueID == CSSValueVisible || valueID == CSSValueHidden) |
802 return true; | 802 return true; |
803 break; | 803 break; |
804 #if ENABLE(CSS_COMPOSITING) | |
805 case CSSPropertyWebkitBlendMode: | 804 case CSSPropertyWebkitBlendMode: |
806 if (parserContext.isCSSCompositingEnabled && (valueID == CSSValueNormal
|| valueID == CSSValueMultiply || valueID == CSSValueScreen | 805 if (parserContext.isCSSCompositingEnabled && (valueID == CSSValueNormal
|| valueID == CSSValueMultiply || valueID == CSSValueScreen |
807 || valueID == CSSValueOverlay || valueID == CSSValueDarken || valueI
D == CSSValueLighten || valueID == CSSValueColorDodge | 806 || valueID == CSSValueOverlay || valueID == CSSValueDarken || valueI
D == CSSValueLighten || valueID == CSSValueColorDodge |
808 || valueID == CSSValueColorBurn || valueID == CSSValueHardLight || v
alueID == CSSValueSoftLight || valueID == CSSValueDifference | 807 || valueID == CSSValueColorBurn || valueID == CSSValueHardLight || v
alueID == CSSValueSoftLight || valueID == CSSValueDifference |
809 || valueID == CSSValueExclusion || valueID == CSSValueHue || valueID
== CSSValueSaturation || valueID == CSSValueColor | 808 || valueID == CSSValueExclusion || valueID == CSSValueHue || valueID
== CSSValueSaturation || valueID == CSSValueColor |
810 || valueID == CSSValueLuminosity)) | 809 || valueID == CSSValueLuminosity)) |
811 return true; | 810 return true; |
812 break; | 811 break; |
813 #endif | |
814 case CSSPropertyWebkitBorderFit: | 812 case CSSPropertyWebkitBorderFit: |
815 if (valueID == CSSValueBorder || valueID == CSSValueLines) | 813 if (valueID == CSSValueBorder || valueID == CSSValueLines) |
816 return true; | 814 return true; |
817 break; | 815 break; |
818 case CSSPropertyWebkitBoxAlign: | 816 case CSSPropertyWebkitBoxAlign: |
819 if (valueID == CSSValueStretch || valueID == CSSValueStart || valueID ==
CSSValueEnd || valueID == CSSValueCenter || valueID == CSSValueBaseline) | 817 if (valueID == CSSValueStretch || valueID == CSSValueStart || valueID ==
CSSValueEnd || valueID == CSSValueCenter || valueID == CSSValueBaseline) |
820 return true; | 818 return true; |
821 break; | 819 break; |
822 case CSSPropertyWebkitBoxDecorationBreak: | 820 case CSSPropertyWebkitBoxDecorationBreak: |
823 if (valueID == CSSValueClone || valueID == CSSValueSlice) | 821 if (valueID == CSSValueClone || valueID == CSSValueSlice) |
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1050 case CSSPropertyTextLineThroughStyle: | 1048 case CSSPropertyTextLineThroughStyle: |
1051 case CSSPropertyTextOverflow: | 1049 case CSSPropertyTextOverflow: |
1052 case CSSPropertyTextOverlineMode: | 1050 case CSSPropertyTextOverlineMode: |
1053 case CSSPropertyTextOverlineStyle: | 1051 case CSSPropertyTextOverlineStyle: |
1054 case CSSPropertyTextRendering: | 1052 case CSSPropertyTextRendering: |
1055 case CSSPropertyTextTransform: | 1053 case CSSPropertyTextTransform: |
1056 case CSSPropertyTextUnderlineMode: | 1054 case CSSPropertyTextUnderlineMode: |
1057 case CSSPropertyTextUnderlineStyle: | 1055 case CSSPropertyTextUnderlineStyle: |
1058 case CSSPropertyVisibility: | 1056 case CSSPropertyVisibility: |
1059 case CSSPropertyWebkitAppearance: | 1057 case CSSPropertyWebkitAppearance: |
1060 #if ENABLE(CSS_COMPOSITING) | |
1061 case CSSPropertyWebkitBlendMode: | 1058 case CSSPropertyWebkitBlendMode: |
1062 #endif | |
1063 case CSSPropertyWebkitBackfaceVisibility: | 1059 case CSSPropertyWebkitBackfaceVisibility: |
1064 case CSSPropertyWebkitBorderAfterStyle: | 1060 case CSSPropertyWebkitBorderAfterStyle: |
1065 case CSSPropertyWebkitBorderBeforeStyle: | 1061 case CSSPropertyWebkitBorderBeforeStyle: |
1066 case CSSPropertyWebkitBorderEndStyle: | 1062 case CSSPropertyWebkitBorderEndStyle: |
1067 case CSSPropertyWebkitBorderFit: | 1063 case CSSPropertyWebkitBorderFit: |
1068 case CSSPropertyWebkitBorderStartStyle: | 1064 case CSSPropertyWebkitBorderStartStyle: |
1069 case CSSPropertyWebkitBoxAlign: | 1065 case CSSPropertyWebkitBoxAlign: |
1070 case CSSPropertyWebkitBoxDecorationBreak: | 1066 case CSSPropertyWebkitBoxDecorationBreak: |
1071 case CSSPropertyWebkitBoxDirection: | 1067 case CSSPropertyWebkitBoxDirection: |
1072 case CSSPropertyWebkitBoxLines: | 1068 case CSSPropertyWebkitBoxLines: |
(...skipping 953 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2026 case CSSPropertyWebkitMaskComposite: | 2022 case CSSPropertyWebkitMaskComposite: |
2027 case CSSPropertyWebkitMaskImage: | 2023 case CSSPropertyWebkitMaskImage: |
2028 case CSSPropertyWebkitMaskOrigin: | 2024 case CSSPropertyWebkitMaskOrigin: |
2029 case CSSPropertyWebkitMaskPosition: | 2025 case CSSPropertyWebkitMaskPosition: |
2030 case CSSPropertyWebkitMaskPositionX: | 2026 case CSSPropertyWebkitMaskPositionX: |
2031 case CSSPropertyWebkitMaskPositionY: | 2027 case CSSPropertyWebkitMaskPositionY: |
2032 case CSSPropertyWebkitMaskSize: | 2028 case CSSPropertyWebkitMaskSize: |
2033 case CSSPropertyWebkitMaskRepeat: | 2029 case CSSPropertyWebkitMaskRepeat: |
2034 case CSSPropertyWebkitMaskRepeatX: | 2030 case CSSPropertyWebkitMaskRepeatX: |
2035 case CSSPropertyWebkitMaskRepeatY: | 2031 case CSSPropertyWebkitMaskRepeatY: |
2036 #if ENABLE(CSS_COMPOSITING) | |
2037 case CSSPropertyWebkitBackgroundBlendMode: | 2032 case CSSPropertyWebkitBackgroundBlendMode: |
2038 #endif | |
2039 { | 2033 { |
2040 RefPtr<CSSValue> val1; | 2034 RefPtr<CSSValue> val1; |
2041 RefPtr<CSSValue> val2; | 2035 RefPtr<CSSValue> val2; |
2042 CSSPropertyID propId1, propId2; | 2036 CSSPropertyID propId1, propId2; |
2043 bool result = false; | 2037 bool result = false; |
2044 if (parseFillProperty(propId, propId1, propId2, val1, val2)) { | 2038 if (parseFillProperty(propId, propId1, propId2, val1, val2)) { |
2045 OwnPtr<ShorthandScope> shorthandScope; | 2039 OwnPtr<ShorthandScope> shorthandScope; |
2046 if (propId == CSSPropertyBackgroundPosition || | 2040 if (propId == CSSPropertyBackgroundPosition || |
2047 propId == CSSPropertyBackgroundRepeat || | 2041 propId == CSSPropertyBackgroundRepeat || |
2048 propId == CSSPropertyWebkitMaskPosition || | 2042 propId == CSSPropertyWebkitMaskPosition || |
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2371 else { | 2365 else { |
2372 RefPtr<CSSValue> val = parseFilter(); | 2366 RefPtr<CSSValue> val = parseFilter(); |
2373 if (val) { | 2367 if (val) { |
2374 addProperty(propId, val, important); | 2368 addProperty(propId, val, important); |
2375 return true; | 2369 return true; |
2376 } | 2370 } |
2377 return false; | 2371 return false; |
2378 } | 2372 } |
2379 break; | 2373 break; |
2380 #endif | 2374 #endif |
2381 #if ENABLE(CSS_COMPOSITING) | |
2382 case CSSPropertyWebkitBlendMode: | 2375 case CSSPropertyWebkitBlendMode: |
2383 if (cssCompositingEnabled()) | 2376 if (cssCompositingEnabled()) |
2384 validPrimitive = true; | 2377 validPrimitive = true; |
2385 break; | 2378 break; |
2386 #endif | |
2387 case CSSPropertyWebkitFlex: { | 2379 case CSSPropertyWebkitFlex: { |
2388 ShorthandScope scope(this, propId); | 2380 ShorthandScope scope(this, propId); |
2389 if (id == CSSValueNone) { | 2381 if (id == CSSValueNone) { |
2390 addProperty(CSSPropertyWebkitFlexGrow, cssValuePool().createValue(0,
CSSPrimitiveValue::CSS_NUMBER), important); | 2382 addProperty(CSSPropertyWebkitFlexGrow, cssValuePool().createValue(0,
CSSPrimitiveValue::CSS_NUMBER), important); |
2391 addProperty(CSSPropertyWebkitFlexShrink, cssValuePool().createValue(
0, CSSPrimitiveValue::CSS_NUMBER), important); | 2383 addProperty(CSSPropertyWebkitFlexShrink, cssValuePool().createValue(
0, CSSPrimitiveValue::CSS_NUMBER), important); |
2392 addProperty(CSSPropertyWebkitFlexBasis, cssValuePool().createIdentif
ierValue(CSSValueAuto), important); | 2384 addProperty(CSSPropertyWebkitFlexBasis, cssValuePool().createIdentif
ierValue(CSSValueAuto), important); |
2393 return true; | 2385 return true; |
2394 } | 2386 } |
2395 return parseFlex(m_valueList.get(), important); | 2387 return parseFlex(m_valueList.get(), important); |
2396 } | 2388 } |
(...skipping 1832 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4229 m_valueList->next(); | 4221 m_valueList->next(); |
4230 break; | 4222 break; |
4231 } | 4223 } |
4232 case CSSPropertyWebkitBackgroundComposite: | 4224 case CSSPropertyWebkitBackgroundComposite: |
4233 case CSSPropertyWebkitMaskComposite: | 4225 case CSSPropertyWebkitMaskComposite: |
4234 if (val->id >= CSSValueClear && val->id <= CSSValuePlusLight
er) { | 4226 if (val->id >= CSSValueClear && val->id <= CSSValuePlusLight
er) { |
4235 currValue = cssValuePool().createIdentifierValue(val->id
); | 4227 currValue = cssValuePool().createIdentifierValue(val->id
); |
4236 m_valueList->next(); | 4228 m_valueList->next(); |
4237 } | 4229 } |
4238 break; | 4230 break; |
4239 #if ENABLE(CSS_COMPOSITING) | |
4240 case CSSPropertyWebkitBackgroundBlendMode: | 4231 case CSSPropertyWebkitBackgroundBlendMode: |
4241 if (cssCompositingEnabled() && (val->id == CSSValueNormal ||
val->id == CSSValueMultiply | 4232 if (cssCompositingEnabled() && (val->id == CSSValueNormal ||
val->id == CSSValueMultiply |
4242 || val->id == CSSValueScreen || val->id == CSSValueOverl
ay || val->id == CSSValueDarken | 4233 || val->id == CSSValueScreen || val->id == CSSValueOverl
ay || val->id == CSSValueDarken |
4243 || val->id == CSSValueLighten || val->id == CSSValueCol
orDodge || val->id == CSSValueColorBurn | 4234 || val->id == CSSValueLighten || val->id == CSSValueCol
orDodge || val->id == CSSValueColorBurn |
4244 || val->id == CSSValueHardLight || val->id == CSSValueSo
ftLight || val->id == CSSValueDifference | 4235 || val->id == CSSValueHardLight || val->id == CSSValueSo
ftLight || val->id == CSSValueDifference |
4245 || val->id == CSSValueExclusion || val->id == CSSValueHu
e || val->id == CSSValueSaturation | 4236 || val->id == CSSValueExclusion || val->id == CSSValueHu
e || val->id == CSSValueSaturation |
4246 || val->id == CSSValueColor || val->id == CSSValueLumino
sity)) { | 4237 || val->id == CSSValueColor || val->id == CSSValueLumino
sity)) { |
4247 currValue = cssValuePool().createIdentifierValue(val->id
); | 4238 currValue = cssValuePool().createIdentifierValue(val->id
); |
4248 m_valueList->next(); | 4239 m_valueList->next(); |
4249 } | 4240 } |
4250 break; | 4241 break; |
4251 #endif | |
4252 case CSSPropertyBackgroundRepeat: | 4242 case CSSPropertyBackgroundRepeat: |
4253 case CSSPropertyWebkitMaskRepeat: | 4243 case CSSPropertyWebkitMaskRepeat: |
4254 parseFillRepeat(currValue, currValue2); | 4244 parseFillRepeat(currValue, currValue2); |
4255 // parseFillRepeat advances the m_valueList pointer | 4245 // parseFillRepeat advances the m_valueList pointer |
4256 break; | 4246 break; |
4257 case CSSPropertyBackgroundSize: | 4247 case CSSPropertyBackgroundSize: |
4258 case CSSPropertyWebkitBackgroundSize: | 4248 case CSSPropertyWebkitBackgroundSize: |
4259 case CSSPropertyWebkitMaskSize: { | 4249 case CSSPropertyWebkitMaskSize: { |
4260 currValue = parseFillSize(propId, allowComma); | 4250 currValue = parseFillSize(propId, allowComma); |
4261 if (currValue) | 4251 if (currValue) |
(...skipping 7447 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11709 { | 11699 { |
11710 // The tokenizer checks for the construct of an+b. | 11700 // The tokenizer checks for the construct of an+b. |
11711 // However, since the {ident} rule precedes the {nth} rule, some of those | 11701 // However, since the {ident} rule precedes the {nth} rule, some of those |
11712 // tokens are identified as string literal. Furthermore we need to accept | 11702 // tokens are identified as string literal. Furthermore we need to accept |
11713 // "odd" and "even" which does not match to an+b. | 11703 // "odd" and "even" which does not match to an+b. |
11714 return equalIgnoringCase(token, "odd") || equalIgnoringCase(token, "even") | 11704 return equalIgnoringCase(token, "odd") || equalIgnoringCase(token, "even") |
11715 || equalIgnoringCase(token, "n") || equalIgnoringCase(token, "-n"); | 11705 || equalIgnoringCase(token, "n") || equalIgnoringCase(token, "-n"); |
11716 } | 11706 } |
11717 | 11707 |
11718 } | 11708 } |
OLD | NEW |