Title: [239041] trunk/Source/WebCore
Revision
239041
Author
an...@apple.com
Date
2018-12-10 12:42:53 -0800 (Mon, 10 Dec 2018)

Log Message

Document should throttle style recalc even when m_pendingStyleRecalcShouldForce is true.
https://bugs.webkit.org/show_bug.cgi?id=191695

Reviewed by Zalan Bujtas.

* dom/Document.cpp:
(WebCore::Document::scheduleStyleRecalc):

Don't test for m_pendingStyleRecalcShouldForce.

(WebCore::Document::hasPendingStyleRecalc const):
(WebCore::Document::hasPendingForcedStyleRecalc const):

Don't base the pending status of these function on whether the timer is running.
Instead check if the style is invalid.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (239040 => 239041)


--- trunk/Source/WebCore/ChangeLog	2018-12-10 20:31:18 UTC (rev 239040)
+++ trunk/Source/WebCore/ChangeLog	2018-12-10 20:42:53 UTC (rev 239041)
@@ -1,3 +1,21 @@
+2018-12-10  Antti Koivisto  <an...@apple.com>
+
+        Document should throttle style recalc even when m_pendingStyleRecalcShouldForce is true.
+        https://bugs.webkit.org/show_bug.cgi?id=191695
+
+        Reviewed by Zalan Bujtas.
+
+        * dom/Document.cpp:
+        (WebCore::Document::scheduleStyleRecalc):
+
+        Don't test for m_pendingStyleRecalcShouldForce.
+
+        (WebCore::Document::hasPendingStyleRecalc const):
+        (WebCore::Document::hasPendingForcedStyleRecalc const):
+
+        Don't base the pending status of these function on whether the timer is running.
+        Instead check if the style is invalid.
+
 2018-12-10  Rob Buis  <rb...@igalia.com>
 
         XMLHttpRequest removes spaces from content-types before processing

Modified: trunk/Source/WebCore/dom/Document.cpp (239040 => 239041)


--- trunk/Source/WebCore/dom/Document.cpp	2018-12-10 20:31:18 UTC (rev 239040)
+++ trunk/Source/WebCore/dom/Document.cpp	2018-12-10 20:42:53 UTC (rev 239041)
@@ -1806,8 +1806,6 @@
     invalidateAccessKeyMap();
 
     auto shouldThrottleStyleRecalc = [&] {
-        if (m_pendingStyleRecalcShouldForce)
-            return false;
         if (!view() || !view()->isVisuallyNonEmpty())
             return false;
         if (!page() || !page()->chrome().client().layerFlushThrottlingIsActive())
@@ -1833,12 +1831,12 @@
 
 bool Document::hasPendingStyleRecalc() const
 {
-    return m_styleRecalcTimer.isActive() && !m_inStyleRecalc;
+    return needsStyleRecalc() && !m_inStyleRecalc;
 }
 
 bool Document::hasPendingForcedStyleRecalc() const
 {
-    return m_styleRecalcTimer.isActive() && m_pendingStyleRecalcShouldForce;
+    return hasPendingStyleRecalc() && m_pendingStyleRecalcShouldForce;
 }
 
 void Document::resolveStyle(ResolveStyleType type)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to