Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: Source/core/css/CSSParser-in.cpp

Issue 17155007: [CSS3] Parsing the property, text-justify. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@parsingTextJustify
Patch Set: Patch for landing Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 690 matching lines...) Expand 10 before | Expand all | Expand 10 after
701 case CSSPropertyTableLayout: // auto | fixed | inherit 701 case CSSPropertyTableLayout: // auto | fixed | inherit
702 if (valueID == CSSValueAuto || valueID == CSSValueFixed) 702 if (valueID == CSSValueAuto || valueID == CSSValueFixed)
703 return true; 703 return true;
704 break; 704 break;
705 case CSSPropertyTextAlignLast: 705 case CSSPropertyTextAlignLast:
706 // auto | start | end | left | right | center | justify 706 // auto | start | end | left | right | center | justify
707 if (RuntimeEnabledFeatures::css3TextEnabled() 707 if (RuntimeEnabledFeatures::css3TextEnabled()
708 && ((valueID >= CSSValueLeft && valueID <= CSSValueJustify) || value ID == CSSValueStart || valueID == CSSValueEnd || valueID == CSSValueAuto)) 708 && ((valueID >= CSSValueLeft && valueID <= CSSValueJustify) || value ID == CSSValueStart || valueID == CSSValueEnd || valueID == CSSValueAuto))
709 return true; 709 return true;
710 break; 710 break;
711 case CSSPropertyTextJustify:
712 // auto | none | inter-word | distribute
713 if (RuntimeEnabledFeatures::css3TextEnabled()
714 && (valueID == CSSValueInterWord || valueID == CSSValueDistribute || valueID == CSSValueAuto || valueID == CSSValueNone))
715 return true;
yosin_UTC9 2013/10/15 01:28:41 nit: Please put brace when conditional expression
716 break;
711 case CSSPropertyTextLineThroughMode: 717 case CSSPropertyTextLineThroughMode:
712 case CSSPropertyTextOverlineMode: 718 case CSSPropertyTextOverlineMode:
713 case CSSPropertyTextUnderlineMode: 719 case CSSPropertyTextUnderlineMode:
714 if (valueID == CSSValueContinuous || valueID == CSSValueSkipWhiteSpace) 720 if (valueID == CSSValueContinuous || valueID == CSSValueSkipWhiteSpace)
715 return true; 721 return true;
716 break; 722 break;
717 case CSSPropertyTextLineThroughStyle: 723 case CSSPropertyTextLineThroughStyle:
718 case CSSPropertyTextOverlineStyle: 724 case CSSPropertyTextOverlineStyle:
719 case CSSPropertyTextUnderlineStyle: 725 case CSSPropertyTextUnderlineStyle:
720 if (valueID == CSSValueNone || valueID == CSSValueSolid || valueID == CS SValueDouble || valueID == CSSValueDashed || valueID == CSSValueDotDash || value ID == CSSValueDotDotDash || valueID == CSSValueWave) 726 if (valueID == CSSValueNone || valueID == CSSValueSolid || valueID == CS SValueDouble || valueID == CSSValueDashed || valueID == CSSValueDotDash || value ID == CSSValueDotDotDash || valueID == CSSValueWave)
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
943 } 949 }
944 return false; 950 return false;
945 } 951 }
946 952
947 static inline bool isKeywordPropertyID(CSSPropertyID propertyId) 953 static inline bool isKeywordPropertyID(CSSPropertyID propertyId)
948 { 954 {
949 switch (propertyId) { 955 switch (propertyId) {
950 case CSSPropertyMixBlendMode: 956 case CSSPropertyMixBlendMode:
951 case CSSPropertyIsolation: 957 case CSSPropertyIsolation:
952 return RuntimeEnabledFeatures::cssCompositingEnabled(); 958 return RuntimeEnabledFeatures::cssCompositingEnabled();
953 case CSSPropertyTextAlignLast:
954 return RuntimeEnabledFeatures::css3TextEnabled();
955 case CSSPropertyBorderBottomStyle: 959 case CSSPropertyBorderBottomStyle:
956 case CSSPropertyBorderCollapse: 960 case CSSPropertyBorderCollapse:
957 case CSSPropertyBorderLeftStyle: 961 case CSSPropertyBorderLeftStyle:
958 case CSSPropertyBorderRightStyle: 962 case CSSPropertyBorderRightStyle:
959 case CSSPropertyBorderTopStyle: 963 case CSSPropertyBorderTopStyle:
960 case CSSPropertyBoxSizing: 964 case CSSPropertyBoxSizing:
961 case CSSPropertyCaptionSide: 965 case CSSPropertyCaptionSide:
962 case CSSPropertyClear: 966 case CSSPropertyClear:
963 case CSSPropertyDirection: 967 case CSSPropertyDirection:
964 case CSSPropertyDisplay: 968 case CSSPropertyDisplay:
965 case CSSPropertyEmptyCells: 969 case CSSPropertyEmptyCells:
966 case CSSPropertyFloat: 970 case CSSPropertyFloat:
967 case CSSPropertyFontStyle: 971 case CSSPropertyFontStyle:
968 case CSSPropertyImageRendering: 972 case CSSPropertyImageRendering:
969 case CSSPropertyListStylePosition: 973 case CSSPropertyListStylePosition:
970 case CSSPropertyListStyleType: 974 case CSSPropertyListStyleType:
971 case CSSPropertyObjectFit: 975 case CSSPropertyObjectFit:
972 case CSSPropertyOutlineStyle: 976 case CSSPropertyOutlineStyle:
973 case CSSPropertyOverflowWrap: 977 case CSSPropertyOverflowWrap:
974 case CSSPropertyOverflowX: 978 case CSSPropertyOverflowX:
975 case CSSPropertyOverflowY: 979 case CSSPropertyOverflowY:
976 case CSSPropertyPageBreakAfter: 980 case CSSPropertyPageBreakAfter:
977 case CSSPropertyPageBreakBefore: 981 case CSSPropertyPageBreakBefore:
978 case CSSPropertyPageBreakInside: 982 case CSSPropertyPageBreakInside:
979 case CSSPropertyPointerEvents: 983 case CSSPropertyPointerEvents:
980 case CSSPropertyPosition: 984 case CSSPropertyPosition:
981 case CSSPropertyResize: 985 case CSSPropertyResize:
982 case CSSPropertySpeak: 986 case CSSPropertySpeak:
983 case CSSPropertyTableLayout: 987 case CSSPropertyTableLayout:
988 case CSSPropertyTextAlignLast:
989 case CSSPropertyTextJustify:
984 case CSSPropertyTextLineThroughMode: 990 case CSSPropertyTextLineThroughMode:
985 case CSSPropertyTextLineThroughStyle: 991 case CSSPropertyTextLineThroughStyle:
986 case CSSPropertyTextOverflow: 992 case CSSPropertyTextOverflow:
987 case CSSPropertyTextOverlineMode: 993 case CSSPropertyTextOverlineMode:
988 case CSSPropertyTextOverlineStyle: 994 case CSSPropertyTextOverlineStyle:
989 case CSSPropertyTextRendering: 995 case CSSPropertyTextRendering:
990 case CSSPropertyTextTransform: 996 case CSSPropertyTextTransform:
991 case CSSPropertyTextUnderlineMode: 997 case CSSPropertyTextUnderlineMode:
992 case CSSPropertyTextUnderlineStyle: 998 case CSSPropertyTextUnderlineStyle:
993 case CSSPropertyTouchAction: 999 case CSSPropertyTouchAction:
(...skipping 1828 matching lines...) Expand 10 before | Expand all | Expand 10 after
2822 case CSSPropertyOverflowY: 2828 case CSSPropertyOverflowY:
2823 case CSSPropertyPageBreakAfter: 2829 case CSSPropertyPageBreakAfter:
2824 case CSSPropertyPageBreakBefore: 2830 case CSSPropertyPageBreakBefore:
2825 case CSSPropertyPageBreakInside: 2831 case CSSPropertyPageBreakInside:
2826 case CSSPropertyPointerEvents: 2832 case CSSPropertyPointerEvents:
2827 case CSSPropertyPosition: 2833 case CSSPropertyPosition:
2828 case CSSPropertyResize: 2834 case CSSPropertyResize:
2829 case CSSPropertySpeak: 2835 case CSSPropertySpeak:
2830 case CSSPropertyTableLayout: 2836 case CSSPropertyTableLayout:
2831 case CSSPropertyTextAlignLast: 2837 case CSSPropertyTextAlignLast:
2838 case CSSPropertyTextJustify:
2832 case CSSPropertyTextLineThroughMode: 2839 case CSSPropertyTextLineThroughMode:
2833 case CSSPropertyTextLineThroughStyle: 2840 case CSSPropertyTextLineThroughStyle:
2834 case CSSPropertyTextOverflow: 2841 case CSSPropertyTextOverflow:
2835 case CSSPropertyTextOverlineMode: 2842 case CSSPropertyTextOverlineMode:
2836 case CSSPropertyTextOverlineStyle: 2843 case CSSPropertyTextOverlineStyle:
2837 case CSSPropertyTextRendering: 2844 case CSSPropertyTextRendering:
2838 case CSSPropertyTextTransform: 2845 case CSSPropertyTextTransform:
2839 case CSSPropertyTextUnderlineMode: 2846 case CSSPropertyTextUnderlineMode:
2840 case CSSPropertyTextUnderlineStyle: 2847 case CSSPropertyTextUnderlineStyle:
2841 case CSSPropertyTouchAction: 2848 case CSSPropertyTouchAction:
(...skipping 9191 matching lines...) Expand 10 before | Expand all | Expand 10 after
12033 { 12040 {
12034 // The tokenizer checks for the construct of an+b. 12041 // The tokenizer checks for the construct of an+b.
12035 // However, since the {ident} rule precedes the {nth} rule, some of those 12042 // However, since the {ident} rule precedes the {nth} rule, some of those
12036 // tokens are identified as string literal. Furthermore we need to accept 12043 // tokens are identified as string literal. Furthermore we need to accept
12037 // "odd" and "even" which does not match to an+b. 12044 // "odd" and "even" which does not match to an+b.
12038 return equalIgnoringCase(token, "odd") || equalIgnoringCase(token, "even") 12045 return equalIgnoringCase(token, "odd") || equalIgnoringCase(token, "even")
12039 || equalIgnoringCase(token, "n") || equalIgnoringCase(token, "-n"); 12046 || equalIgnoringCase(token, "n") || equalIgnoringCase(token, "-n");
12040 } 12047 }
12041 12048
12042 } 12049 }
OLDNEW
« no previous file with comments | « Source/core/css/CSSComputedStyleDeclaration.cpp ('k') | Source/core/css/CSSPrimitiveValueMappings.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698