Chromium Code Reviews| Index: Source/core/layout/LayoutObject.cpp |
| diff --git a/Source/core/layout/LayoutObject.cpp b/Source/core/layout/LayoutObject.cpp |
| index f668620b095015648d489dd76352b72f812f59c8..7e6083f904cb35ce7e046973b7887e9ab5f8c82f 100644 |
| --- a/Source/core/layout/LayoutObject.cpp |
| +++ b/Source/core/layout/LayoutObject.cpp |
| @@ -1140,7 +1140,7 @@ LayoutRect LayoutObject::computePaintInvalidationRect(const LayoutBoxModelObject |
| return clippedOverflowRectForPaintInvalidation(paintInvalidationContainer, paintInvalidationState); |
| } |
| -void LayoutObject::invalidatePaintUsingContainer(const LayoutBoxModelObject* paintInvalidationContainer, const LayoutRect& r, PaintInvalidationReason invalidationReason) const |
| +void LayoutObject::invalidatePaintUsingContainer(const LayoutBoxModelObject& paintInvalidationContainer, const LayoutRect& r, PaintInvalidationReason invalidationReason) const |
| { |
| ASSERT(gDisablePaintInvalidationStateAsserts || document().lifecycle().state() == DocumentLifecycle::InPaintInvalidation); |
| @@ -1153,19 +1153,19 @@ void LayoutObject::invalidatePaintUsingContainer(const LayoutBoxModelObject* pai |
| TRACE_EVENT_INSTANT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline.invalidationTracking"), |
| "PaintInvalidationTracking", |
| TRACE_EVENT_SCOPE_THREAD, |
| - "data", InspectorPaintInvalidationTrackingEvent::data(this, paintInvalidationContainer)); |
| + "data", InspectorPaintInvalidationTrackingEvent::data(this, &paintInvalidationContainer)); |
|
Julien - ping for review
2015/05/29 18:19:12
It seems like we should change this function to us
huayong.xu
2015/06/01 02:42:39
Done.
|
| TRACE_EVENT2(TRACE_DISABLED_BY_DEFAULT("blink.invalidation"), "LayoutObject::invalidatePaintUsingContainer()", |
| "object", this->debugName().ascii(), |
| "info", jsonObjectForPaintInvalidationInfo(r, paintInvalidationReasonToString(invalidationReason))); |
| - if (paintInvalidationContainer->isLayoutView()) { |
| - toLayoutView(paintInvalidationContainer)->invalidatePaintForRectangle(r, invalidationReason); |
| + if (paintInvalidationContainer.isLayoutView()) { |
| + toLayoutView(&paintInvalidationContainer)->invalidatePaintForRectangle(r, invalidationReason); |
| return; |
| } |
| - if (paintInvalidationContainer->view()->usesCompositing()) { |
| - ASSERT(paintInvalidationContainer->isPaintInvalidationContainer()); |
| - paintInvalidationContainer->setBackingNeedsPaintInvalidationInRect(r, invalidationReason); |
| + if (paintInvalidationContainer.view()->usesCompositing()) { |
| + ASSERT(paintInvalidationContainer.isPaintInvalidationContainer()); |
| + paintInvalidationContainer.setBackingNeedsPaintInvalidationInRect(r, invalidationReason); |
| } |
| } |
| @@ -1230,10 +1230,10 @@ const LayoutBoxModelObject* LayoutObject::invalidatePaintRectangleInternal(const |
| LayoutRect dirtyRect(r); |
| - const LayoutBoxModelObject* paintInvalidationContainer = containerForPaintInvalidation(); |
| - DeprecatedPaintLayer::mapRectToPaintInvalidationBacking(this, paintInvalidationContainer, dirtyRect); |
| + const LayoutBoxModelObject& paintInvalidationContainer = *containerForPaintInvalidation(); |
|
Julien - ping for review
2015/05/29 18:19:12
I think we should still check that the returned po
huayong.xu
2015/06/01 02:42:39
Done.
|
| + DeprecatedPaintLayer::mapRectToPaintInvalidationBacking(this, &paintInvalidationContainer, dirtyRect); |
| invalidatePaintUsingContainer(paintInvalidationContainer, dirtyRect, PaintInvalidationRectangle); |
| - return paintInvalidationContainer; |
| + return &paintInvalidationContainer; |
| } |
| void LayoutObject::invalidatePaintRectangle(const LayoutRect& r) const |
| @@ -1429,23 +1429,23 @@ void LayoutObject::incrementallyInvalidatePaint(const LayoutBoxModelObject& pain |
| LayoutUnit deltaRight = newBounds.maxX() - oldBounds.maxX(); |
| if (deltaRight > 0) |
| - invalidatePaintUsingContainer(&paintInvalidationContainer, LayoutRect(oldBounds.maxX(), newBounds.y(), deltaRight, newBounds.height()), PaintInvalidationIncremental); |
| + invalidatePaintUsingContainer(paintInvalidationContainer, LayoutRect(oldBounds.maxX(), newBounds.y(), deltaRight, newBounds.height()), PaintInvalidationIncremental); |
| else if (deltaRight < 0) |
| - invalidatePaintUsingContainer(&paintInvalidationContainer, LayoutRect(newBounds.maxX(), oldBounds.y(), -deltaRight, oldBounds.height()), PaintInvalidationIncremental); |
| + invalidatePaintUsingContainer(paintInvalidationContainer, LayoutRect(newBounds.maxX(), oldBounds.y(), -deltaRight, oldBounds.height()), PaintInvalidationIncremental); |
| LayoutUnit deltaBottom = newBounds.maxY() - oldBounds.maxY(); |
| if (deltaBottom > 0) |
| - invalidatePaintUsingContainer(&paintInvalidationContainer, LayoutRect(newBounds.x(), oldBounds.maxY(), newBounds.width(), deltaBottom), PaintInvalidationIncremental); |
| + invalidatePaintUsingContainer(paintInvalidationContainer, LayoutRect(newBounds.x(), oldBounds.maxY(), newBounds.width(), deltaBottom), PaintInvalidationIncremental); |
| else if (deltaBottom < 0) |
| - invalidatePaintUsingContainer(&paintInvalidationContainer, LayoutRect(oldBounds.x(), newBounds.maxY(), oldBounds.width(), -deltaBottom), PaintInvalidationIncremental); |
| + invalidatePaintUsingContainer(paintInvalidationContainer, LayoutRect(oldBounds.x(), newBounds.maxY(), oldBounds.width(), -deltaBottom), PaintInvalidationIncremental); |
| } |
| void LayoutObject::fullyInvalidatePaint(const LayoutBoxModelObject& paintInvalidationContainer, PaintInvalidationReason invalidationReason, const LayoutRect& oldBounds, const LayoutRect& newBounds) |
| { |
| // Otherwise do full paint invalidation. |
| - invalidatePaintUsingContainer(&paintInvalidationContainer, oldBounds, invalidationReason); |
| + invalidatePaintUsingContainer(paintInvalidationContainer, oldBounds, invalidationReason); |
| if (newBounds != oldBounds) |
| - invalidatePaintUsingContainer(&paintInvalidationContainer, newBounds, invalidationReason); |
| + invalidatePaintUsingContainer(paintInvalidationContainer, newBounds, invalidationReason); |
| } |
| void LayoutObject::invalidatePaintForOverflow() |
| @@ -3253,14 +3253,14 @@ DisablePaintInvalidationStateAsserts::DisablePaintInvalidationStateAsserts() |
| // Since we're only painting non-composited layers, we know that they all share the same paintInvalidationContainer. |
| void LayoutObject::invalidatePaintIncludingNonCompositingDescendants() |
| { |
| - invalidatePaintIncludingNonCompositingDescendantsInternal(containerForPaintInvalidation()); |
| + invalidatePaintIncludingNonCompositingDescendantsInternal(*containerForPaintInvalidation()); |
| } |
| -void LayoutObject::invalidatePaintIncludingNonCompositingDescendantsInternal(const LayoutBoxModelObject* paintInvalidationContainer) |
| +void LayoutObject::invalidatePaintIncludingNonCompositingDescendantsInternal(const LayoutBoxModelObject& paintInvalidationContainer) |
| { |
| invalidatePaintUsingContainer(paintInvalidationContainer, previousPaintInvalidationRect(), PaintInvalidationLayer); |
| if (RuntimeEnabledFeatures::slimmingPaintEnabled()) |
| - invalidateDisplayItemClients(*paintInvalidationContainer); |
| + invalidateDisplayItemClients(paintInvalidationContainer); |
| for (LayoutObject* child = slowFirstChild(); child; child = child->nextSibling()) { |
| if (!child->isPaintInvalidationContainer()) |