Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1029)

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutObject.h

Issue 1588543004: Remove paintInvalidationRect from display item client invalidation (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) 3 * (C) 2000 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) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved. 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved.
7 * Copyright (C) 2009 Google Inc. All rights reserved. 7 * Copyright (C) 2009 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 1290 matching lines...) Expand 10 before | Expand all | Expand 10 after
1301 bool shouldCheckForPaintInvalidationRegardlessOfPaintInvalidationState() con st 1301 bool shouldCheckForPaintInvalidationRegardlessOfPaintInvalidationState() con st
1302 { 1302 {
1303 return mayNeedPaintInvalidation() || shouldDoFullPaintInvalidation() || shouldInvalidateSelection() || m_bitfields.childShouldCheckForPaintInvalidation( ); 1303 return mayNeedPaintInvalidation() || shouldDoFullPaintInvalidation() || shouldInvalidateSelection() || m_bitfields.childShouldCheckForPaintInvalidation( );
1304 } 1304 }
1305 1305
1306 virtual bool supportsPaintInvalidationStateCachedOffsets() const { return !h asTransformRelatedProperty() && !hasReflection() && !style()->isFlippedBlocksWri tingMode(); } 1306 virtual bool supportsPaintInvalidationStateCachedOffsets() const { return !h asTransformRelatedProperty() && !hasReflection() && !style()->isFlippedBlocksWri tingMode(); }
1307 1307
1308 virtual LayoutRect viewRect() const; 1308 virtual LayoutRect viewRect() const;
1309 1309
1310 void invalidateDisplayItemClient(const DisplayItemClient&) const; 1310 void invalidateDisplayItemClient(const DisplayItemClient&) const;
1311 void invalidateDisplayItemClientsIncludingNonCompositingDescendants(const La youtBoxModelObject* paintInvalidationContainer, PaintInvalidationReason, const L ayoutRect* paintInvalidationRect) const; 1311 void invalidateDisplayItemClientsIncludingNonCompositingDescendants(const La youtBoxModelObject* paintInvalidationContainer, PaintInvalidationReason) const;
1312 1312
1313 // Called before anonymousChild.setStyle(). Override to set custom styles fo r the child. 1313 // Called before anonymousChild.setStyle(). Override to set custom styles fo r the child.
1314 virtual void updateAnonymousChildStyle(const LayoutObject& anonymousChild, C omputedStyle& style) const { } 1314 virtual void updateAnonymousChildStyle(const LayoutObject& anonymousChild, C omputedStyle& style) const { }
1315 1315
1316 // Painters can use const methods only, except for these explicitly declared methods. 1316 // Painters can use const methods only, except for these explicitly declared methods.
1317 class MutableForPainting { 1317 class MutableForPainting {
1318 public: 1318 public:
1319 void setPreviousPaintOffset(const LayoutPoint& paintOffset) { m_layoutOb ject.setPreviousPaintOffset(paintOffset); } 1319 void setPreviousPaintOffset(const LayoutPoint& paintOffset) { m_layoutOb ject.setPreviousPaintOffset(paintOffset); }
1320 1320
1321 private: 1321 private:
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
1482 1482
1483 // This function generates the invalidation for this object only. 1483 // This function generates the invalidation for this object only.
1484 // It doesn't recurse into other object, as this is handled 1484 // It doesn't recurse into other object, as this is handled
1485 // by invalidatePaintOfSubtreesIfNeeded. 1485 // by invalidatePaintOfSubtreesIfNeeded.
1486 virtual PaintInvalidationReason invalidatePaintIfNeeded(PaintInvalidationSta te&, const LayoutBoxModelObject& paintInvalidationContainer); 1486 virtual PaintInvalidationReason invalidatePaintIfNeeded(PaintInvalidationSta te&, const LayoutBoxModelObject& paintInvalidationContainer);
1487 1487
1488 // When this object is invalidated for paint, this method is called to inval idate any DisplayItemClients 1488 // When this object is invalidated for paint, this method is called to inval idate any DisplayItemClients
1489 // owned by this object, including the object itself, LayoutText/LayoutInlin e line boxes, etc., 1489 // owned by this object, including the object itself, LayoutText/LayoutInlin e line boxes, etc.,
1490 // not including children which will be invalidated normally during invalida teTreeIfNeeded() and 1490 // not including children which will be invalidated normally during invalida teTreeIfNeeded() and
1491 // parts which are invalidated separately (e.g. scrollbars). 1491 // parts which are invalidated separately (e.g. scrollbars).
1492 // |paintInvalidationRect| can be nullptr if we know it's unchanged and Pain tController has cached the 1492 virtual void invalidateDisplayItemClients(const LayoutBoxModelObject& paintI nvalidationContainer, PaintInvalidationReason) const;
1493 // previous value; otherwise we must pass a correct value.
1494 virtual void invalidateDisplayItemClients(const LayoutBoxModelObject& paintI nvalidationContainer, PaintInvalidationReason, const LayoutRect* paintInvalidati onRect) const;
1495 1493
1496 void setIsBackgroundAttachmentFixedObject(bool); 1494 void setIsBackgroundAttachmentFixedObject(bool);
1497 1495
1498 void clearSelfNeedsOverflowRecalcAfterStyleChange() { m_bitfields.setSelfNee dsOverflowRecalcAfterStyleChange(false); } 1496 void clearSelfNeedsOverflowRecalcAfterStyleChange() { m_bitfields.setSelfNee dsOverflowRecalcAfterStyleChange(false); }
1499 void clearChildNeedsOverflowRecalcAfterStyleChange() { m_bitfields.setChildN eedsOverflowRecalcAfterStyleChange(false); } 1497 void clearChildNeedsOverflowRecalcAfterStyleChange() { m_bitfields.setChildN eedsOverflowRecalcAfterStyleChange(false); }
1500 void setShouldInvalidateOverflowForPaint() { m_bitfields.setShouldInvalidate OverflowForPaint(true); } 1498 void setShouldInvalidateOverflowForPaint() { m_bitfields.setShouldInvalidate OverflowForPaint(true); }
1501 void setEverHadLayout() { m_bitfields.setEverHadLayout(true); } 1499 void setEverHadLayout() { m_bitfields.setEverHadLayout(true); }
1502 1500
1503 // Remove this object and all descendants from the containing LayoutFlowThre ad. 1501 // Remove this object and all descendants from the containing LayoutFlowThre ad.
1504 void removeFromLayoutFlowThread(); 1502 void removeFromLayoutFlowThread();
(...skipping 589 matching lines...) Expand 10 before | Expand all | Expand 10 after
2094 void showTree(const blink::LayoutObject*); 2092 void showTree(const blink::LayoutObject*);
2095 void showLineTree(const blink::LayoutObject*); 2093 void showLineTree(const blink::LayoutObject*);
2096 void showLayoutTree(const blink::LayoutObject* object1); 2094 void showLayoutTree(const blink::LayoutObject* object1);
2097 // We don't make object2 an optional parameter so that showLayoutTree 2095 // We don't make object2 an optional parameter so that showLayoutTree
2098 // can be called from gdb easily. 2096 // can be called from gdb easily.
2099 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2); 2097 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2);
2100 2098
2101 #endif 2099 #endif
2102 2100
2103 #endif // LayoutObject_h 2101 #endif // LayoutObject_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutInline.cpp ('k') | third_party/WebKit/Source/core/layout/LayoutObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698