Title: [98963] trunk/Source/WebCore
Revision
98963
Author
[email protected]
Date
2011-11-01 08:23:24 -0700 (Tue, 01 Nov 2011)

Log Message

CSSRule: Devirtualize addSubresourceStyleURLs()
https://bugs.webkit.org/show_bug.cgi?id=71285

Reviewed by Antti Koivisto.

Move addSubresourceStyleURLs() into the rules that actually implement it.
Add type checks and casts at the (only) call site.

* css/CSSFontFaceRule.h:
* css/CSSImportRule.h:
* css/CSSRule.h:
* css/CSSStyleRule.h:
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::addSubresourceStyleURLs):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (98962 => 98963)


--- trunk/Source/WebCore/ChangeLog	2011-11-01 15:19:20 UTC (rev 98962)
+++ trunk/Source/WebCore/ChangeLog	2011-11-01 15:23:24 UTC (rev 98963)
@@ -1,3 +1,20 @@
+2011-11-01  Andreas Kling  <[email protected]>
+
+        CSSRule: Devirtualize addSubresourceStyleURLs()
+        https://bugs.webkit.org/show_bug.cgi?id=71285
+
+        Reviewed by Antti Koivisto.
+
+        Move addSubresourceStyleURLs() into the rules that actually implement it.
+        Add type checks and casts at the (only) call site.
+
+        * css/CSSFontFaceRule.h:
+        * css/CSSImportRule.h:
+        * css/CSSRule.h:
+        * css/CSSStyleRule.h:
+        * css/CSSStyleSheet.cpp:
+        (WebCore::CSSStyleSheet::addSubresourceStyleURLs):
+
 2011-11-01  Chris Fleizach  <[email protected]>
 
         AX: some popup buttons not announced by VoiceOver

Modified: trunk/Source/WebCore/css/CSSFontFaceRule.h (98962 => 98963)


--- trunk/Source/WebCore/css/CSSFontFaceRule.h	2011-11-01 15:19:20 UTC (rev 98962)
+++ trunk/Source/WebCore/css/CSSFontFaceRule.h	2011-11-01 15:23:24 UTC (rev 98963)
@@ -49,7 +49,7 @@
 
     void setDeclaration(PassRefPtr<CSSMutableStyleDeclaration>);
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>& urls);
+    void addSubresourceStyleURLs(ListHashSet<KURL>& urls);
 
 private:
     CSSFontFaceRule(CSSStyleSheet* parent);

Modified: trunk/Source/WebCore/css/CSSImportRule.h (98962 => 98963)


--- trunk/Source/WebCore/css/CSSImportRule.h	2011-11-01 15:19:20 UTC (rev 98962)
+++ trunk/Source/WebCore/css/CSSImportRule.h	2011-11-01 15:23:24 UTC (rev 98963)
@@ -52,7 +52,7 @@
     // Not part of the CSSOM
     bool isLoading() const;
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>& urls);
+    void addSubresourceStyleURLs(ListHashSet<KURL>& urls);
 
     void requestStyleSheet();
 

Modified: trunk/Source/WebCore/css/CSSRule.h (98962 => 98963)


--- trunk/Source/WebCore/css/CSSRule.h	2011-11-01 15:19:20 UTC (rev 98962)
+++ trunk/Source/WebCore/css/CSSRule.h	2011-11-01 15:23:24 UTC (rev 98963)
@@ -94,8 +94,6 @@
     virtual String cssText() const = 0;
     void setCssText(const String&, ExceptionCode&);
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>&) { }
-
     KURL baseURL() const
     {
         if (CSSStyleSheet* parentSheet = parentStyleSheet())

Modified: trunk/Source/WebCore/css/CSSStyleRule.h (98962 => 98963)


--- trunk/Source/WebCore/css/CSSStyleRule.h	2011-11-01 15:19:20 UTC (rev 98962)
+++ trunk/Source/WebCore/css/CSSStyleRule.h	2011-11-01 15:23:24 UTC (rev 98963)
@@ -56,7 +56,7 @@
     const CSSSelectorList& selectorList() const { return m_selectorList; }
     CSSMutableStyleDeclaration* declaration() { return m_style.get(); }
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>& urls);
+    void addSubresourceStyleURLs(ListHashSet<KURL>& urls);
 
     int sourceLine() { return m_sourceLine; }
 

Modified: trunk/Source/WebCore/css/CSSStyleSheet.cpp (98962 => 98963)


--- trunk/Source/WebCore/css/CSSStyleSheet.cpp	2011-11-01 15:19:20 UTC (rev 98962)
+++ trunk/Source/WebCore/css/CSSStyleSheet.cpp	2011-11-01 15:23:24 UTC (rev 98963)
@@ -21,10 +21,12 @@
 #include "config.h"
 #include "CSSStyleSheet.h"
 
+#include "CSSFontFaceRule.h"
 #include "CSSImportRule.h"
 #include "CSSNamespace.h"
 #include "CSSParser.h"
 #include "CSSRuleList.h"
+#include "CSSStyleRule.h"
 #include "Document.h"
 #include "ExceptionCode.h"
 #include "HTMLNames.h"
@@ -296,8 +298,11 @@
             if (rule->isImportRule()) {
                 if (CSSStyleSheet* ruleStyleSheet = static_cast<CSSImportRule*>(rule)->styleSheet())
                     styleSheetQueue.append(ruleStyleSheet);
-            }
-            rule->addSubresourceStyleURLs(urls);
+                static_cast<CSSImportRule*>(rule)->addSubresourceStyleURLs(urls);
+            } else if (rule->isFontFaceRule())
+                static_cast<CSSFontFaceRule*>(rule)->addSubresourceStyleURLs(urls);
+            else if (rule->isStyleRule() || rule->isPageRule())
+                static_cast<CSSStyleRule*>(rule)->addSubresourceStyleURLs(urls);
         }
     }
 }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to