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

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

Issue 1647793002: Use ScrollAnchor in FrameView and PaintLayerScrollableArea. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@anchor-skeleton
Patch Set: address review comment Created 4 years, 10 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 1497 matching lines...) Expand 10 before | Expand all | Expand 10 after
1508 void setShouldInvalidateOverflowForPaint() { m_bitfields.setShouldInvalidate OverflowForPaint(true); } 1508 void setShouldInvalidateOverflowForPaint() { m_bitfields.setShouldInvalidate OverflowForPaint(true); }
1509 void setEverHadLayout() { m_bitfields.setEverHadLayout(true); } 1509 void setEverHadLayout() { m_bitfields.setEverHadLayout(true); }
1510 1510
1511 // Remove this object and all descendants from the containing LayoutFlowThre ad. 1511 // Remove this object and all descendants from the containing LayoutFlowThre ad.
1512 void removeFromLayoutFlowThread(); 1512 void removeFromLayoutFlowThread();
1513 1513
1514 bool containsInlineWithOutlineAndContinuation() const { return m_bitfields.c ontainsInlineWithOutlineAndContinuation(); } 1514 bool containsInlineWithOutlineAndContinuation() const { return m_bitfields.c ontainsInlineWithOutlineAndContinuation(); }
1515 void setContainsInlineWithOutlineAndContinuation(bool b) { m_bitfields.setCo ntainsInlineWithOutlineAndContinuation(b); } 1515 void setContainsInlineWithOutlineAndContinuation(bool b) { m_bitfields.setCo ntainsInlineWithOutlineAndContinuation(b); }
1516 1516
1517 const LayoutRect& previousPaintInvalidationRect() const { return m_previousP aintInvalidationRect; } 1517 const LayoutRect& previousPaintInvalidationRect() const { return m_previousP aintInvalidationRect; }
1518 bool scrollAnchoringEnabled() const;
1518 1519
1519 private: 1520 private:
1520 // This function generates a full invalidation, which 1521 // This function generates a full invalidation, which
1521 // means invalidating both |oldBounds| and |newBounds|. 1522 // means invalidating both |oldBounds| and |newBounds|.
1522 // 1523 //
1523 // This is the default choice when generating an invalidation, 1524 // This is the default choice when generating an invalidation,
1524 // as it is always correct, albeit it may force some extra painting. 1525 // as it is always correct, albeit it may force some extra painting.
1525 void fullyInvalidatePaint(const LayoutBoxModelObject& paintInvalidationConta iner, PaintInvalidationReason, const LayoutRect& oldBounds, const LayoutRect& ne wBounds); 1526 void fullyInvalidatePaint(const LayoutBoxModelObject& paintInvalidationConta iner, PaintInvalidationReason, const LayoutRect& oldBounds, const LayoutRect& ne wBounds);
1526 1527
1527 // Adjusts a paint invalidation rect in the space of |m_previousPaintInvalid ationRect| and |m_previousPositionFromPaintInvalidationBacking| 1528 // Adjusts a paint invalidation rect in the space of |m_previousPaintInvalid ationRect| and |m_previousPositionFromPaintInvalidationBacking|
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
1579 #endif 1580 #endif
1580 1581
1581 bool isTextOrSVGChild() const { return isText() || (isSVG() && !isSVGRoot()) ; } 1582 bool isTextOrSVGChild() const { return isText() || (isSVG() && !isSVGRoot()) ; }
1582 1583
1583 static bool isAllowedToModifyLayoutTreeStructure(Document&); 1584 static bool isAllowedToModifyLayoutTreeStructure(Document&);
1584 1585
1585 // The passed rect is mutated into the coordinate space of the paint invalid ation container. 1586 // The passed rect is mutated into the coordinate space of the paint invalid ation container.
1586 const LayoutBoxModelObject* invalidatePaintRectangleInternal(const LayoutRec t&) const; 1587 const LayoutBoxModelObject* invalidatePaintRectangleInternal(const LayoutRec t&) const;
1587 1588
1588 static LayoutPoint uninitializedPaintOffset() { return LayoutPoint(LayoutUni t::max(), LayoutUnit::max()); } 1589 static LayoutPoint uninitializedPaintOffset() { return LayoutPoint(LayoutUni t::max(), LayoutUnit::max()); }
1590 void clearScrollAnchorIfNeeded() const;
1589 1591
1590 RefPtr<ComputedStyle> m_style; 1592 RefPtr<ComputedStyle> m_style;
1591 1593
1592 // Oilpan: raw pointer back to the owning Node is considered safe. 1594 // Oilpan: raw pointer back to the owning Node is considered safe.
1593 GC_PLUGIN_IGNORE("http://crbug.com/509911") 1595 GC_PLUGIN_IGNORE("http://crbug.com/509911")
1594 Node* m_node; 1596 Node* m_node;
1595 1597
1596 LayoutObject* m_parent; 1598 LayoutObject* m_parent;
1597 LayoutObject* m_previous; 1599 LayoutObject* m_previous;
1598 LayoutObject* m_next; 1600 LayoutObject* m_next;
(...skipping 506 matching lines...) Expand 10 before | Expand all | Expand 10 after
2105 void showTree(const blink::LayoutObject*); 2107 void showTree(const blink::LayoutObject*);
2106 void showLineTree(const blink::LayoutObject*); 2108 void showLineTree(const blink::LayoutObject*);
2107 void showLayoutTree(const blink::LayoutObject* object1); 2109 void showLayoutTree(const blink::LayoutObject* object1);
2108 // We don't make object2 an optional parameter so that showLayoutTree 2110 // We don't make object2 an optional parameter so that showLayoutTree
2109 // can be called from gdb easily. 2111 // can be called from gdb easily.
2110 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2); 2112 void showLayoutTree(const blink::LayoutObject* object1, const blink::LayoutObjec t* object2);
2111 2113
2112 #endif 2114 #endif
2113 2115
2114 #endif // LayoutObject_h 2116 #endif // LayoutObject_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698