<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[209838] trunk/Source/WebCore</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/209838">209838</a></dd>
<dt>Author</dt> <dd>hyatt@apple.com</dd>
<dt>Date</dt> <dd>2016-12-14 15:15:24 -0800 (Wed, 14 Dec 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>[CSS Parser] Rename StyleKeyframe to StyleRuleKeyframe
https://bugs.webkit.org/show_bug.cgi?id=165876

Reviewed by Simon Fraser.

* css/CSSKeyframeRule.cpp:
(WebCore::StyleRuleKeyframe::StyleRuleKeyframe):
(WebCore::StyleRuleKeyframe::~StyleRuleKeyframe):
(WebCore::StyleRuleKeyframe::mutableProperties):
(WebCore::StyleRuleKeyframe::keyText):
(WebCore::StyleRuleKeyframe::setKeyText):
(WebCore::StyleRuleKeyframe::cssText):
(WebCore::CSSKeyframeRule::CSSKeyframeRule):
(WebCore::StyleKeyframe::StyleKeyframe): Deleted.
(WebCore::StyleKeyframe::~StyleKeyframe): Deleted.
(WebCore::StyleKeyframe::mutableProperties): Deleted.
(WebCore::StyleKeyframe::keyText): Deleted.
(WebCore::StyleKeyframe::setKeyText): Deleted.
(WebCore::StyleKeyframe::cssText): Deleted.
* css/CSSKeyframeRule.h:
* css/CSSKeyframesRule.cpp:
(WebCore::StyleRuleKeyframes::keyframes):
(WebCore::StyleRuleKeyframes::parserAppendKeyframe):
(WebCore::StyleRuleKeyframes::wrapperAppendKeyframe):
(WebCore::CSSKeyframesRule::appendRule):
(WebCore::CSSKeyframesRule::item):
* css/CSSKeyframesRule.h:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::keyframeStylesForAnimation):
* css/StyleResolver.h:
* css/StyleRule.cpp:
(WebCore::StyleRuleBase::destroy):
* css/StyleRule.h:
* css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseKeyframeRule):
* css/parser/CSSParser.h:
* css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::parseDeferredKeyframeList):
(WebCore::CSSParserImpl::consumeKeyframesRule):
(WebCore::CSSParserImpl::consumeKeyframeStyleRule):
* css/parser/CSSParserImpl.h:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorecssCSSKeyframeRulecpp">trunk/Source/WebCore/css/CSSKeyframeRule.cpp</a></li>
<li><a href="#trunkSourceWebCorecssCSSKeyframeRuleh">trunk/Source/WebCore/css/CSSKeyframeRule.h</a></li>
<li><a href="#trunkSourceWebCorecssCSSKeyframesRulecpp">trunk/Source/WebCore/css/CSSKeyframesRule.cpp</a></li>
<li><a href="#trunkSourceWebCorecssCSSKeyframesRuleh">trunk/Source/WebCore/css/CSSKeyframesRule.h</a></li>
<li><a href="#trunkSourceWebCorecssStyleResolvercpp">trunk/Source/WebCore/css/StyleResolver.cpp</a></li>
<li><a href="#trunkSourceWebCorecssStyleResolverh">trunk/Source/WebCore/css/StyleResolver.h</a></li>
<li><a href="#trunkSourceWebCorecssStyleRulecpp">trunk/Source/WebCore/css/StyleRule.cpp</a></li>
<li><a href="#trunkSourceWebCorecssStyleRuleh">trunk/Source/WebCore/css/StyleRule.h</a></li>
<li><a href="#trunkSourceWebCorecssparserCSSParsercpp">trunk/Source/WebCore/css/parser/CSSParser.cpp</a></li>
<li><a href="#trunkSourceWebCorecssparserCSSParserh">trunk/Source/WebCore/css/parser/CSSParser.h</a></li>
<li><a href="#trunkSourceWebCorecssparserCSSParserImplcpp">trunk/Source/WebCore/css/parser/CSSParserImpl.cpp</a></li>
<li><a href="#trunkSourceWebCorecssparserCSSParserImplh">trunk/Source/WebCore/css/parser/CSSParserImpl.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/ChangeLog        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -1,5 +1,50 @@
</span><span class="cx"> 2016-12-14  Dave Hyatt  &lt;hyatt@apple.com&gt;
</span><span class="cx"> 
</span><ins>+        [CSS Parser] Rename StyleKeyframe to StyleRuleKeyframe
+        https://bugs.webkit.org/show_bug.cgi?id=165876
+
+        Reviewed by Simon Fraser.
+
+        * css/CSSKeyframeRule.cpp:
+        (WebCore::StyleRuleKeyframe::StyleRuleKeyframe):
+        (WebCore::StyleRuleKeyframe::~StyleRuleKeyframe):
+        (WebCore::StyleRuleKeyframe::mutableProperties):
+        (WebCore::StyleRuleKeyframe::keyText):
+        (WebCore::StyleRuleKeyframe::setKeyText):
+        (WebCore::StyleRuleKeyframe::cssText):
+        (WebCore::CSSKeyframeRule::CSSKeyframeRule):
+        (WebCore::StyleKeyframe::StyleKeyframe): Deleted.
+        (WebCore::StyleKeyframe::~StyleKeyframe): Deleted.
+        (WebCore::StyleKeyframe::mutableProperties): Deleted.
+        (WebCore::StyleKeyframe::keyText): Deleted.
+        (WebCore::StyleKeyframe::setKeyText): Deleted.
+        (WebCore::StyleKeyframe::cssText): Deleted.
+        * css/CSSKeyframeRule.h:
+        * css/CSSKeyframesRule.cpp:
+        (WebCore::StyleRuleKeyframes::keyframes):
+        (WebCore::StyleRuleKeyframes::parserAppendKeyframe):
+        (WebCore::StyleRuleKeyframes::wrapperAppendKeyframe):
+        (WebCore::CSSKeyframesRule::appendRule):
+        (WebCore::CSSKeyframesRule::item):
+        * css/CSSKeyframesRule.h:
+        * css/StyleResolver.cpp:
+        (WebCore::StyleResolver::styleForKeyframe):
+        (WebCore::StyleResolver::keyframeStylesForAnimation):
+        * css/StyleResolver.h:
+        * css/StyleRule.cpp:
+        (WebCore::StyleRuleBase::destroy):
+        * css/StyleRule.h:
+        * css/parser/CSSParser.cpp:
+        (WebCore::CSSParser::parseKeyframeRule):
+        * css/parser/CSSParser.h:
+        * css/parser/CSSParserImpl.cpp:
+        (WebCore::CSSParserImpl::parseDeferredKeyframeList):
+        (WebCore::CSSParserImpl::consumeKeyframesRule):
+        (WebCore::CSSParserImpl::consumeKeyframeStyleRule):
+        * css/parser/CSSParserImpl.h:
+
+2016-12-14  Dave Hyatt  &lt;hyatt@apple.com&gt;
+
</ins><span class="cx">         [CSS Parser] Make deferred parsing retain the sheet text. Fix invalidation to avoid deferred parsing.
</span><span class="cx">         https://bugs.webkit.org/show_bug.cgi?id=165868
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSKeyframeRulecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSKeyframeRule.cpp (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSKeyframeRule.cpp        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/CSSKeyframeRule.cpp        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -33,13 +33,13 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><del>-StyleKeyframe::StyleKeyframe(Ref&lt;StyleProperties&gt;&amp;&amp; properties)
</del><ins>+StyleRuleKeyframe::StyleRuleKeyframe(Ref&lt;StyleProperties&gt;&amp;&amp; properties)
</ins><span class="cx">     : StyleRuleBase(Keyframe)
</span><span class="cx">     , m_properties(WTFMove(properties))
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-StyleKeyframe::StyleKeyframe(std::unique_ptr&lt;Vector&lt;double&gt;&gt; keys, Ref&lt;StyleProperties&gt;&amp;&amp; properties)
</del><ins>+StyleRuleKeyframe::StyleRuleKeyframe(std::unique_ptr&lt;Vector&lt;double&gt;&gt; keys, Ref&lt;StyleProperties&gt;&amp;&amp; properties)
</ins><span class="cx">     : StyleRuleBase(Keyframe)
</span><span class="cx">     , m_properties(WTFMove(properties))
</span><span class="cx">     , m_keys(*keys)
</span><span class="lines">@@ -46,11 +46,11 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">     
</span><del>-StyleKeyframe::~StyleKeyframe()
</del><ins>+StyleRuleKeyframe::~StyleRuleKeyframe()
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-MutableStyleProperties&amp; StyleKeyframe::mutableProperties()
</del><ins>+MutableStyleProperties&amp; StyleRuleKeyframe::mutableProperties()
</ins><span class="cx"> {
</span><span class="cx">     if (!is&lt;MutableStyleProperties&gt;(m_properties.get()))
</span><span class="cx">         m_properties = m_properties-&gt;mutableCopy();
</span><span class="lines">@@ -57,7 +57,7 @@
</span><span class="cx">     return downcast&lt;MutableStyleProperties&gt;(m_properties.get());
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-String StyleKeyframe::keyText() const
</del><ins>+String StyleRuleKeyframe::keyText() const
</ins><span class="cx"> {
</span><span class="cx">     StringBuilder keyText;
</span><span class="cx"> 
</span><span class="lines">@@ -71,7 +71,7 @@
</span><span class="cx">     return keyText.toString();
</span><span class="cx"> }
</span><span class="cx">     
</span><del>-bool StyleKeyframe::setKeyText(const String&amp; keyText)
</del><ins>+bool StyleRuleKeyframe::setKeyText(const String&amp; keyText)
</ins><span class="cx"> {
</span><span class="cx">     ASSERT(!keyText.isNull());
</span><span class="cx">     auto keys = CSSParser::parseKeyframeKeyList(keyText);
</span><span class="lines">@@ -81,7 +81,7 @@
</span><span class="cx">     return true;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-String StyleKeyframe::cssText() const
</del><ins>+String StyleRuleKeyframe::cssText() const
</ins><span class="cx"> {
</span><span class="cx">     StringBuilder result;
</span><span class="cx">     result.append(keyText());
</span><span class="lines">@@ -94,7 +94,7 @@
</span><span class="cx">     return result.toString();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-CSSKeyframeRule::CSSKeyframeRule(StyleKeyframe&amp; keyframe, CSSKeyframesRule* parent)
</del><ins>+CSSKeyframeRule::CSSKeyframeRule(StyleRuleKeyframe&amp; keyframe, CSSKeyframesRule* parent)
</ins><span class="cx">     : CSSRule(0)
</span><span class="cx">     , m_keyframe(keyframe)
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSKeyframeRuleh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSKeyframeRule.h (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSKeyframeRule.h        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/CSSKeyframeRule.h        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -36,20 +36,18 @@
</span><span class="cx"> class StyleRuleCSSStyleDeclaration;
</span><span class="cx"> class CSSKeyframesRule;
</span><span class="cx"> 
</span><del>-// FIXME-NEWPARSER: Rename this to StyleRuleKeyframe
-class StyleKeyframe final : public StyleRuleBase {
</del><ins>+class StyleRuleKeyframe final : public StyleRuleBase {
</ins><span class="cx"> public:
</span><del>-    // FIXME-NEWPARSER: Remove this create function once we get rid of the old parser.
-    static Ref&lt;StyleKeyframe&gt; create(Ref&lt;StyleProperties&gt;&amp;&amp; properties)
</del><ins>+    static Ref&lt;StyleRuleKeyframe&gt; create(Ref&lt;StyleProperties&gt;&amp;&amp; properties)
</ins><span class="cx">     {
</span><del>-        return adoptRef(*new StyleKeyframe(WTFMove(properties)));
</del><ins>+        return adoptRef(*new StyleRuleKeyframe(WTFMove(properties)));
</ins><span class="cx">     }
</span><span class="cx"> 
</span><del>-    static Ref&lt;StyleKeyframe&gt; create(std::unique_ptr&lt;Vector&lt;double&gt;&gt; keys, Ref&lt;StyleProperties&gt;&amp;&amp; properties)
</del><ins>+    static Ref&lt;StyleRuleKeyframe&gt; create(std::unique_ptr&lt;Vector&lt;double&gt;&gt; keys, Ref&lt;StyleProperties&gt;&amp;&amp; properties)
</ins><span class="cx">     {
</span><del>-        return adoptRef(*new StyleKeyframe(WTFMove(keys), WTFMove(properties)));
</del><ins>+        return adoptRef(*new StyleRuleKeyframe(WTFMove(keys), WTFMove(properties)));
</ins><span class="cx">     }
</span><del>-    ~StyleKeyframe();
</del><ins>+    ~StyleRuleKeyframe();
</ins><span class="cx"> 
</span><span class="cx">     String keyText() const;
</span><span class="cx">     bool setKeyText(const String&amp;);
</span><span class="lines">@@ -68,8 +66,8 @@
</span><span class="cx">     String cssText() const;
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    explicit StyleKeyframe(Ref&lt;StyleProperties&gt;&amp;&amp;);
-    StyleKeyframe(std::unique_ptr&lt;Vector&lt;double&gt;&gt;, Ref&lt;StyleProperties&gt;&amp;&amp;);
</del><ins>+    explicit StyleRuleKeyframe(Ref&lt;StyleProperties&gt;&amp;&amp;);
+    StyleRuleKeyframe(std::unique_ptr&lt;Vector&lt;double&gt;&gt;, Ref&lt;StyleProperties&gt;&amp;&amp;);
</ins><span class="cx"> 
</span><span class="cx">     Ref&lt;StyleProperties&gt; m_properties;
</span><span class="cx">     Vector&lt;double&gt; m_keys;
</span><span class="lines">@@ -88,11 +86,11 @@
</span><span class="cx">     CSSStyleDeclaration&amp; style();
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    CSSKeyframeRule(StyleKeyframe&amp;, CSSKeyframesRule* parent);
</del><ins>+    CSSKeyframeRule(StyleRuleKeyframe&amp;, CSSKeyframesRule* parent);
</ins><span class="cx"> 
</span><span class="cx">     CSSRule::Type type() const final { return KEYFRAME_RULE; }
</span><span class="cx"> 
</span><del>-    Ref&lt;StyleKeyframe&gt; m_keyframe;
</del><ins>+    Ref&lt;StyleRuleKeyframe&gt; m_keyframe;
</ins><span class="cx">     mutable RefPtr&lt;StyleRuleCSSStyleDeclaration&gt; m_propertiesCSSOMWrapper;
</span><span class="cx">     
</span><span class="cx">     friend class CSSKeyframesRule;
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSKeyframesRulecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSKeyframesRule.cpp (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSKeyframesRule.cpp        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/CSSKeyframesRule.cpp        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -74,13 +74,13 @@
</span><span class="cx">     m_deferredRules = nullptr;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-const Vector&lt;Ref&lt;StyleKeyframe&gt;&gt;&amp; StyleRuleKeyframes::keyframes() const
</del><ins>+const Vector&lt;Ref&lt;StyleRuleKeyframe&gt;&gt;&amp; StyleRuleKeyframes::keyframes() const
</ins><span class="cx"> {
</span><span class="cx">     parseDeferredRulesIfNeeded();
</span><span class="cx">     return m_keyframes;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void StyleRuleKeyframes::parserAppendKeyframe(RefPtr&lt;StyleKeyframe&gt;&amp;&amp; keyframe)
</del><ins>+void StyleRuleKeyframes::parserAppendKeyframe(RefPtr&lt;StyleRuleKeyframe&gt;&amp;&amp; keyframe)
</ins><span class="cx"> {
</span><span class="cx">     if (!keyframe)
</span><span class="cx">         return;
</span><span class="lines">@@ -87,7 +87,7 @@
</span><span class="cx">     m_keyframes.append(keyframe.releaseNonNull());
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void StyleRuleKeyframes::wrapperAppendKeyframe(Ref&lt;StyleKeyframe&gt;&amp;&amp; keyframe)
</del><ins>+void StyleRuleKeyframes::wrapperAppendKeyframe(Ref&lt;StyleRuleKeyframe&gt;&amp;&amp; keyframe)
</ins><span class="cx"> {
</span><span class="cx">     parseDeferredRulesIfNeeded();
</span><span class="cx">     m_keyframes.append(WTFMove(keyframe));
</span><span class="lines">@@ -142,7 +142,7 @@
</span><span class="cx">     ASSERT(m_childRuleCSSOMWrappers.size() == m_keyframesRule-&gt;keyframes().size());
</span><span class="cx"> 
</span><span class="cx">     CSSParser parser(parserContext());
</span><del>-    RefPtr&lt;StyleKeyframe&gt; keyframe = parser.parseKeyframeRule(ruleText);
</del><ins>+    RefPtr&lt;StyleRuleKeyframe&gt; keyframe = parser.parseKeyframeRule(ruleText);
</ins><span class="cx">     if (!keyframe)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="lines">@@ -215,7 +215,7 @@
</span><span class="cx">     ASSERT(m_childRuleCSSOMWrappers.size() == m_keyframesRule-&gt;keyframes().size());
</span><span class="cx">     RefPtr&lt;CSSKeyframeRule&gt;&amp; rule = m_childRuleCSSOMWrappers[index];
</span><span class="cx">     if (!rule)
</span><del>-        rule = adoptRef(new CSSKeyframeRule(const_cast&lt;StyleKeyframe&amp;&gt;(m_keyframesRule-&gt;keyframes()[index].get()), const_cast&lt;CSSKeyframesRule*&gt;(this)));
</del><ins>+        rule = adoptRef(new CSSKeyframeRule(const_cast&lt;StyleRuleKeyframe&amp;&gt;(m_keyframesRule-&gt;keyframes()[index].get()), const_cast&lt;CSSKeyframesRule*&gt;(this)));
</ins><span class="cx"> 
</span><span class="cx">     return rule.get(); 
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSKeyframesRuleh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSKeyframesRule.h (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSKeyframesRule.h        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/CSSKeyframesRule.h        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -34,7 +34,7 @@
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><span class="cx"> class CSSRuleList;
</span><del>-class StyleKeyframe;
</del><ins>+class StyleRuleKeyframe;
</ins><span class="cx"> class CSSKeyframeRule;
</span><span class="cx"> 
</span><span class="cx"> class StyleRuleKeyframes final : public StyleRuleBase {
</span><span class="lines">@@ -44,14 +44,14 @@
</span><span class="cx">     
</span><span class="cx">     ~StyleRuleKeyframes();
</span><span class="cx">     
</span><del>-    const Vector&lt;Ref&lt;StyleKeyframe&gt;&gt;&amp; keyframes() const;
-    const Vector&lt;Ref&lt;StyleKeyframe&gt;&gt;* keyframesWithoutDeferredParsing() const
</del><ins>+    const Vector&lt;Ref&lt;StyleRuleKeyframe&gt;&gt;&amp; keyframes() const;
+    const Vector&lt;Ref&lt;StyleRuleKeyframe&gt;&gt;* keyframesWithoutDeferredParsing() const
</ins><span class="cx">     {
</span><span class="cx">         return !m_deferredRules ? &amp;m_keyframes : nullptr;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    void parserAppendKeyframe(RefPtr&lt;StyleKeyframe&gt;&amp;&amp;);
-    void wrapperAppendKeyframe(Ref&lt;StyleKeyframe&gt;&amp;&amp;);
</del><ins>+    void parserAppendKeyframe(RefPtr&lt;StyleRuleKeyframe&gt;&amp;&amp;);
+    void wrapperAppendKeyframe(Ref&lt;StyleRuleKeyframe&gt;&amp;&amp;);
</ins><span class="cx">     void wrapperRemoveKeyframe(unsigned);
</span><span class="cx"> 
</span><span class="cx">     const AtomicString&amp; name() const { return m_name; }
</span><span class="lines">@@ -68,7 +68,7 @@
</span><span class="cx"> 
</span><span class="cx">     void parseDeferredRulesIfNeeded() const;
</span><span class="cx">     
</span><del>-    mutable Vector&lt;Ref&lt;StyleKeyframe&gt;&gt; m_keyframes;
</del><ins>+    mutable Vector&lt;Ref&lt;StyleRuleKeyframe&gt;&gt; m_keyframes;
</ins><span class="cx">     AtomicString m_name;
</span><span class="cx">     
</span><span class="cx">     mutable std::unique_ptr&lt;DeferredStyleGroupRuleList&gt; m_deferredRules;
</span></span></pre></div>
<a id="trunkSourceWebCorecssStyleResolvercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/StyleResolver.cpp (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleResolver.cpp        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/StyleResolver.cpp        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -444,7 +444,7 @@
</span><span class="cx">     return { state.takeStyle(), WTFMove(elementStyleRelations) };
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-std::unique_ptr&lt;RenderStyle&gt; StyleResolver::styleForKeyframe(const RenderStyle* elementStyle, const StyleKeyframe* keyframe, KeyframeValue&amp; keyframeValue)
</del><ins>+std::unique_ptr&lt;RenderStyle&gt; StyleResolver::styleForKeyframe(const RenderStyle* elementStyle, const StyleRuleKeyframe* keyframe, KeyframeValue&amp; keyframeValue)
</ins><span class="cx"> {
</span><span class="cx">     RELEASE_ASSERT(!m_isDeleted);
</span><span class="cx"> 
</span><span class="lines">@@ -516,7 +516,7 @@
</span><span class="cx">     const StyleRuleKeyframes* keyframesRule = it-&gt;value.get();
</span><span class="cx"> 
</span><span class="cx">     auto* keyframes = &amp;keyframesRule-&gt;keyframes();
</span><del>-    Vector&lt;Ref&lt;StyleKeyframe&gt;&gt; newKeyframesIfNecessary;
</del><ins>+    Vector&lt;Ref&lt;StyleRuleKeyframe&gt;&gt; newKeyframesIfNecessary;
</ins><span class="cx"> 
</span><span class="cx">     bool hasDuplicateKeys = false;
</span><span class="cx">     HashSet&lt;double&gt; keyframeKeys;
</span><span class="lines">@@ -535,7 +535,7 @@
</span><span class="cx">     // to copy the HashMap into a Vector.
</span><span class="cx">     if (hasDuplicateKeys) {
</span><span class="cx">         // Merge duplicate key times.
</span><del>-        HashMap&lt;double, RefPtr&lt;StyleKeyframe&gt;&gt; keyframesMap;
</del><ins>+        HashMap&lt;double, RefPtr&lt;StyleRuleKeyframe&gt;&gt; keyframesMap;
</ins><span class="cx"> 
</span><span class="cx">         for (auto&amp; originalKeyframe : keyframesRule-&gt;keyframes()) {
</span><span class="cx">             for (auto key : originalKeyframe-&gt;keys()) {
</span><span class="lines">@@ -542,10 +542,10 @@
</span><span class="cx">                 if (auto keyframe = keyframesMap.get(key))
</span><span class="cx">                     keyframe-&gt;mutableProperties().mergeAndOverrideOnConflict(originalKeyframe-&gt;properties());
</span><span class="cx">                 else {
</span><del>-                    auto styleKeyframe = StyleKeyframe::create(MutableStyleProperties::create());
-                    styleKeyframe.ptr()-&gt;setKey(key);
-                    styleKeyframe.ptr()-&gt;mutableProperties().mergeAndOverrideOnConflict(originalKeyframe-&gt;properties());
-                    keyframesMap.set(key, styleKeyframe.ptr());
</del><ins>+                    auto StyleRuleKeyframe = StyleRuleKeyframe::create(MutableStyleProperties::create());
+                    StyleRuleKeyframe.ptr()-&gt;setKey(key);
+                    StyleRuleKeyframe.ptr()-&gt;mutableProperties().mergeAndOverrideOnConflict(originalKeyframe-&gt;properties());
+                    keyframesMap.set(key, StyleRuleKeyframe.ptr());
</ins><span class="cx">                 }
</span><span class="cx">             }
</span><span class="cx">         }
</span><span class="lines">@@ -573,9 +573,9 @@
</span><span class="cx">     // If the 0% keyframe is missing, create it (but only if there is at least one other keyframe).
</span><span class="cx">     int initialListSize = list.size();
</span><span class="cx">     if (initialListSize &gt; 0 &amp;&amp; list[0].key()) {
</span><del>-        static StyleKeyframe* zeroPercentKeyframe;
</del><ins>+        static StyleRuleKeyframe* zeroPercentKeyframe;
</ins><span class="cx">         if (!zeroPercentKeyframe) {
</span><del>-            zeroPercentKeyframe = &amp;StyleKeyframe::create(MutableStyleProperties::create()).leakRef();
</del><ins>+            zeroPercentKeyframe = &amp;StyleRuleKeyframe::create(MutableStyleProperties::create()).leakRef();
</ins><span class="cx">             zeroPercentKeyframe-&gt;setKey(0);
</span><span class="cx">         }
</span><span class="cx">         KeyframeValue keyframeValue(0, nullptr);
</span><span class="lines">@@ -585,9 +585,9 @@
</span><span class="cx"> 
</span><span class="cx">     // If the 100% keyframe is missing, create it (but only if there is at least one other keyframe).
</span><span class="cx">     if (initialListSize &gt; 0 &amp;&amp; (list[list.size() - 1].key() != 1)) {
</span><del>-        static StyleKeyframe* hundredPercentKeyframe;
</del><ins>+        static StyleRuleKeyframe* hundredPercentKeyframe;
</ins><span class="cx">         if (!hundredPercentKeyframe) {
</span><del>-            hundredPercentKeyframe = &amp;StyleKeyframe::create(MutableStyleProperties::create()).leakRef();
</del><ins>+            hundredPercentKeyframe = &amp;StyleRuleKeyframe::create(MutableStyleProperties::create()).leakRef();
</ins><span class="cx">             hundredPercentKeyframe-&gt;setKey(1);
</span><span class="cx">         }
</span><span class="cx">         KeyframeValue keyframeValue(1, nullptr);
</span></span></pre></div>
<a id="trunkSourceWebCorecssStyleResolverh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/StyleResolver.h (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleResolver.h        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/StyleResolver.h        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -75,7 +75,7 @@
</span><span class="cx"> class StyleCachedImage;
</span><span class="cx"> class StyleGeneratedImage;
</span><span class="cx"> class StyleImage;
</span><del>-class StyleKeyframe;
</del><ins>+class StyleRuleKeyframe;
</ins><span class="cx"> class StyleProperties;
</span><span class="cx"> class StyleRule;
</span><span class="cx"> class StyleRuleKeyframes;
</span><span class="lines">@@ -162,7 +162,7 @@
</span><span class="cx">     void setOverrideDocumentElementStyle(RenderStyle* style) { m_overrideDocumentElementStyle = style; }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    std::unique_ptr&lt;RenderStyle&gt; styleForKeyframe(const RenderStyle*, const StyleKeyframe*, KeyframeValue&amp;);
</del><ins>+    std::unique_ptr&lt;RenderStyle&gt; styleForKeyframe(const RenderStyle*, const StyleRuleKeyframe*, KeyframeValue&amp;);
</ins><span class="cx"> 
</span><span class="cx"> public:
</span><span class="cx">     // These methods will give back the set of rules that matched for a given element (or a pseudo-element).
</span></span></pre></div>
<a id="trunkSourceWebCorecssStyleRulecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/StyleRule.cpp (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleRule.cpp        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/StyleRule.cpp        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -95,7 +95,7 @@
</span><span class="cx">         delete downcast&lt;StyleRuleNamespace&gt;(this);
</span><span class="cx">         return;
</span><span class="cx">     case Keyframe:
</span><del>-        delete downcast&lt;StyleKeyframe&gt;(this);
</del><ins>+        delete downcast&lt;StyleRuleKeyframe&gt;(this);
</ins><span class="cx">         return;
</span><span class="cx">     case Charset:
</span><span class="cx">         delete downcast&lt;StyleRuleCharset&gt;(this);
</span></span></pre></div>
<a id="trunkSourceWebCorecssStyleRuleh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/StyleRule.h (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleRule.h        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/StyleRule.h        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx"> class CSSStyleSheet;
</span><span class="cx"> class MediaQuerySet;
</span><span class="cx"> class MutableStyleProperties;
</span><del>-class StyleKeyframe;
</del><ins>+class StyleRuleKeyframe;
</ins><span class="cx"> class StyleProperties;
</span><span class="cx"> class StyleRuleKeyframes;
</span><span class="cx">     
</span><span class="lines">@@ -49,7 +49,7 @@
</span><span class="cx">         FontFace,
</span><span class="cx">         Page,
</span><span class="cx">         Keyframes,
</span><del>-        Keyframe, // Not used. These are internally non-rule StyleKeyframe objects.
</del><ins>+        Keyframe, // Not used. These are internally non-rule StyleRuleKeyframe objects.
</ins><span class="cx">         Namespace,
</span><span class="cx">         Supports = 12,
</span><span class="cx"> #if ENABLE(CSS_DEVICE_ADAPTATION)
</span><span class="lines">@@ -393,7 +393,7 @@
</span><span class="cx">     static bool isType(const WebCore::StyleRuleBase&amp; rule) { return rule.isNamespaceRule(); }
</span><span class="cx"> SPECIALIZE_TYPE_TRAITS_END()
</span><span class="cx"> 
</span><del>-SPECIALIZE_TYPE_TRAITS_BEGIN(WebCore::StyleKeyframe)
</del><ins>+SPECIALIZE_TYPE_TRAITS_BEGIN(WebCore::StyleRuleKeyframe)
</ins><span class="cx"> static bool isType(const WebCore::StyleRuleBase&amp; rule) { return rule.isKeyframeRule(); }
</span><span class="cx"> SPECIALIZE_TYPE_TRAITS_END()
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorecssparserCSSParsercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/parser/CSSParser.cpp (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/parser/CSSParser.cpp        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/parser/CSSParser.cpp        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -150,10 +150,10 @@
</span><span class="cx">     return CSSParserImpl::parseRule(string, context, sheet, CSSParserImpl::AllowImportRules);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-RefPtr&lt;StyleKeyframe&gt; CSSParser::parseKeyframeRule(const String&amp; string)
</del><ins>+RefPtr&lt;StyleRuleKeyframe&gt; CSSParser::parseKeyframeRule(const String&amp; string)
</ins><span class="cx"> {
</span><span class="cx">     RefPtr&lt;StyleRuleBase&gt; keyframe = CSSParserImpl::parseRule(string, m_context, nullptr, CSSParserImpl::KeyframeRules);
</span><del>-    return downcast&lt;StyleKeyframe&gt;(keyframe.get());
</del><ins>+    return downcast&lt;StyleRuleKeyframe&gt;(keyframe.get());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool CSSParser::parseSupportsCondition(const String&amp; condition)
</span></span></pre></div>
<a id="trunkSourceWebCorecssparserCSSParserh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/parser/CSSParser.h (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/parser/CSSParser.h        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/parser/CSSParser.h        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -36,7 +36,7 @@
</span><span class="cx"> class ImmutableStyleProperties;
</span><span class="cx"> class MutableStyleProperties;
</span><span class="cx"> class StyleRuleBase;
</span><del>-class StyleKeyframe;
</del><ins>+class StyleRuleKeyframe;
</ins><span class="cx"> class StyleSheetContents;
</span><span class="cx"> 
</span><span class="cx"> class CSSParser {
</span><span class="lines">@@ -55,7 +55,7 @@
</span><span class="cx">     
</span><span class="cx">     static RefPtr&lt;StyleRuleBase&gt; parseRule(const CSSParserContext&amp;, StyleSheetContents*, const String&amp;);
</span><span class="cx">     
</span><del>-    RefPtr&lt;StyleKeyframe&gt; parseKeyframeRule(const String&amp;);
</del><ins>+    RefPtr&lt;StyleRuleKeyframe&gt; parseKeyframeRule(const String&amp;);
</ins><span class="cx">     static std::unique_ptr&lt;Vector&lt;double&gt;&gt; parseKeyframeKeyList(const String&amp;);
</span><span class="cx">     
</span><span class="cx">     bool parseSupportsCondition(const String&amp;);
</span></span></pre></div>
<a id="trunkSourceWebCorecssparserCSSParserImplcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/parser/CSSParserImpl.cpp (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/parser/CSSParserImpl.cpp        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/parser/CSSParserImpl.cpp        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -191,7 +191,7 @@
</span><span class="cx">         return;
</span><span class="cx">     CSSParserImpl parser(deferredParser);
</span><span class="cx">     parser.consumeRuleList(tokenRange, KeyframesRuleList, [&amp;keyframeRule](const RefPtr&lt;StyleRuleBase&gt;&amp; keyframe) {
</span><del>-        keyframeRule.parserAppendKeyframe(downcast&lt;const StyleKeyframe&gt;(keyframe.get()));
</del><ins>+        keyframeRule.parserAppendKeyframe(downcast&lt;const StyleRuleKeyframe&gt;(keyframe.get()));
</ins><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -649,7 +649,7 @@
</span><span class="cx"> 
</span><span class="cx">     RefPtr&lt;StyleRuleKeyframes&gt; keyframeRule = StyleRuleKeyframes::create(name);
</span><span class="cx">     consumeRuleList(block, KeyframesRuleList, [keyframeRule](const RefPtr&lt;StyleRuleBase&gt;&amp; keyframe) {
</span><del>-        keyframeRule-&gt;parserAppendKeyframe(downcast&lt;const StyleKeyframe&gt;(keyframe.get()));
</del><ins>+        keyframeRule-&gt;parserAppendKeyframe(downcast&lt;const StyleRuleKeyframe&gt;(keyframe.get()));
</ins><span class="cx">     });
</span><span class="cx"> 
</span><span class="cx">     // FIXME-NEWPARSER: Find out why this is done. Behavior difference when prefixed?
</span><span class="lines">@@ -714,7 +714,7 @@
</span><span class="cx"> }
</span><span class="cx"> */
</span><span class="cx">     
</span><del>-RefPtr&lt;StyleKeyframe&gt; CSSParserImpl::consumeKeyframeStyleRule(CSSParserTokenRange prelude, CSSParserTokenRange block)
</del><ins>+RefPtr&lt;StyleRuleKeyframe&gt; CSSParserImpl::consumeKeyframeStyleRule(CSSParserTokenRange prelude, CSSParserTokenRange block)
</ins><span class="cx"> {
</span><span class="cx">     std::unique_ptr&lt;Vector&lt;double&gt;&gt; keyList = consumeKeyframeKeyList(prelude);
</span><span class="cx">     if (!keyList)
</span><span class="lines">@@ -726,7 +726,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     consumeDeclarationList(block, StyleRule::Keyframe);
</span><del>-    return StyleKeyframe::create(WTFMove(keyList), createStyleProperties(m_parsedProperties, m_context.mode));
</del><ins>+    return StyleRuleKeyframe::create(WTFMove(keyList), createStyleProperties(m_parsedProperties, m_context.mode));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> static void observeSelectors(CSSParserObserverWrapper&amp; wrapper, CSSParserTokenRange selectors)
</span></span></pre></div>
<a id="trunkSourceWebCorecssparserCSSParserImplh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/parser/CSSParserImpl.h (209837 => 209838)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/parser/CSSParserImpl.h        2016-12-14 23:01:17 UTC (rev 209837)
+++ trunk/Source/WebCore/css/parser/CSSParserImpl.h        2016-12-14 23:15:24 UTC (rev 209838)
</span><span class="lines">@@ -48,7 +48,7 @@
</span><span class="cx"> class CSSParserObserverWrapper;
</span><span class="cx"> class CSSSelectorList;
</span><span class="cx"> class CSSTokenizer;
</span><del>-class StyleKeyframe;
</del><ins>+class StyleRuleKeyframe;
</ins><span class="cx"> class StyleRule;
</span><span class="cx"> class StyleRuleBase;
</span><span class="cx"> class StyleRuleCharset;
</span><span class="lines">@@ -142,7 +142,7 @@
</span><span class="cx">     // FIXME-NEWPARSER: Support &quot;apply&quot;
</span><span class="cx">     // void consumeApplyRule(CSSParserTokenRange prelude);
</span><span class="cx"> 
</span><del>-    RefPtr&lt;StyleKeyframe&gt; consumeKeyframeStyleRule(CSSParserTokenRange prelude, CSSParserTokenRange block);
</del><ins>+    RefPtr&lt;StyleRuleKeyframe&gt; consumeKeyframeStyleRule(CSSParserTokenRange prelude, CSSParserTokenRange block);
</ins><span class="cx">     RefPtr&lt;StyleRule&gt; consumeStyleRule(CSSParserTokenRange prelude, CSSParserTokenRange block);
</span><span class="cx"> 
</span><span class="cx">     void consumeDeclarationList(CSSParserTokenRange, StyleRule::Type);
</span></span></pre>
</div>
</div>

</body>
</html>