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 1e084e3b896570c842a46c03a79deede6bc74c26..9a559e5b0d39eff3831d1263b9d512248c8f0928 100644 |
--- a/third_party/WebKit/Source/core/frame/FrameView.h |
+++ b/third_party/WebKit/Source/core/frame/FrameView.h |
@@ -77,6 +77,7 @@ class LayoutScrollbarPart; |
class LayoutView; |
class PaintInvalidationState; |
class Page; |
+class ScrollAndScaleEmulator; |
class ScrollingCoordinator; |
class TracedValue; |
struct AnnotatedRegionValue; |
@@ -190,6 +191,9 @@ public: |
void setScrollPosition(const DoublePoint&, ScrollType, ScrollBehavior = ScrollBehaviorInstant) override; |
+ // Override the scroll position with values from the emulator. Passing |nullptr| clears override. |
+ void setScrollAndScaleEmulator(const RefPtr<ScrollAndScaleEmulator>&); |
+ |
void didUpdateElasticOverscroll(); |
void viewportSizeChanged(bool widthChanged, bool heightChanged); |
@@ -749,6 +753,10 @@ private: |
ScrollingCoordinator* scrollingCoordinator() const; |
+ // Calculate the physical minimum/maximum scroll positions without any overrides applied. |
+ IntPoint calculateMinimumScrollPosition() const; |
+ IntPoint calculateMaximumScrollPosition() const; |
+ |
void prepareLayoutAnalyzer(); |
std::unique_ptr<TracedValue> analyzerCounters(); |
@@ -867,6 +875,8 @@ private: |
DoublePoint m_scrollPosition; |
IntSize m_contentsSize; |
+ RefPtr<ScrollAndScaleEmulator> m_scrollAndScaleEmulator; |
bokan
2016/07/04 22:44:09
This should be Member<ScrollAndScaleEmulator> (see
Eric Seckler
2016/07/05 16:46:51
Done.
|
+ |
int m_scrollbarsAvoidingResizer; |
bool m_scrollbarsSuppressed; |