Title: [124603] trunk/Source/WebKit2
- Revision
- 124603
- Author
- kbal...@webkit.org
- Date
- 2012-08-03 06:06:16 -0700 (Fri, 03 Aug 2012)
Log Message
[WK2] LayerTreeCoordinator can disallow tile updates in forceRepaint
https://bugs.webkit.org/show_bug.cgi?id=93077
Reviewed by Jocelyn Turcotte.
Force tile updates when doing a forced repaint.
* WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::forceRepaint):
(WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):
* WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:
(LayerTreeCoordinator):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (124602 => 124603)
--- trunk/Source/WebKit2/ChangeLog 2012-08-03 12:56:21 UTC (rev 124602)
+++ trunk/Source/WebKit2/ChangeLog 2012-08-03 13:06:16 UTC (rev 124603)
@@ -1,3 +1,19 @@
+2012-08-03 Balazs Kelemen <kbal...@webkit.org>
+
+ [WK2] LayerTreeCoordinator can disallow tile updates in forceRepaint
+ https://bugs.webkit.org/show_bug.cgi?id=93077
+
+ Reviewed by Jocelyn Turcotte.
+
+ Force tile updates when doing a forced repaint.
+
+ * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
+ (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
+ (WebKit::LayerTreeCoordinator::forceRepaint):
+ (WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):
+ * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:
+ (LayerTreeCoordinator):
+
2012-08-02 Carlos Garcia Campos <cgar...@igalia.com>
[GTK] Inspector should set a default attached height before being attached
Modified: trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp (124602 => 124603)
--- trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp 2012-08-03 12:56:21 UTC (rev 124602)
+++ trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp 2012-08-03 13:06:16 UTC (rev 124603)
@@ -44,6 +44,7 @@
#include <WebCore/RenderLayerCompositor.h>
#include <WebCore/RenderView.h>
#include <WebCore/Settings.h>
+#include <wtf/TemporaryChange.h>
using namespace WebCore;
@@ -77,6 +78,7 @@
, m_shouldSyncRootLayer(true)
, m_layerFlushTimer(this, &LayerTreeCoordinator::layerFlushTimerFired)
, m_layerFlushSchedulingEnabled(true)
+ , m_inForceRepaint(false)
{
// Create a root layer.
m_rootLayer = GraphicsLayer::create(this);
@@ -174,6 +176,8 @@
void LayerTreeCoordinator::forceRepaint()
{
+ WTF::TemporaryChange<bool> inForceRepaint(m_inForceRepaint, true);
+
// This is necessary for running layout tests. Since in this case we are not waiting for a UIProcess to reply nicely.
// Instead we are just triggering forceRepaint. But we still want to have the scripted animation callbacks being executed.
syncDisplayState();
@@ -575,7 +579,7 @@
bool LayerTreeCoordinator::layerTreeTileUpdatesAllowed() const
{
- return !m_isSuspended && !m_waitingForUIProcess;
+ return m_inForceRepaint || (!m_isSuspended && !m_waitingForUIProcess);
}
void LayerTreeCoordinator::purgeBackingStores()
Modified: trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h (124602 => 124603)
--- trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h 2012-08-03 12:56:21 UTC (rev 124602)
+++ trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h 2012-08-03 13:06:16 UTC (rev 124603)
@@ -137,6 +137,7 @@
void layerFlushTimerFired(WebCore::Timer<LayerTreeCoordinator>*);
WebCore::Timer<LayerTreeCoordinator> m_layerFlushTimer;
bool m_layerFlushSchedulingEnabled;
+ bool m_inForceRepaint;
};
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes