OLD | NEW |
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) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) | 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv
ed. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv
ed. |
7 * Copyright (C) 2009 Google Inc. All rights reserved. | 7 * Copyright (C) 2009 Google Inc. All rights reserved. |
8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
9 * | 9 * |
10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
(...skipping 1197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1208 | 1208 |
1209 // Not using enclosingCompositedContainer() directly because this object may
be in an orphaned subtree. | 1209 // Not using enclosingCompositedContainer() directly because this object may
be in an orphaned subtree. |
1210 if (const DeprecatedPaintLayer* enclosingLayer = this->enclosingLayer()) { | 1210 if (const DeprecatedPaintLayer* enclosingLayer = this->enclosingLayer()) { |
1211 // This is valid because we want to invalidate the client in the display
item list of the current backing. | 1211 // This is valid because we want to invalidate the client in the display
item list of the current backing. |
1212 DisableCompositingQueryAsserts disabler; | 1212 DisableCompositingQueryAsserts disabler; |
1213 if (const DeprecatedPaintLayer* paintInvalidationLayer = enclosingLayer-
>enclosingLayerForPaintInvalidationCrossingFrameBoundaries()) | 1213 if (const DeprecatedPaintLayer* paintInvalidationLayer = enclosingLayer-
>enclosingLayerForPaintInvalidationCrossingFrameBoundaries()) |
1214 paintInvalidationLayer->layoutObject()->invalidateDisplayItemClientO
nBacking(displayItemClient); | 1214 paintInvalidationLayer->layoutObject()->invalidateDisplayItemClientO
nBacking(displayItemClient); |
1215 } | 1215 } |
1216 } | 1216 } |
1217 | 1217 |
1218 static void invalidateDisplayItemClientForNonCompositingDescendantsRecursive(con
st LayoutBoxModelObject& paintInvalidationContainer, const LayoutObject& layoutO
bject) | |
1219 { | |
1220 paintInvalidationContainer.invalidateDisplayItemClientOnBacking(layoutObject
); | |
1221 for (LayoutObject* child = layoutObject.slowFirstChild(); child; child = chi
ld->nextSibling()) { | |
1222 if (!child->isPaintInvalidationContainer()) | |
1223 invalidateDisplayItemClientForNonCompositingDescendantsRecursive(pai
ntInvalidationContainer, *child); | |
1224 } | |
1225 } | |
1226 | |
1227 void LayoutObject::invalidateDisplayItemClientForNonCompositingDescendants() con
st | |
1228 { | |
1229 ASSERT(RuntimeEnabledFeatures::slimmingPaintEnabled()); | |
1230 | |
1231 // Not using enclosingCompositedContainer() directly because this object may
be in an orphaned subtree. | |
1232 if (const DeprecatedPaintLayer* enclosingLayer = this->enclosingLayer()) { | |
1233 // This is valid because we want to invalidate the client in the display
item list of the current backing. | |
1234 DisableCompositingQueryAsserts disabler; | |
1235 if (const DeprecatedPaintLayer* paintInvalidationLayer = enclosingLayer-
>enclosingLayerForPaintInvalidationCrossingFrameBoundaries()) | |
1236 invalidateDisplayItemClientForNonCompositingDescendantsRecursive(*pa
intInvalidationLayer->layoutObject(), *this); | |
1237 } | |
1238 } | |
1239 | |
1240 void LayoutObject::invalidateDisplayItemClients(const LayoutBoxModelObject& pain
tInvalidationContainer) const | 1218 void LayoutObject::invalidateDisplayItemClients(const LayoutBoxModelObject& pain
tInvalidationContainer) const |
1241 { | 1219 { |
1242 ASSERT(RuntimeEnabledFeatures::slimmingPaintEnabled()); | 1220 ASSERT(RuntimeEnabledFeatures::slimmingPaintEnabled()); |
1243 paintInvalidationContainer.invalidateDisplayItemClientOnBacking(*this); | 1221 paintInvalidationContainer.invalidateDisplayItemClientOnBacking(*this); |
1244 } | 1222 } |
1245 | 1223 |
1246 LayoutRect LayoutObject::boundsRectForPaintInvalidation(const LayoutBoxModelObje
ct* paintInvalidationContainer, const PaintInvalidationState* paintInvalidationS
tate) const | 1224 LayoutRect LayoutObject::boundsRectForPaintInvalidation(const LayoutBoxModelObje
ct* paintInvalidationContainer, const PaintInvalidationState* paintInvalidationS
tate) const |
1247 { | 1225 { |
1248 if (!paintInvalidationContainer) | 1226 if (!paintInvalidationContainer) |
1249 return computePaintInvalidationRect(paintInvalidationContainer, paintInv
alidationState); | 1227 return computePaintInvalidationRect(paintInvalidationContainer, paintInv
alidationState); |
(...skipping 2082 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3332 { | 3310 { |
3333 if (object1) { | 3311 if (object1) { |
3334 const blink::LayoutObject* root = object1; | 3312 const blink::LayoutObject* root = object1; |
3335 while (root->parent()) | 3313 while (root->parent()) |
3336 root = root->parent(); | 3314 root = root->parent(); |
3337 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); | 3315 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); |
3338 } | 3316 } |
3339 } | 3317 } |
3340 | 3318 |
3341 #endif | 3319 #endif |
OLD | NEW |