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

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

Issue 1026823002: [S.P.] Don't draw frames of animated images that are offscreen (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 9 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 | Annotate | Revision Log
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 864 matching lines...) Expand 10 before | Expand all | Expand 10 after
875 // FIXME: |paintInvalidationContainer| should never be 0. See crbug.com/3636 99. 875 // FIXME: |paintInvalidationContainer| should never be 0. See crbug.com/3636 99.
876 void invalidatePaintUsingContainer(const LayoutBoxModelObject* paintInvalida tionContainer, const LayoutRect&, PaintInvalidationReason) const; 876 void invalidatePaintUsingContainer(const LayoutBoxModelObject* paintInvalida tionContainer, const LayoutRect&, PaintInvalidationReason) const;
877 877
878 // Invalidate the paint of a specific subrectangle within a given object. Th e rect |r| is in the object's coordinate space. 878 // Invalidate the paint of a specific subrectangle within a given object. Th e rect |r| is in the object's coordinate space.
879 void invalidatePaintRectangle(const LayoutRect&) const; 879 void invalidatePaintRectangle(const LayoutRect&) const;
880 void invalidatePaintRectangleNotInvalidatingDisplayItemClients(const LayoutR ect& r) const { invalidatePaintRectangleInternal(r); } 880 void invalidatePaintRectangleNotInvalidatingDisplayItemClients(const LayoutR ect& r) const { invalidatePaintRectangleInternal(r); }
881 881
882 void invalidateSelectionIfNeeded(const LayoutBoxModelObject&, PaintInvalidat ionReason); 882 void invalidateSelectionIfNeeded(const LayoutBoxModelObject&, PaintInvalidat ionReason);
883 883
884 // Walk the tree after layout issuing paint invalidations for renderers that have changed or moved, updating bounds that have changed, and clearing paint in validation state. 884 // Walk the tree after layout issuing paint invalidations for renderers that have changed or moved, updating bounds that have changed, and clearing paint in validation state.
885 virtual void invalidateTreeIfNeeded(const PaintInvalidationState&); 885 virtual void invalidateTreeIfNeeded(PaintInvalidationState&);
886 886
887 virtual void invalidatePaintForOverflow(); 887 virtual void invalidatePaintForOverflow();
888 void invalidatePaintForOverflowIfNeeded(); 888 void invalidatePaintForOverflowIfNeeded();
889 889
890 void invalidatePaintIncludingNonCompositingDescendants(); 890 void invalidatePaintIncludingNonCompositingDescendants();
891 891
892 // Returns the rect that should have paint invalidated whenever this object changes. The rect is in the view's 892 // Returns the rect that should have paint invalidated whenever this object changes. The rect is in the view's
893 // coordinate space. This method deals with outlines and overflow. 893 // coordinate space. This method deals with outlines and overflow.
894 virtual LayoutRect absoluteClippedOverflowRect() const; 894 virtual LayoutRect absoluteClippedOverflowRect() const;
895 virtual LayoutRect clippedOverflowRectForPaintInvalidation(const LayoutBoxMo delObject* paintInvalidationContainer, const PaintInvalidationState* = 0) const; 895 virtual LayoutRect clippedOverflowRectForPaintInvalidation(const LayoutBoxMo delObject* paintInvalidationContainer, const PaintInvalidationState* = 0) const;
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after
1206 1206
1207 virtual bool hasNonCompositedScrollbars() const { return false; } 1207 virtual bool hasNonCompositedScrollbars() const { return false; }
1208 1208
1209 #if ENABLE(ASSERT) 1209 #if ENABLE(ASSERT)
1210 virtual bool paintInvalidationStateIsDirty() const 1210 virtual bool paintInvalidationStateIsDirty() const
1211 { 1211 {
1212 return neededLayoutBecauseOfChildren() || shouldCheckForPaintInvalidatio nRegardlessOfPaintInvalidationState(); 1212 return neededLayoutBecauseOfChildren() || shouldCheckForPaintInvalidatio nRegardlessOfPaintInvalidationState();
1213 } 1213 }
1214 #endif 1214 #endif
1215 1215
1216 virtual void invalidatePaintOfSubtreesIfNeeded(const PaintInvalidationState& childPaintInvalidationState); 1216 virtual void invalidatePaintOfSubtreesIfNeeded(PaintInvalidationState& child PaintInvalidationState);
1217 virtual PaintInvalidationReason invalidatePaintIfNeeded(const PaintInvalidat ionState&, const LayoutBoxModelObject& paintInvalidationContainer); 1217 virtual PaintInvalidationReason invalidatePaintIfNeeded(PaintInvalidationSta te&, const LayoutBoxModelObject& paintInvalidationContainer);
1218 1218
1219 // When this object is invalidated for paint, this method is called to inval idate any DisplayItemClients 1219 // When this object is invalidated for paint, this method is called to inval idate any DisplayItemClients
1220 // owned by this object, including the object itself, LayoutText/LayoutInlin e line boxes, etc., 1220 // owned by this object, including the object itself, LayoutText/LayoutInlin e line boxes, etc.,
1221 // not including children which will be invalidated normally during invalida teTreeIfNeeded() and 1221 // not including children which will be invalidated normally during invalida teTreeIfNeeded() and
1222 // parts which are invalidated separately (e.g. scrollbars). 1222 // parts which are invalidated separately (e.g. scrollbars).
1223 virtual void invalidateDisplayItemClients(const LayoutBoxModelObject& paintI nvalidationContainer) const; 1223 virtual void invalidateDisplayItemClients(const LayoutBoxModelObject& paintI nvalidationContainer) const;
1224 1224
1225 private: 1225 private:
1226 void setLayoutDidGetCalledSinceLastFrame() 1226 void setLayoutDidGetCalledSinceLastFrame()
1227 { 1227 {
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after
1661 void showTree(const blink::LayoutObject*); 1661 void showTree(const blink::LayoutObject*);
1662 void showLineTree(const blink::LayoutObject*); 1662 void showLineTree(const blink::LayoutObject*);
1663 void showLayoutTree(const blink::LayoutObject* object1); 1663 void showLayoutTree(const blink::LayoutObject* object1);
1664 // We don't make object2 an optional parameter so that showLayoutTree 1664 // We don't make object2 an optional parameter so that showLayoutTree
1665 // can be called from gdb easily. 1665 // can be called from gdb easily.
1666 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2); 1666 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2);
1667 1667
1668 #endif 1668 #endif
1669 1669
1670 #endif // LayoutObject_h 1670 #endif // LayoutObject_h
OLDNEW
« no previous file with comments | « Source/core/layout/LayoutMultiColumnSpannerPlaceholder.cpp ('k') | Source/core/layout/LayoutObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698