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

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

Issue 1161913002: Remove outdated FIXME (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: add containerForPaintInvalidationOnRootedTree Created 5 years, 6 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
« no previous file with comments | « Source/core/layout/LayoutBox.cpp ('k') | Source/core/layout/LayoutObject.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 825 matching lines...) Expand 10 before | Expand all | Expand 10 after
836 TextDecorationStyle style; 836 TextDecorationStyle style;
837 AppliedTextDecoration() : color(Color::transparent), style(TextDecoratio nStyleSolid) { } 837 AppliedTextDecoration() : color(Color::transparent), style(TextDecoratio nStyleSolid) { }
838 }; 838 };
839 839
840 void getTextDecorations(unsigned decorations, AppliedTextDecoration& underli ne, AppliedTextDecoration& overline, AppliedTextDecoration& linethrough, bool qu irksMode = false, bool firstlineStyle = false); 840 void getTextDecorations(unsigned decorations, AppliedTextDecoration& underli ne, AppliedTextDecoration& overline, AppliedTextDecoration& linethrough, bool qu irksMode = false, bool firstlineStyle = false);
841 841
842 // Return the LayoutBoxModelObject in the container chain which is responsib le for painting this object, or 0 842 // Return the LayoutBoxModelObject in the container chain which is responsib le for painting this object, or 0
843 // if painting is root-relative. This is the container that should be passed to the 'forPaintInvalidation' 843 // if painting is root-relative. This is the container that should be passed to the 'forPaintInvalidation'
844 // methods. 844 // methods.
845 const LayoutBoxModelObject* containerForPaintInvalidation() const; 845 const LayoutBoxModelObject* containerForPaintInvalidation() const;
846 const LayoutBoxModelObject& containerForPaintInvalidationOnRootedTree() cons t;
846 const LayoutBoxModelObject* adjustCompositedContainerForSpecialAncestors(con st LayoutBoxModelObject* paintInvalidationContainer) const; 847 const LayoutBoxModelObject* adjustCompositedContainerForSpecialAncestors(con st LayoutBoxModelObject* paintInvalidationContainer) const;
847 bool isPaintInvalidationContainer() const; 848 bool isPaintInvalidationContainer() const;
848 849
849 LayoutRect computePaintInvalidationRect() 850 LayoutRect computePaintInvalidationRect()
850 { 851 {
851 return computePaintInvalidationRect(containerForPaintInvalidation()); 852 return computePaintInvalidationRect(containerForPaintInvalidation());
852 } 853 }
853 854
854 // Returns the paint invalidation rect for this LayoutObject in the coordina te space of the paint backing (typically a GraphicsLayer) for |paintInvalidation Container|. 855 // Returns the paint invalidation rect for this LayoutObject in the coordina te space of the paint backing (typically a GraphicsLayer) for |paintInvalidation Container|.
855 LayoutRect computePaintInvalidationRect(const LayoutBoxModelObject* paintInv alidationContainer, const PaintInvalidationState* = 0) const; 856 LayoutRect computePaintInvalidationRect(const LayoutBoxModelObject* paintInv alidationContainer, const PaintInvalidationState* = 0) const;
856 857
857 // Returns the rect bounds needed to invalidate the paint of this object, in the coordinate space of the layoutObject backing of |paintInvalidationContainer | 858 // Returns the rect bounds needed to invalidate the paint of this object, in the coordinate space of the layoutObject backing of |paintInvalidationContainer |
858 LayoutRect boundsRectForPaintInvalidation(const LayoutBoxModelObject* paintI nvalidationContainer, const PaintInvalidationState* = 0) const; 859 LayoutRect boundsRectForPaintInvalidation(const LayoutBoxModelObject* paintI nvalidationContainer, const PaintInvalidationState* = 0) const;
859 860
860 // Actually do the paint invalidate of rect r for this object which has been computed in the coordinate space 861 // Actually do the paint invalidate of rect r for this object which has been computed in the coordinate space
861 // of the GraphicsLayer backing of |paintInvalidationContainer|. Note that t his coordinaten space is not the same 862 // of the GraphicsLayer backing of |paintInvalidationContainer|. Note that t his coordinaten space is not the same
862 // as the local coordinate space of |paintInvalidationContainer| in the pres ence of layer squashing. 863 // as the local coordinate space of |paintInvalidationContainer| in the pres ence of layer squashing.
863 // If |paintInvalidationContainer| is 0, invalidate paints via the view. 864 void invalidatePaintUsingContainer(const LayoutBoxModelObject& paintInvalida tionContainer, const LayoutRect&, PaintInvalidationReason) const;
864 // FIXME: |paintInvalidationContainer| should never be 0. See crbug.com/3636 99.
Julien - ping for review 2015/06/03 21:10:12 Great that you're updating this comment! The long
865 void invalidatePaintUsingContainer(const LayoutBoxModelObject* paintInvalida tionContainer, const LayoutRect&, PaintInvalidationReason) const;
866 865
867 // Invalidate the paint of a specific subrectangle within a given object. Th e rect |r| is in the object's coordinate space. 866 // Invalidate the paint of a specific subrectangle within a given object. Th e rect |r| is in the object's coordinate space.
868 void invalidatePaintRectangle(const LayoutRect&) const; 867 void invalidatePaintRectangle(const LayoutRect&) const;
869 void invalidatePaintRectangleNotInvalidatingDisplayItemClients(const LayoutR ect& r) const { invalidatePaintRectangleInternal(r); } 868 void invalidatePaintRectangleNotInvalidatingDisplayItemClients(const LayoutR ect& r) const { invalidatePaintRectangleInternal(r); }
870 869
871 // Walk the tree after layout issuing paint invalidations for layoutObjects that have changed or moved, updating bounds that have changed, and clearing pain t invalidation state. 870 // Walk the tree after layout issuing paint invalidations for layoutObjects that have changed or moved, updating bounds that have changed, and clearing pain t invalidation state.
872 virtual void invalidateTreeIfNeeded(PaintInvalidationState&); 871 virtual void invalidateTreeIfNeeded(PaintInvalidationState&);
873 872
874 virtual void invalidatePaintForOverflow(); 873 virtual void invalidatePaintForOverflow();
875 void invalidatePaintForOverflowIfNeeded(); 874 void invalidatePaintForOverflowIfNeeded();
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after
1222 1221
1223 inline void invalidateSelectionIfNeeded(const LayoutBoxModelObject&, PaintIn validationReason); 1222 inline void invalidateSelectionIfNeeded(const LayoutBoxModelObject&, PaintIn validationReason);
1224 1223
1225 inline void invalidateContainerPreferredLogicalWidths(); 1224 inline void invalidateContainerPreferredLogicalWidths();
1226 1225
1227 void clearMayNeedPaintInvalidation(); 1226 void clearMayNeedPaintInvalidation();
1228 1227
1229 void setLayoutDidGetCalledSinceLastFrame(); 1228 void setLayoutDidGetCalledSinceLastFrame();
1230 void clearLayoutDidGetCalledSinceLastFrame() { m_bitfields.setLayoutDidGetCa lledSinceLastFrame(false); } 1229 void clearLayoutDidGetCalledSinceLastFrame() { m_bitfields.setLayoutDidGetCa lledSinceLastFrame(false); }
1231 1230
1232 void invalidatePaintIncludingNonCompositingDescendantsInternal(const LayoutB oxModelObject* repaintContainer); 1231 void invalidatePaintIncludingNonCompositingDescendantsInternal(const LayoutB oxModelObject& repaintContainer);
1233 1232
1234 LayoutRect previousSelectionRectForPaintInvalidation() const; 1233 LayoutRect previousSelectionRectForPaintInvalidation() const;
1235 void setPreviousSelectionRectForPaintInvalidation(const LayoutRect&); 1234 void setPreviousSelectionRectForPaintInvalidation(const LayoutRect&);
1236 1235
1237 const LayoutBoxModelObject* enclosingCompositedContainer() const; 1236 const LayoutBoxModelObject* enclosingCompositedContainer() const;
1238 1237
1239 LayoutFlowThread* locateFlowThreadContainingBlock() const; 1238 LayoutFlowThread* locateFlowThreadContainingBlock() const;
1240 void removeFromLayoutFlowThread(); 1239 void removeFromLayoutFlowThread();
1241 void removeFromLayoutFlowThreadRecursive(LayoutFlowThread*); 1240 void removeFromLayoutFlowThreadRecursive(LayoutFlowThread*);
1242 1241
(...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after
1665 void showTree(const blink::LayoutObject*); 1664 void showTree(const blink::LayoutObject*);
1666 void showLineTree(const blink::LayoutObject*); 1665 void showLineTree(const blink::LayoutObject*);
1667 void showLayoutTree(const blink::LayoutObject* object1); 1666 void showLayoutTree(const blink::LayoutObject* object1);
1668 // We don't make object2 an optional parameter so that showLayoutTree 1667 // We don't make object2 an optional parameter so that showLayoutTree
1669 // can be called from gdb easily. 1668 // can be called from gdb easily.
1670 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2); 1669 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2);
1671 1670
1672 #endif 1671 #endif
1673 1672
1674 #endif // LayoutObject_h 1673 #endif // LayoutObject_h
OLDNEW
« no previous file with comments | « Source/core/layout/LayoutBox.cpp ('k') | Source/core/layout/LayoutObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698