Changeset 197594 in webkit
- Timestamp:
- Mar 4, 2016, 3:32:22 PM (9 years ago)
- Location:
- trunk
- Files:
-
- 26 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r197585 r197594 1 2016-03-04 Simon Fraser <simon.fraser@apple.com> 2 3 Use larger tiles when possible to reduce per-tile painting overhead 4 https://bugs.webkit.org/show_bug.cgi?id=154985 5 6 Reviewed by Zalan Bujtas. 7 8 * tiled-drawing/background-transparency-toggle-expected.txt: 9 * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-expected.txt: 10 * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt: 11 * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-expected.txt: 12 * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt: 13 * tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt: 14 * tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer-expected.txt: 15 * tiled-drawing/scrolling/fixed-background/fixed-body-background-expected.txt: 16 * tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity-expected.txt: 17 * tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned-expected.txt: 18 * tiled-drawing/scrolling/fixed-background/fixed-html-background-expected.txt: 19 * tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background-expected.txt: 20 * tiled-drawing/scrolling/fixed/four-bars-zoomed-expected.txt: 21 * tiled-drawing/tile-coverage-after-scroll-expected.txt: 22 * tiled-drawing/tile-coverage-after-scroll-speculative-expected.txt: 23 * tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt: 24 * tiled-drawing/tile-coverage-slow-scrolling-expected.txt: 25 * tiled-drawing/tile-coverage-speculative-expected.txt: 26 * tiled-drawing/tile-size-unscrollable-expected.txt: 27 * tiled-drawing/tile-size-vertically-scrollable-expected.txt: 28 * tiled-drawing/visible-rect-content-inset-expected.txt: 29 1 30 2016-03-04 Ryan Haddad <ryanhaddad@apple.com> 2 31 -
trunk/LayoutTests/tiled-drawing/background-transparency-toggle-expected.txt
r197571 r197594 9 9 (contentsOpaque 1) 10 10 (tile cache coverage 0, 0 800 x 600) 11 (tile size 512 x 512)12 (top left tile 0, 0 tiles grid 2 x 2)11 (tile size 800 x 600) 12 (top left tile 0, 0 tiles grid 1 x 1) 13 13 ) 14 14 ) … … 22 22 (backgroundColor #00000033) 23 23 (tile cache coverage 0, 0 800 x 600) 24 (tile size 512 x 512)25 (top left tile 0, 0 tiles grid 2 x 2)24 (tile size 800 x 600) 25 (top left tile 0, 0 tiles grid 1 x 1) 26 26 ) 27 27 ) … … 35 35 (contentsOpaque 1) 36 36 (tile cache coverage 0, 0 800 x 600) 37 (tile size 512 x 512)38 (top left tile 0, 0 tiles grid 2 x 2)37 (tile size 800 x 600) 38 (top left tile 0, 0 tiles grid 1 x 1) 39 39 ) 40 40 ) … … 47 47 (bounds 785.00 648.00) 48 48 (contentsOpaque 1) 49 (tile cache coverage 0, 0 785 x 6 48)50 (tile size 512 x 512)51 (top left tile 0, 0 tiles grid 2 x 2)49 (tile cache coverage 0, 0 785 x 600) 50 (tile size 800 x 600) 51 (top left tile 0, 0 tiles grid 1 x 1) 52 52 ) 53 53 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-expected.txt
r197571 r197594 26 26 (contentsScale 1.00) 27 27 (tile cache coverage 0, 0 785 x 2048) 28 (tile size 512x 512)29 (top left tile 0, 0 tiles grid 2x 4)28 (tile size 785 x 512) 29 (top left tile 0, 0 tiles grid 1 x 4) 30 30 ) 31 31 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt
r197571 r197594 26 26 (contentsScale 1.00) 27 27 (tile cache coverage 0, 0 785 x 2048) 28 (tile size 512x 512)29 (top left tile 0, 0 tiles grid 2x 4)28 (tile size 785 x 512) 29 (top left tile 0, 0 tiles grid 1 x 4) 30 30 ) 31 31 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-expected.txt
r197571 r197594 26 26 (contentsScale 1.00) 27 27 (tile cache coverage 0, 0 785 x 2048) 28 (tile size 512x 512)29 (top left tile 0, 0 tiles grid 2x 4)28 (tile size 785 x 512) 29 (top left tile 0, 0 tiles grid 1 x 4) 30 30 ) 31 31 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt
r197571 r197594 26 26 (contentsScale 1.00) 27 27 (tile cache coverage 0, 0 785 x 2048) 28 (tile size 512x 512)29 (top left tile 0, 0 tiles grid 2x 4)28 (tile size 785 x 512) 29 (top left tile 0, 0 tiles grid 1 x 4) 30 30 ) 31 31 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt
r197571 r197594 7 7 (contentsOpaque 1) 8 8 (tile cache coverage 0, 0 785 x 1024) 9 (tile size 512x 512)10 (top left tile 0, 0 tiles grid 2x 2)9 (tile size 785 x 512) 10 (top left tile 0, 0 tiles grid 1 x 2) 11 11 ) 12 12 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer-expected.txt
r197571 r197594 17 17 (bounds 785.00 1600.00) 18 18 (tile cache coverage 0, 0 785 x 1024) 19 (tile size 512x 512)20 (top left tile 0, 0 tiles grid 2x 2)19 (tile size 785 x 512) 20 (top left tile 0, 0 tiles grid 1 x 2) 21 21 ) 22 22 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-body-background-expected.txt
r197571 r197594 17 17 (bounds 785.00 1700.00) 18 18 (tile cache coverage 0, 0 785 x 1024) 19 (tile size 512x 512)20 (top left tile 0, 0 tiles grid 2x 2)19 (tile size 785 x 512) 20 (top left tile 0, 0 tiles grid 1 x 2) 21 21 ) 22 22 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity-expected.txt
r197571 r197594 17 17 (bounds 785.00 1700.00) 18 18 (tile cache coverage 0, 0 785 x 1024) 19 (tile size 512x 512)20 (top left tile 0, 0 tiles grid 2x 2)19 (tile size 785 x 512) 20 (top left tile 0, 0 tiles grid 1 x 2) 21 21 ) 22 22 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned-expected.txt
r197571 r197594 17 17 (bounds 785.00 3700.00) 18 18 (tile cache coverage 0, 0 785 x 1024) 19 (tile size 512x 512)20 (top left tile 0, 0 tiles grid 2x 2)19 (tile size 785 x 512) 20 (top left tile 0, 0 tiles grid 1 x 2) 21 21 ) 22 22 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-html-background-expected.txt
r197571 r197594 17 17 (bounds 785.00 1516.00) 18 18 (tile cache coverage 0, 0 785 x 1024) 19 (tile size 512x 512)20 (top left tile 0, 0 tiles grid 2x 2)19 (tile size 785 x 512) 20 (top left tile 0, 0 tiles grid 1 x 2) 21 21 ) 22 22 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background-expected.txt
r197571 r197594 8 8 (backgroundColor #C0C0C0) 9 9 (tile cache coverage 0, 0 785 x 1024) 10 (tile size 512x 512)11 (top left tile 0, 0 tiles grid 2x 2)10 (tile size 785 x 512) 11 (top left tile 0, 0 tiles grid 1 x 2) 12 12 ) 13 13 ) -
trunk/LayoutTests/tiled-drawing/scrolling/fixed/four-bars-zoomed-expected.txt
r197571 r197594 44 44 (intersects coverage rect 1) 45 45 (contentsScale 2.30) 46 (tile cache coverage 0, 0 445x 445)47 (tile size 512x 512)48 (top left tile 0, 0 tiles grid 2x 2)46 (tile cache coverage 0, 0 341 x 445) 47 (tile size 785 x 512) 48 (top left tile 0, 0 tiles grid 1 x 2) 49 49 (children 4 50 50 (GraphicsLayer -
trunk/LayoutTests/tiled-drawing/tile-coverage-after-scroll-expected.txt
r197571 r197594 15 15 (contentsScale 1.00) 16 16 (tile cache coverage 0, 2560 785 x 1536) 17 (tile size 512x 512)18 (top left tile 0, 5 tiles grid 2x 3)17 (tile size 785 x 512) 18 (top left tile 0, 5 tiles grid 1 x 3) 19 19 ) 20 20 ) -
trunk/LayoutTests/tiled-drawing/tile-coverage-after-scroll-speculative-expected.txt
r197571 r197594 15 15 (contentsScale 1.00) 16 16 (tile cache coverage 0, 2560 785 x 1536) 17 (tile size 512x 512)18 (top left tile 0, 5 tiles grid 2x 3)17 (tile size 785 x 512) 18 (top left tile 0, 5 tiles grid 1 x 3) 19 19 ) 20 20 ) -
trunk/LayoutTests/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt
r197571 r197594 15 15 (contentsScale 1.00) 16 16 (tile cache coverage 0, 4096 785 x 925) 17 (tile size 512x 512)18 (top left tile 0, 8 tiles grid 2x 2)17 (tile size 785 x 512) 18 (top left tile 0, 8 tiles grid 1 x 2) 19 19 ) 20 20 ) -
trunk/LayoutTests/tiled-drawing/tile-coverage-slow-scrolling-expected.txt
r197571 r197594 15 15 (contentsScale 1.00) 16 16 (tile cache coverage 0, 0 800 x 600) 17 (tile size 512 x 512)18 (top left tile 0, 0 tiles grid 2 x 2)17 (tile size 800 x 600) 18 (top left tile 0, 0 tiles grid 1 x 1) 19 19 ) 20 20 ) -
trunk/LayoutTests/tiled-drawing/tile-coverage-speculative-expected.txt
r197571 r197594 15 15 (contentsScale 1.00) 16 16 (tile cache coverage 0, 0 785 x 1024) 17 (tile size 512x 512)18 (top left tile 0, 0 tiles grid 2x 2)17 (tile size 785 x 512) 18 (top left tile 0, 0 tiles grid 1 x 2) 19 19 ) 20 20 ) -
trunk/LayoutTests/tiled-drawing/tile-size-unscrollable-expected.txt
r197571 r197594 7 7 (contentsOpaque 1) 8 8 (tile cache coverage 0, 0 800 x 600) 9 (tile size 512 x 512)10 (top left tile 0, 0 tiles grid 2 x 2)9 (tile size 800 x 600) 10 (top left tile 0, 0 tiles grid 1 x 1) 11 11 ) 12 12 ) -
trunk/LayoutTests/tiled-drawing/tile-size-vertically-scrollable-expected.txt
r197571 r197594 7 7 (contentsOpaque 1) 8 8 (tile cache coverage 0, 0 785 x 1024) 9 (tile size 512x 512)10 (top left tile 0, 0 tiles grid 2x 2)9 (tile size 785 x 512) 10 (top left tile 0, 0 tiles grid 1 x 2) 11 11 ) 12 12 ) -
trunk/LayoutTests/tiled-drawing/visible-rect-content-inset-expected.txt
r197571 r197594 16 16 (contentsScale 1.00) 17 17 (tile cache coverage 0, 0 800 x 500) 18 (tile size 512x 512)19 (top left tile 0, 0 tiles grid 2x 1)18 (tile size 800 x 512) 19 (top left tile 0, 0 tiles grid 1 x 1) 20 20 ) 21 21 ) -
trunk/Source/WebCore/ChangeLog
r197593 r197594 1 2016-03-04 Simon Fraser <simon.fraser@apple.com> 2 3 Use larger tiles when possible to reduce per-tile painting overhead 4 https://bugs.webkit.org/show_bug.cgi?id=154985 5 6 Reviewed by Zalan Bujtas. 7 8 r197541 inadvertently missed FrameView changes that push scrollability data 9 onto the TiledBacking, so didn't actually change behavior (hence the 512x512 tiles 10 in the failing tests). 11 12 Also remove m_tileSizeAtLastRevalidate from TileGrid; it's replaced by a simpler test. 13 14 * page/FrameView.cpp: 15 (WebCore::FrameView::addedOrRemovedScrollbar): 16 * platform/graphics/ca/TileGrid.cpp: 17 (WebCore::TileGrid::revalidateTiles): 18 (WebCore::TileGrid::TileGrid): Deleted. 19 * platform/graphics/ca/TileGrid.h: 20 1 21 2016-03-04 Simon Fraser <simon.fraser@apple.com> 2 22 -
trunk/Source/WebCore/page/FrameView.cpp
r197016 r197594 2466 2466 renderView->compositor().frameViewDidAddOrRemoveScrollbars(); 2467 2467 } 2468 2469 if (auto* tiledBacking = this->tiledBacking()) { 2470 TiledBacking::Scrollability scrollability = TiledBacking::NotScrollable; 2471 if (horizontalScrollbar()) 2472 scrollability = TiledBacking::HorizontallyScrollable; 2473 2474 if (verticalScrollbar()) 2475 scrollability |= TiledBacking::VerticallyScrollable; 2476 2477 tiledBacking->setScrollability(scrollability); 2478 } 2468 2479 } 2469 2480 -
trunk/Source/WebCore/platform/graphics/ca/TileGrid.cpp
r197541 r197594 47 47 , m_cohortRemovalTimer(*this, &TileGrid::cohortRemovalTimerFired) 48 48 , m_tileSize(kDefaultTileSize, kDefaultTileSize) 49 , m_tileSizeAtLastRevalidate(m_tileSize)50 49 { 51 50 m_containerLayer.get().setName(TileController::tileGridContainerLayerName()); … … 334 333 bool needsTileRevalidation = false; 335 334 336 m_tileSize = m_controller.tileSize();337 if ( m_tileSize != m_tileSizeAtLastRevalidate) {335 auto tileSize = m_controller.tileSize(); 336 if (tileSize != m_tileSize) { 338 337 removeAllTiles(); 339 m_tileSize AtLastRevalidate = m_tileSize;338 m_tileSize = tileSize; 340 339 } 341 340 -
trunk/Source/WebCore/platform/graphics/ca/TileGrid.h
r197563 r197594 168 168 169 169 IntSize m_tileSize; 170 IntSize m_tileSizeAtLastRevalidate;171 170 172 171 float m_scale { 1 };
Note:
See TracChangeset
for help on using the changeset viewer.