Chromium Code Reviews| Index: Source/core/layout/LayoutObject.cpp |
| diff --git a/Source/core/layout/LayoutObject.cpp b/Source/core/layout/LayoutObject.cpp |
| index abd4d61201124cc82585b605cd753adc344d9950..bb1e69bd6957f6f4bbc5f41704a71e52dc6732b3 100644 |
| --- a/Source/core/layout/LayoutObject.cpp |
| +++ b/Source/core/layout/LayoutObject.cpp |
| @@ -2342,6 +2342,11 @@ LayoutObject* LayoutObject::container(const LayoutBoxModelObject* paintInvalidat |
| return o; |
| } |
| +LayoutObject* LayoutObject::containerAcrossFrameBoundary() const |
|
chrishtr
2015/06/29 23:32:22
containerCrossingFrameBoundaries to match enclosin
Xianzhu
2015/06/30 00:02:13
Done.
|
| +{ |
| + return isLayoutView() ? frame()->ownerLayoutObject() : container(); |
| +} |
| + |
| bool LayoutObject::isSelectionBorder() const |
| { |
| SelectionState st = selectionState(); |
| @@ -3092,7 +3097,7 @@ static PaintInvalidationReason documentLifecycleBasedPaintInvalidationReason(con |
| inline void LayoutObject::markContainerChainForPaintInvalidation() |
| { |
| - for (LayoutObject* container = this->container(); container && !container->shouldCheckForPaintInvalidationRegardlessOfPaintInvalidationState(); container = container->container()) |
| + for (LayoutObject* container = this->containerAcrossFrameBoundary(); container && !container->shouldCheckForPaintInvalidationRegardlessOfPaintInvalidationState(); container = container->containerAcrossFrameBoundary()) |
| container->setSelfMayNeedPaintInvalidation(); |
| } |