| Index: sky/engine/core/css/parser/CSSGrammar.y
|
| diff --git a/sky/engine/core/css/parser/CSSGrammar.y b/sky/engine/core/css/parser/CSSGrammar.y
|
| index 5dbd42cb5b2cc40a9eea121454af2c709a5284c6..10e9b092ebd763f275a7e9c9fcfe3f57eb9032cb 100644
|
| --- a/sky/engine/core/css/parser/CSSGrammar.y
|
| +++ b/sky/engine/core/css/parser/CSSGrammar.y
|
| @@ -29,9 +29,7 @@
|
| #include "core/css/CSSPrimitiveValue.h"
|
| #include "core/css/CSSSelector.h"
|
| #include "core/css/CSSSelectorList.h"
|
| -#include "core/css/StyleKeyframe.h"
|
| #include "core/css/StyleRule.h"
|
| -#include "core/css/StyleRuleKeyframes.h"
|
| #include "core/css/StyleSheetContents.h"
|
| #include "core/css/parser/BisonCSSParser.h"
|
| #include "core/css/parser/CSSParserMode.h"
|
| @@ -70,16 +68,14 @@ using namespace blink;
|
|
|
| StyleRuleBase* rule;
|
| // The content of the three below HeapVectors are guaranteed to be kept alive by
|
| - // the corresponding m_parsedRules, and m_parsedKeyFrames
|
| + // the corresponding m_parsedRules.
|
| // lists in BisonCSSParser.h.
|
| Vector<RefPtr<StyleRuleBase> >* ruleList;
|
| - Vector<RefPtr<StyleKeyframe> >* keyframeRuleList;
|
| CSSParserSelector* selector;
|
| Vector<OwnPtr<CSSParserSelector> >* selectorList;
|
| CSSSelector::AttributeMatchType attributeMatchType;
|
| CSSParserValue value;
|
| CSSParserValueList* valueList;
|
| - StyleKeyframe* keyframe;
|
| float val;
|
| CSSPropertyID id;
|
| CSSParserLocation location;
|
| @@ -167,10 +163,7 @@ inline static CSSParserValue makeIdentValue(CSSParserString string)
|
| %token INTERNAL_RULE_SYM
|
| %token INTERNAL_SELECTOR_SYM
|
| %token INTERNAL_VALUE_SYM
|
| -%token INTERNAL_KEYFRAME_RULE_SYM
|
| -%token INTERNAL_KEYFRAME_KEY_LIST_SYM
|
| %token INTERNAL_SUPPORTS_CONDITION_SYM
|
| -%token KEYFRAMES_SYM
|
|
|
| %token ATKEYWORD
|
|
|
| @@ -219,7 +212,6 @@ inline static CSSParserValue makeIdentValue(CSSParserString string)
|
|
|
| %type <rule> ruleset
|
| %type <rule> font_face
|
| -%type <rule> keyframes
|
| %type <rule> rule
|
| %type <rule> valid_rule
|
| %type <ruleList> block_rule_body
|
| @@ -227,7 +219,6 @@ inline static CSSParserValue makeIdentValue(CSSParserString string)
|
| %type <rule> block_rule
|
| %type <rule> block_valid_rule
|
| %type <rule> supports
|
| -%type <boolean> keyframes_rule_start
|
|
|
| %type <string> ident_or_string
|
|
|
| @@ -238,13 +229,6 @@ inline static CSSParserValue makeIdentValue(CSSParserString string)
|
| %type <boolean> supports_disjunction
|
| %type <boolean> supports_declaration_condition
|
|
|
| -%type <string> keyframe_name
|
| -%type <keyframe> keyframe_rule
|
| -%type <keyframeRuleList> keyframes_rule
|
| -%type <keyframeRuleList> keyframe_rule_list
|
| -%type <valueList> key_list
|
| -%type <value> key
|
| -
|
| %type <id> property
|
|
|
| %type <selector> specifier
|
| @@ -294,8 +278,6 @@ stylesheet:
|
| | internal_rule
|
| | internal_selector
|
| | internal_value
|
| - | internal_keyframe_rule
|
| - | internal_keyframe_key_list
|
| | internal_supports_condition
|
| ;
|
|
|
| @@ -305,18 +287,6 @@ internal_rule:
|
| }
|
| ;
|
|
|
| -internal_keyframe_rule:
|
| - INTERNAL_KEYFRAME_RULE_SYM maybe_space keyframe_rule maybe_space TOKEN_EOF {
|
| - parser->m_keyframe = $3;
|
| - }
|
| -;
|
| -
|
| -internal_keyframe_key_list:
|
| - INTERNAL_KEYFRAME_KEY_LIST_SYM maybe_space key_list TOKEN_EOF {
|
| - parser->m_valueList = parser->sinkFloatingValueList($3);
|
| - }
|
| -;
|
| -
|
| internal_decls:
|
| INTERNAL_DECLS_SYM maybe_space_before_declaration declaration_list TOKEN_EOF {
|
| /* can be empty */
|
| @@ -402,7 +372,6 @@ rule_list:
|
| valid_rule:
|
| ruleset
|
| | font_face
|
| - | keyframes
|
| | supports
|
| ;
|
|
|
| @@ -445,7 +414,6 @@ block_rule_recovery:
|
| block_valid_rule:
|
| ruleset
|
| | font_face
|
| - | keyframes
|
| | supports
|
| ;
|
|
|
| @@ -555,86 +523,6 @@ supports_declaration_condition:
|
| }
|
| ;
|
|
|
| -before_keyframes_rule:
|
| - /* empty */ {
|
| - parser->startRuleHeader(CSSRuleSourceData::KEYFRAMES_RULE);
|
| - }
|
| - ;
|
| -
|
| -keyframes_rule_start:
|
| - before_keyframes_rule KEYFRAMES_SYM maybe_space {
|
| - $$ = false;
|
| - }
|
| - ;
|
| -
|
| -keyframes:
|
| - keyframes_rule_start keyframe_name at_rule_header_end_maybe_space '{' at_rule_body_start maybe_space location_label keyframes_rule closing_brace {
|
| - $$ = parser->createKeyframesRule($2, parser->sinkFloatingKeyframeVector($8), $1 /* isPrefixed */);
|
| - }
|
| - ;
|
| -
|
| -keyframe_name:
|
| - IDENT
|
| - | STRING
|
| - ;
|
| -
|
| -keyframes_rule:
|
| - keyframe_rule_list
|
| - | keyframe_rule_list keyframes_error_recovery {
|
| - parser->clearProperties();
|
| - };
|
| -
|
| -keyframe_rule_list:
|
| - /* empty */ {
|
| - $$ = parser->createFloatingKeyframeVector();
|
| - }
|
| - | keyframe_rule_list keyframe_rule maybe_space location_label {
|
| - $$ = $1;
|
| - $$->append($2);
|
| - }
|
| - | keyframe_rule_list keyframes_error_recovery invalid_block maybe_space location_label {
|
| - parser->clearProperties();
|
| - }
|
| - ;
|
| -
|
| -keyframe_rule:
|
| - key_list '{' maybe_space declaration_list closing_brace {
|
| - $$ = parser->createKeyframe($1);
|
| - }
|
| - ;
|
| -
|
| -key_list:
|
| - key maybe_space {
|
| - $$ = parser->createFloatingValueList();
|
| - $$->addValue(parser->sinkFloatingValue($1));
|
| - }
|
| - | key_list ',' maybe_space key maybe_space {
|
| - $$ = $1;
|
| - $$->addValue(parser->sinkFloatingValue($4));
|
| - }
|
| - ;
|
| -
|
| -key:
|
| - maybe_unary_operator PERCENTAGE {
|
| - $$.setFromNumber($1 * $2);
|
| - }
|
| - | IDENT {
|
| - if ($1.equalIgnoringCase("from"))
|
| - $$.setFromNumber(0);
|
| - else if ($1.equalIgnoringCase("to"))
|
| - $$.setFromNumber(100);
|
| - else {
|
| - YYERROR;
|
| - }
|
| - }
|
| - ;
|
| -
|
| -keyframes_error_recovery:
|
| - error rule_error_recovery {
|
| - parser->reportError(parser->lastLocationLabel(), InvalidKeyframeSelectorCSSError);
|
| - }
|
| - ;
|
| -
|
| before_font_face_rule:
|
| /* empty */ {
|
| parser->startRuleHeader(CSSRuleSourceData::FONT_FACE_RULE);
|
| @@ -1206,8 +1094,7 @@ at_rule_end:
|
| ;
|
|
|
| regular_invalid_at_rule_header:
|
| - keyframes_rule_start at_rule_header_recovery
|
| - | before_font_face_rule FONT_FACE_SYM at_rule_header_recovery
|
| + before_font_face_rule FONT_FACE_SYM at_rule_header_recovery
|
| | before_supports_rule SUPPORTS_SYM error error_location rule_error_recovery {
|
| parser->reportError($4, InvalidSupportsConditionCSSError);
|
| parser->popSupportsRuleData();
|
| @@ -1260,11 +1147,6 @@ error_location: {
|
| }
|
| ;
|
|
|
| -location_label: {
|
| - parser->setLocationLabel(parser->currentLocation());
|
| - }
|
| - ;
|
| -
|
| error_recovery:
|
| /* empty */
|
| | error_recovery error
|
|
|