Changeset 117032 in webkit
- Timestamp:
- May 14, 2012, 11:12:05 PM (14 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 4 edited
-
ChangeLog (modified) (1 diff)
-
page/FrameView.cpp (modified) (1 diff)
-
rendering/RenderLayer.cpp (modified) (1 diff)
-
rendering/RenderLayer.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r117029 r117032 1 2012-05-14 Tim Horton <timothy_horton@apple.com> 2 3 RenderLayer::repaintRectIncludingDescendants shouldn't include repaint rects of composited descendants 4 https://bugs.webkit.org/show_bug.cgi?id=86429 5 <rdar://problem/11445132> 6 7 Reviewed by Simon Fraser. 8 9 Change repaintRectIncludingDescendants to not include repaint rects for composited child layers, 10 and rename the function to make it more clear that that's what it does now. 11 12 No new tests, scrolling performance optimization. 13 14 * page/FrameView.cpp: 15 (WebCore::FrameView::scrollContentsFastPath): 16 * rendering/RenderLayer.cpp: 17 (WebCore::RenderLayer::repaintRectIncludingNonCompositingDescendants): 18 * rendering/RenderLayer.h: 19 (RenderLayer): 20 1 21 2012-05-14 Gavin Peters <gavinp@chromium.org> 2 22 -
trunk/Source/WebCore/page/FrameView.cpp
r117005 r117032 1490 1490 continue; 1491 1491 #endif 1492 IntRect updateRect = pixelSnappedIntRect(renderBox->layer()->repaintRectIncluding Descendants());1492 IntRect updateRect = pixelSnappedIntRect(renderBox->layer()->repaintRectIncludingNonCompositingDescendants()); 1493 1493 updateRect = contentsToRootView(updateRect); 1494 1494 if (!isCompositedContentLayer && clipsRepaints()) -
trunk/Source/WebCore/rendering/RenderLayer.cpp
r117004 r117032 453 453 } 454 454 455 LayoutRect RenderLayer::repaintRectIncluding Descendants() const455 LayoutRect RenderLayer::repaintRectIncludingNonCompositingDescendants() const 456 456 { 457 457 LayoutRect repaintRect = m_repaintRect; 458 for (RenderLayer* child = firstChild(); child; child = child->nextSibling()) 459 repaintRect.unite(child->repaintRectIncludingDescendants()); 458 for (RenderLayer* child = firstChild(); child; child = child->nextSibling()) { 459 // Don't include repaint rects for composited child layers; they will paint themselves and have a different origin. 460 if (child->isComposited()) 461 continue; 462 463 repaintRect.unite(child->repaintRectIncludingNonCompositingDescendants()); 464 } 460 465 return repaintRect; 461 466 } -
trunk/Source/WebCore/rendering/RenderLayer.h
r116790 r117032 512 512 // Return a cached repaint rect, computed relative to the layer renderer's containerForRepaint. 513 513 LayoutRect repaintRect() const { return m_repaintRect; } 514 LayoutRect repaintRectIncluding Descendants() const;514 LayoutRect repaintRectIncludingNonCompositingDescendants() const; 515 515 516 516 enum UpdateLayerPositionsAfterScrollFlag {
Note:
See TracChangeset
for help on using the changeset viewer.