Title: [112457] trunk/Source/WebKit2
- Revision
- 112457
- Author
- [email protected]
- Date
- 2012-03-28 15:32:20 -0700 (Wed, 28 Mar 2012)
Log Message
Massive lag opening a link in a new background tab
https://bugs.webkit.org/show_bug.cgi?id=82542
<rdar://problem/11004502>
Reviewed by Sam Weinig.
Defer waiting for the web process to update the page size until we're actually going to display the layer.
This matches what we do in the non-tiled code path.
* UIProcess/API/mac/WKView.mm:
(-[WKView setFrameSize:]):
(-[WKView updateLayer]):
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::waitForPossibleGeometryUpdate):
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
(TiledCoreAnimationDrawingAreaProxy):
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
(WebKit::TiledCoreAnimationDrawingAreaProxy::sizeDidChange):
(WebKit):
(WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (112456 => 112457)
--- trunk/Source/WebKit2/ChangeLog 2012-03-28 22:24:14 UTC (rev 112456)
+++ trunk/Source/WebKit2/ChangeLog 2012-03-28 22:32:20 UTC (rev 112457)
@@ -1,5 +1,28 @@
2012-03-28 Anders Carlsson <[email protected]>
+ Massive lag opening a link in a new background tab
+ https://bugs.webkit.org/show_bug.cgi?id=82542
+ <rdar://problem/11004502>
+
+ Reviewed by Sam Weinig.
+
+ Defer waiting for the web process to update the page size until we're actually going to display the layer.
+ This matches what we do in the non-tiled code path.
+
+ * UIProcess/API/mac/WKView.mm:
+ (-[WKView setFrameSize:]):
+ (-[WKView updateLayer]):
+ * UIProcess/DrawingAreaProxy.h:
+ (WebKit::DrawingAreaProxy::waitForPossibleGeometryUpdate):
+ * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
+ (TiledCoreAnimationDrawingAreaProxy):
+ * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
+ (WebKit::TiledCoreAnimationDrawingAreaProxy::sizeDidChange):
+ (WebKit):
+ (WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate):
+
+2012-03-28 Anders Carlsson <[email protected]>
+
REGRESSION (r109826): Can't type into Flash text fields
https://bugs.webkit.org/show_bug.cgi?id=82488
<rdar://problem/11022004>
Modified: trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm (112456 => 112457)
--- trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm 2012-03-28 22:24:14 UTC (rev 112456)
+++ trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm 2012-03-28 22:32:20 UTC (rev 112457)
@@ -2924,6 +2924,7 @@
- (void)updateLayer
{
self.layer.backgroundColor = CGColorGetConstantColor(kCGColorWhite);
+ _data->_page->drawingArea()->waitForPossibleGeometryUpdate();
}
#endif
Modified: trunk/Source/WebKit2/UIProcess/DrawingAreaProxy.h (112456 => 112457)
--- trunk/Source/WebKit2/UIProcess/DrawingAreaProxy.h 2012-03-28 22:24:14 UTC (rev 112456)
+++ trunk/Source/WebKit2/UIProcess/DrawingAreaProxy.h 2012-03-28 22:32:20 UTC (rev 112457)
@@ -84,6 +84,7 @@
void setSize(const WebCore::IntSize&, const WebCore::IntSize& scrollOffset);
virtual void pageCustomRepresentationChanged() { }
+ virtual void waitForPossibleGeometryUpdate() { }
#if USE(UI_SIDE_COMPOSITING)
virtual void updateViewport();
Modified: trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h (112456 => 112457)
--- trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h 2012-03-28 22:24:14 UTC (rev 112456)
+++ trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h 2012-03-28 22:32:20 UTC (rev 112457)
@@ -43,6 +43,7 @@
virtual void deviceScaleFactorDidChange() OVERRIDE;
virtual void layerHostingModeDidChange() OVERRIDE;
virtual void sizeDidChange() OVERRIDE;
+ virtual void waitForPossibleGeometryUpdate() OVERRIDE;
virtual void enterAcceleratedCompositingMode(uint64_t backingStoreStateID, const LayerTreeContext&) OVERRIDE;
virtual void exitAcceleratedCompositingMode(uint64_t backingStoreStateID, const UpdateInfo&) OVERRIDE;
Modified: trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm (112456 => 112457)
--- trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm 2012-03-28 22:24:14 UTC (rev 112456)
+++ trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm 2012-03-28 22:32:20 UTC (rev 112457)
@@ -72,7 +72,13 @@
return;
sendUpdateGeometry();
+}
+void TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate()
+{
+ if (!m_isWaitingForDidUpdateGeometry)
+ return;
+
if (m_webPageProxy->process()->isLaunching())
return;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes