Index: Source/core/frame/FrameView.h |
diff --git a/Source/core/frame/FrameView.h b/Source/core/frame/FrameView.h |
index dffc6f79fa8f9ec0e1199240eb2218c26f5f2bbd..80e5e88534508d05d9ce9d854b680c1c1ba41ff9 100644 |
--- a/Source/core/frame/FrameView.h |
+++ b/Source/core/frame/FrameView.h |
@@ -307,6 +307,13 @@ public: |
// If |m_tickmarks| is empty, the default behavior is restored. |
void setTickmarks(const Vector<IntRect>& tickmarks) { m_tickmarks = tickmarks; } |
+ // Since the compositor can resize the viewport due to top controls and |
+ // commit scroll offsets before a WebView::resize occurs, we need to adjust |
+ // our scroll extents to prevent clamping the scroll offsets. |
+ void setTopControlsViewportAdjustment(float); |
+ |
+ virtual IntPoint maximumScrollPosition() const OVERRIDE; |
+ |
// ScrollableArea interface |
virtual void invalidateScrollbarRect(Scrollbar*, const IntRect&) OVERRIDE; |
virtual void getTickmarks(Vector<IntRect>&) const OVERRIDE; |
@@ -488,6 +495,7 @@ private: |
Vector<IntRect> m_tickmarks; |
bool m_needsUpdateWidgetPositions; |
+ float m_topControlsViewportAdjustment; |
}; |
inline void FrameView::incrementVisuallyNonEmptyCharacterCount(unsigned count) |