Title: [148111] trunk/Source/WebCore
Revision
148111
Author
[email protected]
Date
2013-04-10 11:07:41 -0700 (Wed, 10 Apr 2013)

Log Message

Use minimal tiles during live resize
https://bugs.webkit.org/show_bug.cgi?id=114364

Reviewed by Darin Adler.

We currently update non-visible speculative tiles during resizing. We should just drop them.

* page/FrameView.cpp:
(WebCore::FrameView::willStartLiveResize):
(WebCore::FrameView::willEndLiveResize):
* page/FrameView.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::computeTileCoverage):
        
    Use minimal coverage in live resize state.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (148110 => 148111)


--- trunk/Source/WebCore/ChangeLog	2013-04-10 18:05:41 UTC (rev 148110)
+++ trunk/Source/WebCore/ChangeLog	2013-04-10 18:07:41 UTC (rev 148111)
@@ -1,3 +1,21 @@
+2013-04-10  Antti Koivisto  <[email protected]>
+
+        Use minimal tiles during live resize
+        https://bugs.webkit.org/show_bug.cgi?id=114364
+
+        Reviewed by Darin Adler.
+
+        We currently update non-visible speculative tiles during resizing. We should just drop them.
+
+        * page/FrameView.cpp:
+        (WebCore::FrameView::willStartLiveResize):
+        (WebCore::FrameView::willEndLiveResize):
+        * page/FrameView.h:
+        * rendering/RenderLayerBacking.cpp:
+        (WebCore::computeTileCoverage):
+        
+            Use minimal coverage in live resize state.
+
 2013-04-10  Victor Costan  <[email protected]>
 
         Blob content type normalization.

Modified: trunk/Source/WebCore/page/FrameView.cpp (148110 => 148111)


--- trunk/Source/WebCore/page/FrameView.cpp	2013-04-10 18:05:41 UTC (rev 148110)
+++ trunk/Source/WebCore/page/FrameView.cpp	2013-04-10 18:07:41 UTC (rev 148111)
@@ -2780,6 +2780,12 @@
     sendResizeEvent();
 }
 
+void FrameView::willStartLiveResize()
+{
+    ScrollView::willStartLiveResize();
+    adjustTiledBackingCoverage();
+}
+    
 void FrameView::willEndLiveResize()
 {
     ScrollableArea::willEndLiveResize();
@@ -2787,6 +2793,7 @@
         m_delayedResizeEventTimer.stop();
         sendResizeEvent();
     }
+    adjustTiledBackingCoverage();
 }
 
 void FrameView::scheduleResizeEvent()

Modified: trunk/Source/WebCore/page/FrameView.h (148110 => 148111)


--- trunk/Source/WebCore/page/FrameView.h	2013-04-10 18:05:41 UTC (rev 148110)
+++ trunk/Source/WebCore/page/FrameView.h	2013-04-10 18:07:41 UTC (rev 148111)
@@ -415,6 +415,7 @@
     virtual int footerHeight() const OVERRIDE { return m_footerHeight; }
     void setFooterHeight(int);
 
+    virtual void willStartLiveResize() OVERRIDE;
     virtual void willEndLiveResize() OVERRIDE;
 
 protected:

Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (148110 => 148111)


--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp	2013-04-10 18:05:41 UTC (rev 148110)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp	2013-04-10 18:07:41 UTC (rev 148111)
@@ -218,8 +218,9 @@
 
     TiledBacking::TileCoverage tileCoverage = TiledBacking::CoverageForVisibleArea;
     FrameView* frameView = frame->view();
+    bool useMinimalTilesDuringLiveResize = frameView->inLiveResize();
     bool useMinimalTilesDuringLoading = frame->page()->progress()->isLoadProgressing() && !frameView->wasScrolledByUser();
-    if (!useMinimalTilesDuringLoading) {
+    if (!(useMinimalTilesDuringLoading || useMinimalTilesDuringLiveResize)) {
         bool clipsToExposedRect = backing->tiledBacking()->clipsToExposedRect();
         if (frameView->horizontalScrollbarMode() != ScrollbarAlwaysOff || clipsToExposedRect)
             tileCoverage |= TiledBacking::CoverageForHorizontalScrolling;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to