| Index: third_party/WebKit/Source/core/layout/LayoutObject.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutObject.cpp b/third_party/WebKit/Source/core/layout/LayoutObject.cpp
|
| index efec9b151170f19ac7d187b02e52ad6ee7cae7c5..e9879679cd23eae162290af5ac119cc29ba81074 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutObject.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutObject.cpp
|
| @@ -2235,6 +2235,22 @@ FloatPoint LayoutObject::localToContainerPoint(const FloatPoint& localPoint, con
|
| return transformState.lastPlanarPoint();
|
| }
|
|
|
| +void LayoutObject::localToContainerRects(Vector<LayoutRect>& rects, const LayoutBoxModelObject* paintInvalidationContainer, const LayoutPoint& preOffset, const LayoutPoint& postOffset) const
|
| +{
|
| + for (size_t i = 0; i < rects.size(); ++i) {
|
| + LayoutRect& rect = rects[i];
|
| + rect.moveBy(preOffset);
|
| + FloatQuad containerQuad = localToContainerQuad(FloatQuad(FloatRect(rect)), paintInvalidationContainer);
|
| + LayoutRect containerRect = LayoutRect(containerQuad.boundingBox());
|
| + if (containerRect.isEmpty()) {
|
| + rects.remove(i--);
|
| + continue;
|
| + }
|
| + containerRect.moveBy(postOffset);
|
| + rects[i] = containerRect;
|
| + }
|
| +}
|
| +
|
| FloatPoint LayoutObject::localToInvalidationBackingPoint(const LayoutPoint& localPoint, PaintLayer** backingLayer)
|
| {
|
| const LayoutBoxModelObject& paintInvalidationContainer = containerForPaintInvalidationOnRootedTree();
|
|
|