Index: Source/core/css/parser/MediaQueryParser.h |
diff --git a/Source/core/css/parser/MediaQueryParser.h b/Source/core/css/parser/MediaQueryParser.h |
index fcb82c569bd11de88eadcc31a930a69f0a8dad3b..7b3a0e3d40c731323a37f5b2c77dd67e000ee534 100644 |
--- a/Source/core/css/parser/MediaQueryParser.h |
+++ b/Source/core/css/parser/MediaQueryParser.h |
@@ -58,6 +58,12 @@ private: |
typedef Vector<MediaQueryToken>::iterator TokenIterator; |
+ enum BlockType { |
+ ParenthesisBlock, |
+ BracketsBlock, |
+ BracesBlock |
+ }; |
+ |
void processToken(TokenIterator&); |
void readRestrictor(MediaQueryTokenType, TokenIterator&); |
@@ -69,17 +75,19 @@ private: |
void readFeatureValue(MediaQueryTokenType, TokenIterator&); |
void readFeatureEnd(MediaQueryTokenType, TokenIterator&); |
void skipUntilComma(MediaQueryTokenType, TokenIterator&); |
- void skipUntilParenthesis(MediaQueryTokenType, TokenIterator&); |
+ void skipUntilBlockEnd(MediaQueryTokenType, TokenIterator&); |
void done(MediaQueryTokenType, TokenIterator&); |
typedef void (MediaQueryParser::*State)(MediaQueryTokenType, TokenIterator&); |
void setStateAndRestrict(State, MediaQuery::Restrictor); |
+ void observeBlocks(MediaQueryTokenType); |
State m_state; |
Vector<MediaQueryToken> m_tokens; |
MediaQueryData m_mediaQueryData; |
RefPtrWillBeMember<MediaQuerySet> m_querySet; |
+ Vector<BlockType> m_blockStack; |
const static State ReadRestrictor; |
const static State ReadMediaType; |
@@ -90,7 +98,7 @@ private: |
const static State ReadFeatureValue; |
const static State ReadFeatureEnd; |
const static State SkipUntilComma; |
- const static State SkipUntilParenthesis; |
+ const static State SkipUntilBlockEnd; |
const static State Done; |
}; |