Chromium Code Reviews| Index: Source/core/css/parser/SizesCalcParser.cpp |
| diff --git a/Source/core/css/parser/SizesCalcParser.cpp b/Source/core/css/parser/SizesCalcParser.cpp |
| index f99688bb609de3bfc86a010742aa83edb0604c60..087339d5888af0cb6af89346e32db893861c055b 100644 |
| --- a/Source/core/css/parser/SizesCalcParser.cpp |
| +++ b/Source/core/css/parser/SizesCalcParser.cpp |
| @@ -10,11 +10,12 @@ |
| namespace WebCore { |
| -bool SizesCalcParser::parse(MediaQueryTokenIterator start, MediaQueryTokenIterator end, PassRefPtr<MediaValues> mediaValues, unsigned& result) |
| +bool SizesCalcParser::parse(MediaQueryTokenIterator start, MediaQueryTokenIterator end, PassRefPtr<MediaValues> mediaValues, unsigned& result, bool& viewportDependant) |
| { |
| SizesCalcParser parser(mediaValues); |
| if (!parser.calcToReversePolishNotation(start, end)) |
| return false; |
| + viewportDependant = parser.viewportDependant(); |
|
esprehn
2014/07/14 08:39:49
ditto, make a real API.
|
| return parser.calculate(result); |
| } |
| @@ -93,6 +94,8 @@ bool SizesCalcParser::calcToReversePolishNotation(MediaQueryTokenIterator start, |
| appendNumber(*it); |
| break; |
| case DimensionToken: |
| + if (CSSPrimitiveValue::isViewportPercentageLength(it->unitType())) |
|
esprehn
2014/07/14 08:39:49
Does this happen repeatedly? Should you be doing m
|
| + m_viewportDependant = true; |
| if (!CSSPrimitiveValue::isLength(it->unitType()) || !appendLength(*it)) |
| return false; |
| break; |