Title: [116799] trunk/Source/WebCore
- Revision
- 116799
- Author
- [email protected]
- Date
- 2012-05-11 13:16:47 -0700 (Fri, 11 May 2012)
Log Message
FrameView->m_lastPaintTime is not updated in the tiled drawing case
https://bugs.webkit.org/show_bug.cgi?id=86246
<rdar://problem/11248475>
Reviewed by Simon Fraser.
Update FrameView's m_lastPaintTime from RenderLayerBacking::paintContents
if the RenderLayerBacking is backing a tiled drawing layer.
In the future we might want to consider updating m_lastPaintTime when any
compositing layer is painted into, but this change gets us on par with the
non-tiled-drawing case as it stands now.
No new tests.
* page/FrameView.h:
(WebCore::FrameView::setLastPaintTime):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintContents):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (116798 => 116799)
--- trunk/Source/WebCore/ChangeLog 2012-05-11 20:09:13 UTC (rev 116798)
+++ trunk/Source/WebCore/ChangeLog 2012-05-11 20:16:47 UTC (rev 116799)
@@ -1,3 +1,25 @@
+2012-05-11 Tim Horton <[email protected]>
+
+ FrameView->m_lastPaintTime is not updated in the tiled drawing case
+ https://bugs.webkit.org/show_bug.cgi?id=86246
+ <rdar://problem/11248475>
+
+ Reviewed by Simon Fraser.
+
+ Update FrameView's m_lastPaintTime from RenderLayerBacking::paintContents
+ if the RenderLayerBacking is backing a tiled drawing layer.
+
+ In the future we might want to consider updating m_lastPaintTime when any
+ compositing layer is painted into, but this change gets us on par with the
+ non-tiled-drawing case as it stands now.
+
+ No new tests.
+
+ * page/FrameView.h:
+ (WebCore::FrameView::setLastPaintTime):
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::paintContents):
+
2012-05-11 Shezan Baig <[email protected]>
Add helper function for node()->rootEditableElement() == node()
Modified: trunk/Source/WebCore/page/FrameView.h (116798 => 116799)
--- trunk/Source/WebCore/page/FrameView.h 2012-05-11 20:09:13 UTC (rev 116798)
+++ trunk/Source/WebCore/page/FrameView.h 2012-05-11 20:16:47 UTC (rev 116799)
@@ -242,6 +242,7 @@
PaintBehavior paintBehavior() const;
bool isPainting() const;
bool hasEverPainted() const { return m_lastPaintTime; }
+ void setLastPaintTime(double lastPaintTime) { m_lastPaintTime = lastPaintTime; }
void setNodeToDraw(Node*);
virtual void paintOverhangAreas(GraphicsContext*, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect);
Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (116798 => 116799)
--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2012-05-11 20:09:13 UTC (rev 116798)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2012-05-11 20:16:47 UTC (rev 116799)
@@ -1206,6 +1206,9 @@
// We have to use the same root as for hit testing, because both methods can compute and cache clipRects.
paintIntoLayer(m_owningLayer, &context, dirtyRect, PaintBehaviorNormal, paintingPhase, renderer());
+ if (m_usingTiledCacheLayer)
+ m_owningLayer->renderer()->frame()->view()->setLastPaintTime(currentTime());
+
InspectorInstrumentation::didPaint(cookie);
} else if (graphicsLayer == layerForHorizontalScrollbar()) {
paintScrollbar(m_owningLayer->horizontalScrollbar(), context, clip);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes