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

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

Merge "Fix reflow for mobile sites."

parents 3b765f04 e86cdeb8
Loading
Loading
Loading
Loading
+8 −9
Original line number Original line Diff line number Diff line
@@ -991,16 +991,16 @@ class ZoomManager {
            settings.getUseFixedViewport() &&
            settings.getUseFixedViewport() &&
            (mInitialZoomOverview || mInZoomOverview)) {
            (mInitialZoomOverview || mInZoomOverview)) {
            // Keep mobile site's text wrap scale unchanged.  For mobile sites,
            // Keep mobile site's text wrap scale unchanged.  For mobile sites,
            // the text wrap scale is the same as zoom overview scale, which is 1.0f.
            // the text wrap scale is the same as zoom overview scale.
            if (exceedsMinScaleIncrement(mTextWrapScale, 1.0f) ||
            if (exceedsMinScaleIncrement(mTextWrapScale, mDefaultScale) ||
                    exceedsMinScaleIncrement(newZoomOverviewScale, 1.0f)) {
                    exceedsMinScaleIncrement(newZoomOverviewScale, mDefaultScale)) {
                mTextWrapScale = getReadingLevelScale();
                mTextWrapScale = getReadingLevelScale();
            } else {
            } else {
                mTextWrapScale = newZoomOverviewScale;
                mTextWrapScale = newZoomOverviewScale;
            }
            }
        }
        }


        if (!mMinZoomScaleFixed) {
        if (!mMinZoomScaleFixed || settings.getUseWideViewPort()) {
            mMinZoomScale = newZoomOverviewScale;
            mMinZoomScale = newZoomOverviewScale;
            mMaxZoomScale = Math.max(mMaxZoomScale, mMinZoomScale);
            mMaxZoomScale = Math.max(mMaxZoomScale, mMinZoomScale);
        }
        }
@@ -1013,9 +1013,9 @@ class ZoomManager {
        // Make sure mobile sites are correctly handled since mobile site will
        // Make sure mobile sites are correctly handled since mobile site will
        // change content width after rotating.
        // change content width after rotating.
        boolean mobileSiteInOverview = mInZoomOverview &&
        boolean mobileSiteInOverview = mInZoomOverview &&
                !exceedsMinScaleIncrement(newZoomOverviewScale, 1.0f);
                !exceedsMinScaleIncrement(newZoomOverviewScale, mDefaultScale);
        if (!mWebView.drawHistory() &&
        if (!mWebView.drawHistory() &&
            (scaleLessThanOverview ||
            ((scaleLessThanOverview && settings.getUseWideViewPort())||
                ((mInitialZoomOverview || mobileSiteInOverview) &&
                ((mInitialZoomOverview || mobileSiteInOverview) &&
                    scaleHasDiff && zoomOverviewWidthChanged))) {
                    scaleHasDiff && zoomOverviewWidthChanged))) {
            mInitialZoomOverview = false;
            mInitialZoomOverview = false;
@@ -1071,7 +1071,8 @@ class ZoomManager {
        updateZoomRange(viewState, viewSize.x, drawData.mMinPrefWidth);
        updateZoomRange(viewState, viewSize.x, drawData.mMinPrefWidth);
        setupZoomOverviewWidth(drawData, mWebView.getViewWidth());
        setupZoomOverviewWidth(drawData, mWebView.getViewWidth());
        final float overviewScale = getZoomOverviewScale();
        final float overviewScale = getZoomOverviewScale();
        if (!mMinZoomScaleFixed) {
        WebSettings settings = mWebView.getSettings();
        if (!mMinZoomScaleFixed || settings.getUseWideViewPort()) {
            mMinZoomScale = (mInitialScale > 0) ?
            mMinZoomScale = (mInitialScale > 0) ?
                    Math.min(mInitialScale, overviewScale) : overviewScale;
                    Math.min(mInitialScale, overviewScale) : overviewScale;
            mMaxZoomScale = Math.max(mMaxZoomScale, mMinZoomScale);
            mMaxZoomScale = Math.max(mMaxZoomScale, mMinZoomScale);
@@ -1079,8 +1080,6 @@ class ZoomManager {


        if (!mWebView.drawHistory()) {
        if (!mWebView.drawHistory()) {
            float scale;
            float scale;
            WebSettings settings = mWebView.getSettings();

            if (mInitialScale > 0) {
            if (mInitialScale > 0) {
                scale = mInitialScale;
                scale = mInitialScale;
            } else if (viewState.mViewScale > 0) {
            } else if (viewState.mViewScale > 0) {