-
timothy_horton@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=126536 Reviewed by Simon Fraser. * Configurations/WebKit2.xcconfig: * UIProcess/API/mac/WKView.mm: (-[WKView _updateViewExposedRect]): * UIProcess/DrawingAreaProxy.cpp: (WebKit::DrawingAreaProxy::DrawingAreaProxy): (WebKit::DrawingAreaProxy::setExposedRect): (WebKit::DrawingAreaProxy::exposedRectChangedTimerFired): * UIProcess/DrawingAreaProxy.h: (WebKit::DrawingAreaProxy::exposedRect): * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::WebPageProxy): (WebKit::WebPageProxy::close): * UIProcess/WebPageProxy.h: Move exposedRect stuff from WebPageProxy to DrawingAreaProxy. * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage): Push the exposedRect down into WebCore. * WebProcess/WebPage/DrawingArea.h: * WebProcess/WebPage/DrawingArea.messages.in: * WebProcess/WebPage/WebPage.cpp: * WebProcess/WebPage/WebPage.h: * WebProcess/WebPage/WebPage.messages.in: * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea): (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect): * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h: * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea): (WebKit::TiledCoreAnimationDrawingArea::flushLayers): (WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect): (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer): (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer): (WebKit::TiledCoreAnimationDrawingArea::didCommitChangesForLayer): Get rid of "clipsToExposedRect", we just use infinite-ness of the rect to indicate that now. Don't scroll an infinite rect; it won't work. * WebCore.exp.in: Export some things. * page/FrameView.cpp: (WebCore::FrameView::FrameView): (WebCore::FrameView::setExposedRect): Store the exposed rect on FrameView. When it changes, if the main frame has a TiledBacking, inform it of the change. * page/FrameView.h: * platform/graphics/TiledBacking.h: * platform/graphics/ca/mac/TileController.h: * platform/graphics/ca/mac/TileController.mm: (WebCore::TileController::TileController): (WebCore::TileController::tilesWouldChangeForVisibleRect): (WebCore::TileController::computeTileCoverageRect): (WebCore::TileController::revalidateTiles): (WebCore::TileController::updateTileCoverageMap): Make use of the fact that we can test if a rect is infinite instead of having a separate boolean property for that. * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::RenderLayerBacking): (WebCore::computeTileCoverage): Push the FrameView's cached exposed rect down into the TiledBacking when it is created. We only support clipping for the main frame TileController for now. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
50af46e0