Chromium Code Reviews| Index: third_party/WebKit/Source/core/frame/FrameView.h |
| diff --git a/third_party/WebKit/Source/core/frame/FrameView.h b/third_party/WebKit/Source/core/frame/FrameView.h |
| index f3496595a49b91242f2929265d357eb26dab8317..2a817d90470e1d85b74227346d9c63e3aebe21b1 100644 |
| --- a/third_party/WebKit/Source/core/frame/FrameView.h |
| +++ b/third_party/WebKit/Source/core/frame/FrameView.h |
| @@ -64,6 +64,7 @@ class DocumentLifecycle; |
| class Cursor; |
| class Element; |
| class ElementVisibilityObserver; |
| +class Frame; |
| class FloatSize; |
| class JSONArray; |
| class JSONObject; |
| @@ -767,6 +768,24 @@ class CORE_EXPORT FrameView final |
| // Only for SPv2. |
| std::unique_ptr<JSONObject> compositedLayersAsJSON(LayerTreeFlags); |
| + // Recursively update frame tree. Each frame has its only |
|
pdr.
2016/12/17 05:50:16
+1, nice comment.
yigu
2016/12/18 17:57:11
Thanks for your previous suggestion on this :)
|
| + // scroll on main reason. Given the following frame tree |
| + // A |
| + // / \ |
| + // B C |
| + // | |
| + // D |
| + // If B has fixed background-attachment but other frames |
| + // don't, both A and C should scroll on cc. Frame D should |
| + // scrolled on main thread as its ancestor B. |
| + void updateSubFrameScrollOnMainReason(const Frame&, |
| + MainThreadScrollingReasons); |
| + String mainThreadScrollingReasonsAsText() const; |
| + MainThreadScrollingReasons mainThreadScrollingReasons() const; |
| + MainThreadScrollingReasons mainThreadScrollingReasonsPerFrame( |
| + const LocalFrame&) const; |
| + bool hasVisibleSlowRepaintViewportConstrainedObjects(const FrameView&) const; |
| + |
| protected: |
| // Scroll the content via the compositor. |
| bool scrollContentsFastPath(const IntSize& scrollDelta); |
| @@ -1132,6 +1151,8 @@ class CORE_EXPORT FrameView final |
| // For Slimming Paint v2 only. |
| std::unique_ptr<PaintController> m_paintController; |
| std::unique_ptr<PaintArtifactCompositor> m_paintArtifactCompositor; |
| + |
| + MainThreadScrollingReasons m_lastMainThreadScrollingReasons; |
|
pdr.
2016/12/17 05:50:16
Is "last" important? m_mainThreadScrollingReasons
yigu
2016/12/18 17:57:11
Done.
|
| }; |
| inline void FrameView::incrementVisuallyNonEmptyCharacterCount(unsigned count) { |