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

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

Powered by Google App Engine
This is Rietveld 408576698