| Index: Source/web/WebViewImpl.cpp
|
| diff --git a/Source/web/WebViewImpl.cpp b/Source/web/WebViewImpl.cpp
|
| index 46b04e047392f71c8e84ee1d9668fa0682a82903..f7041a87186bb522c316bf7d9ae04c7ce60f63ec 100644
|
| --- a/Source/web/WebViewImpl.cpp
|
| +++ b/Source/web/WebViewImpl.cpp
|
| @@ -3210,6 +3210,24 @@ void WebViewImpl::setIgnoreViewportTagScaleLimits(bool ignore)
|
| setUserAgentPageScaleConstraints(constraints);
|
| }
|
|
|
| +IntSize WebViewImpl::mainFrameSize()
|
| +{
|
| + if (!pinchVirtualViewportEnabled() || !localFrameRootTemporary())
|
| + return m_size;
|
| +
|
| + FrameView* view = localFrameRootTemporary()->frameView();
|
| +
|
| + if (!view)
|
| + return m_size;
|
| +
|
| + int contentAndScrollbarWidth = contentsSize().width();
|
| +
|
| + if (view && view->verticalScrollbar() && !view->verticalScrollbar()->isOverlayScrollbar())
|
| + contentAndScrollbarWidth += view->verticalScrollbar()->width();
|
| +
|
| + return m_pageScaleConstraintsSet.mainFrameSize(contentAndScrollbarWidth);
|
| +}
|
| +
|
| void WebViewImpl::refreshPageScaleFactorAfterLayout()
|
| {
|
| if (!mainFrame() || !page() || !page()->mainFrame() || !page()->mainFrame()->isLocalFrame() || !page()->deprecatedLocalMainFrame()->view())
|
| @@ -3226,13 +3244,8 @@ void WebViewImpl::refreshPageScaleFactorAfterLayout()
|
| m_pageScaleConstraintsSet.adjustFinalConstraintsToContentsSize(contentsSize(), verticalScrollbarWidth);
|
| }
|
|
|
| - if (pinchVirtualViewportEnabled()) {
|
| - int contentAndScrollbarWidth = contentsSize().width();
|
| - if (view->verticalScrollbar() && !view->verticalScrollbar()->isOverlayScrollbar())
|
| - contentAndScrollbarWidth += view->verticalScrollbar()->width();
|
| -
|
| - view->resize(m_pageScaleConstraintsSet.mainFrameSize(contentAndScrollbarWidth));
|
| - }
|
| + if (pinchVirtualViewportEnabled())
|
| + view->resize(mainFrameSize());
|
|
|
| float newPageScaleFactor = pageScaleFactor();
|
| if (m_pageScaleConstraintsSet.needsReset() && m_pageScaleConstraintsSet.finalConstraints().initialScale != -1) {
|
|
|