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()) |