| Index: third_party/WebKit/Source/core/frame/VisualViewport.h
|
| diff --git a/third_party/WebKit/Source/core/frame/VisualViewport.h b/third_party/WebKit/Source/core/frame/VisualViewport.h
|
| index 295c52a5ef9f2c88d69bd495aa220c02a8b0a980..d8cf8d8ffe9e6124c05f655878f91d5d603e53ab 100644
|
| --- a/third_party/WebKit/Source/core/frame/VisualViewport.h
|
| +++ b/third_party/WebKit/Source/core/frame/VisualViewport.h
|
| @@ -55,6 +55,7 @@ class GraphicsLayer;
|
| class IntRect;
|
| class IntSize;
|
| class LocalFrame;
|
| +class ScrollAndScaleEmulator;
|
|
|
| // Represents the visual viewport the user is currently seeing the page through. This
|
| // class corresponds to the InnerViewport on the compositor. It is a ScrollableArea; it's
|
| @@ -100,6 +101,9 @@ public:
|
| void move(const FloatSize&);
|
| FloatPoint location() const { return m_offset; }
|
|
|
| + // Override the scroll location and scale with values from the emulator. Passing |nullptr| clears override.
|
| + void setScrollAndScaleEmulator(ScrollAndScaleEmulator*);
|
| +
|
| // Sets the size of the inner viewport when unscaled in CSS pixels.
|
| void setSize(const IntSize&);
|
| IntSize size() const { return m_size; }
|
| @@ -181,6 +185,7 @@ public:
|
| IntPoint scrollPosition() const override { return flooredIntPoint(m_offset); }
|
| DoublePoint scrollPositionDouble() const override { return m_offset; }
|
| IntPoint minimumScrollPosition() const override;
|
| + DoublePoint minimumScrollPositionDouble() const override;
|
| IntPoint maximumScrollPosition() const override;
|
| DoublePoint maximumScrollPositionDouble() const override;
|
| int visibleHeight() const override { return visibleRect().height(); }
|
| @@ -235,6 +240,10 @@ private:
|
| void setupScrollbar(WebScrollbar::Orientation);
|
| FloatPoint clampOffsetToBoundaries(const FloatPoint&);
|
|
|
| + // Calculate the physical minimum/maximum scroll positions without any overrides applied.
|
| + DoublePoint calculateMinimumScrollPositionDouble() const;
|
| + DoublePoint calculateMaximumScrollPositionDouble() const;
|
| +
|
| LocalFrame* mainFrame() const;
|
|
|
| FrameHost& frameHost() const
|
| @@ -261,6 +270,8 @@ private:
|
| float m_topControlsAdjustment;
|
| float m_maxPageScale;
|
| bool m_trackPinchZoomStatsForPage;
|
| +
|
| + Member<ScrollAndScaleEmulator> m_scrollAndScaleEmulator;
|
| };
|
|
|
| } // namespace blink
|
|
|