| Index: Source/core/frame/PinchViewport.h
|
| diff --git a/Source/core/frame/PinchViewport.h b/Source/core/frame/PinchViewport.h
|
| index 4ab3a0246d63e1fb369b94916424311e8128b66a..183545b2f9f2d00617d2475091c5bab6cf03bd53 100644
|
| --- a/Source/core/frame/PinchViewport.h
|
| +++ b/Source/core/frame/PinchViewport.h
|
| @@ -83,7 +83,6 @@ public:
|
| FloatPoint location() const { return m_offset; }
|
|
|
| // Sets the size of the inner viewport when unscaled in CSS pixels.
|
| - // This will be clamped to the size of the outer viewport (the main frame).
|
| void setSize(const IntSize&);
|
| IntSize size() const { return m_size; }
|
|
|
| @@ -118,6 +117,14 @@ public:
|
| // scroll extents of the viewport within the document.
|
| IntPoint clampDocumentOffsetAtScale(const IntPoint& offset, float scale);
|
|
|
| + // FIXME(bokan): This is kind of a hack. Ideally, we would just resize the
|
| + // viewports to account for top controls. However, FrameView includes much
|
| + // more than just scrolling so we can't simply resize it without incurring
|
| + // all sorts of side-effects. Until we can seperate out the scrollability
|
| + // aspect from FrameView, we use this method to let PinchViewport make the
|
| + // necessary adjustments so that we don't incorrectly clamp scroll offsets
|
| + // coming from the compositor.
|
| + void setTopControlsAdjustment(float);
|
| private:
|
| // ScrollableArea implementation
|
| virtual bool isActive() const override { return false; }
|
| @@ -167,6 +174,7 @@ private:
|
| FloatPoint m_offset;
|
| float m_scale;
|
| IntSize m_size;
|
| + float m_topControlsAdjustment;
|
| };
|
|
|
| } // namespace blink
|
|
|