| Index: Source/core/frame/FrameView.h
|
| diff --git a/Source/core/frame/FrameView.h b/Source/core/frame/FrameView.h
|
| index c8d50bd533aac6ebb826fc1e092713ff609342d6..3de207f2fac6c4224829b7e43564dde29107b1a4 100644
|
| --- a/Source/core/frame/FrameView.h
|
| +++ b/Source/core/frame/FrameView.h
|
| @@ -102,10 +102,12 @@ public:
|
| bool layoutPending() const;
|
| bool isInPerformLayout() const;
|
|
|
| - LayoutObject* layoutRoot(bool onlyDuringLayout = false) const;
|
| - void clearLayoutSubtreeRoot() { m_layoutSubtreeRoot = nullptr; }
|
| + bool isLayoutRoot(const LayoutObject*) const;
|
| + void clearLayoutSubtreeRoot(const LayoutObject*);
|
| int layoutCount() const { return m_layoutCount; }
|
|
|
| + void countObjectsNeedingLayout(unsigned& needsLayoutObjects, unsigned& totalObjects, bool& isPartial);
|
| +
|
| bool needsLayout() const;
|
| void setNeedsLayout();
|
|
|
| @@ -326,7 +328,7 @@ public:
|
| // FIXME: This should probably be renamed as the 'inSubtreeLayout' parameter
|
| // passed around the FrameView layout methods can be true while this returns
|
| // false.
|
| - bool isSubtreeLayout() const { return !!m_layoutSubtreeRoot; }
|
| + bool isSubtreeLayout() const { return m_isSubtreeLayout; }
|
|
|
| // Sets the tickmarks for the FrameView, overriding the default behavior
|
| // which is to display the tickmarks corresponding to find results.
|
| @@ -602,6 +604,8 @@ private:
|
| void reset();
|
| void init();
|
|
|
| + void clearLayoutSubtreeRootsAndMarkContainingBlocks();
|
| +
|
| // Called when our frame rect changes (or the rect/scroll position of an ancestor changes).
|
| virtual void frameRectsChanged() override;
|
|
|
| @@ -615,14 +619,12 @@ private:
|
| void updateCounters();
|
| void forceLayoutParentViewIfNeeded();
|
| void performPreLayoutTasks();
|
| - void performLayout(LayoutObject* rootForThisLayout, bool inSubtreeLayout);
|
| + void performLayout(bool inSubtreeLayout);
|
| void scheduleOrPerformPostLayoutTasks();
|
| void performPostLayoutTasks();
|
|
|
| void invalidateTreeIfNeeded();
|
|
|
| - void gatherDebugLayoutRects(LayoutObject* layoutRoot);
|
| -
|
| DocumentLifecycle& lifecycle() const;
|
|
|
| void contentRectangleForPaintInvalidation(const IntRect&);
|
| @@ -720,6 +722,8 @@ private:
|
|
|
| bool m_hasPendingLayout;
|
| LayoutObject* m_layoutSubtreeRoot;
|
| + HashSet<LayoutObject*> m_layoutSubtreeRoots;
|
| + bool m_isSubtreeLayout;
|
|
|
| bool m_layoutSchedulingEnabled;
|
| bool m_inPerformLayout;
|
|
|