Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(253)

Side by Side Diff: Source/core/rendering/RenderBox.cpp

Issue 301843002: Store repaint rects in the coordinate space of their backing GraphicsLayer. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fix comment. Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) 4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com)
5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com) 5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com)
6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv ed. 6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv ed.
7 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. 7 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 1564 matching lines...) Expand 10 before | Expand all | Expand 10 after
1575 if (!shouldCheckForInvalidationAfterLayout()) 1575 if (!shouldCheckForInvalidationAfterLayout())
1576 return; 1576 return;
1577 1577
1578 bool establishesNewRepaintContainer = isRepaintContainer(); 1578 bool establishesNewRepaintContainer = isRepaintContainer();
1579 const RenderLayerModelObject& newRepaintContainer = *adjustCompositedContain erForSpecialAncestors(establishesNewRepaintContainer ? this : &repaintContainer) ; 1579 const RenderLayerModelObject& newRepaintContainer = *adjustCompositedContain erForSpecialAncestors(establishesNewRepaintContainer ? this : &repaintContainer) ;
1580 // FIXME: This assert should be re-enabled when we move repaint to after com positing update. crbug.com/360286 1580 // FIXME: This assert should be re-enabled when we move repaint to after com positing update. crbug.com/360286
1581 // ASSERT(&newRepaintContainer == containerForRepaint()); 1581 // ASSERT(&newRepaintContainer == containerForRepaint());
1582 1582
1583 const LayoutRect oldRepaintRect = previousRepaintRect(); 1583 const LayoutRect oldRepaintRect = previousRepaintRect();
1584 const LayoutPoint oldPositionFromRepaintContainer = previousPositionFromRepa intContainer(); 1584 const LayoutPoint oldPositionFromRepaintContainer = previousPositionFromRepa intContainer();
1585 setPreviousRepaintRect(clippedOverflowRectForRepaint(&newRepaintContainer)); 1585 setPreviousRepaintRect(boundsRectForRepaint(&newRepaintContainer));
1586 setPreviousPositionFromRepaintContainer(positionFromRepaintContainer(&newRep aintContainer)); 1586 setPreviousPositionFromRepaintContainer(positionFromRepaintContainer(&newRep aintContainer));
1587 1587
1588 // If we are set to do a full repaint that means the RenderView will be 1588 // If we are set to do a full repaint that means the RenderView will be
1589 // invalidated. We can then skip issuing of invalidations for the child 1589 // invalidated. We can then skip issuing of invalidations for the child
1590 // renderers as they'll be covered by the RenderView. 1590 // renderers as they'll be covered by the RenderView.
1591 if (view()->doingFullRepaint() && this != view()) { 1591 if (view()->doingFullRepaint() && this != view()) {
1592 LayoutStateMaintainer statePusher(*this, isTableRow() ? LayoutSize() : l ocationOffset()); 1592 LayoutStateMaintainer statePusher(*this, isTableRow() ? LayoutSize() : l ocationOffset());
1593 RenderObject::repaintTreeAfterLayout(newRepaintContainer); 1593 RenderObject::repaintTreeAfterLayout(newRepaintContainer);
1594 return; 1594 return;
1595 } 1595 }
(...skipping 3092 matching lines...) Expand 10 before | Expand all | Expand 10 after
4688 return 0; 4688 return 0;
4689 4689
4690 if (!layoutState && !flowThreadContainingBlock()) 4690 if (!layoutState && !flowThreadContainingBlock())
4691 return 0; 4691 return 0;
4692 4692
4693 RenderBlock* containerBlock = containingBlock(); 4693 RenderBlock* containerBlock = containingBlock();
4694 return containerBlock->offsetFromLogicalTopOfFirstPage() + logicalTop(); 4694 return containerBlock->offsetFromLogicalTopOfFirstPage() + logicalTop();
4695 } 4695 }
4696 4696
4697 } // namespace WebCore 4697 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698