Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 572c4a7d authored by Shimeng (Simon) Wang's avatar Shimeng (Simon) Wang Committed by Android (Google) Code Review
Browse files

Merge "Fine tune the zoom overview behavior."

parents 016d37e6 d75fd491
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -3302,7 +3302,7 @@ public class WebView extends AbsoluteLayout
            }
            mPageThatNeedsToSlideTitleBarOffScreen = null;
        }

        mZoomManager.onPageFinished(url);
        injectAccessibilityForUrl(url);
    }

+20 −3
Original line number Diff line number Diff line
@@ -875,12 +875,21 @@ class ZoomManager {
        // fit the content width to the current view for the first new picture
        // after first layout.
        boolean scaleHasDiff = exceedsMinScaleIncrement(newZoomOverviewScale, mActualScale);
        if (!mWebView.drawHistory() && mInitialZoomOverview && scaleHasDiff) {
        // Make sure the actual scale is no less than zoom overview scale.
        boolean scaleLessThanOverview =
                (newZoomOverviewScale - mActualScale) >= MINIMUM_SCALE_INCREMENT;
        // Make sure mobile sites are correctly handled since mobile site will
        // change content width after rotating.
        boolean mobileSiteInOverview = mInZoomOverview &&
                !exceedsMinScaleIncrement(newZoomOverviewScale, 1.0f);
        if (!mWebView.drawHistory() &&
                (mInitialZoomOverview || scaleLessThanOverview || mobileSiteInOverview) &&
                scaleHasDiff) {
            mInitialZoomOverview = false;
            setZoomScale(newZoomOverviewScale, !willScaleTriggerZoom(mTextWrapScale) &&
                !mWebView.getSettings().getUseFixedViewport());
        } else if (scaleHasDiff) {
            mInZoomOverview = false;
        } else {
            mInZoomOverview = !scaleHasDiff;
        }
    }

@@ -1061,4 +1070,12 @@ class ZoomManager {
    public void setHardwareAccelerated() {
        mHardwareAccelerated = true;
    }

    /**
     * OnPageFinished called by webview when a page is fully loaded.
     */
    /* package*/ void onPageFinished(String url) {
        // Turn off initial zoom overview flag when a page is fully loaded.
        mInitialZoomOverview = false;
    }
}