diff options
| author | 2011-05-26 15:09:12 -0700 | |
|---|---|---|
| committer | 2011-05-26 15:09:12 -0700 | |
| commit | 09cb64bcd1183fe83d3abd7af00424f9ed9cc699 (patch) | |
| tree | 03cf0b166719966917bf0d4ff3c14a772c48105f | |
| parent | 03edf6b36469a504bd17a5010c788c8d4e44085c (diff) | |
Fix zoom overview width and postscale for non-wide-viewport mode.
issue: 4396010
Change-Id: I90aefac9fdf53834c0774d5c1b37693413798689
| -rw-r--r-- | core/java/android/webkit/ZoomManager.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/core/java/android/webkit/ZoomManager.java b/core/java/android/webkit/ZoomManager.java index e33073795fce..e41dd1c2c39b 100644 --- a/core/java/android/webkit/ZoomManager.java +++ b/core/java/android/webkit/ZoomManager.java @@ -926,9 +926,12 @@ class ZoomManager { // we always force, in case our height changed, in which case we // still want to send the notification over to webkit. // Keep overview mode unchanged when rotating. - final float zoomOverviewScale = getZoomOverviewScale(); - final float newScale = (mInZoomOverviewBeforeSizeChange) ? - zoomOverviewScale : Math.max(mActualScale, zoomOverviewScale); + float newScale = mActualScale; + if (mWebView.getSettings().getUseWideViewPort()) { + final float zoomOverviewScale = getZoomOverviewScale(); + newScale = (mInZoomOverviewBeforeSizeChange) ? + zoomOverviewScale : Math.max(mActualScale, zoomOverviewScale); + } setZoomScale(newScale, mUpdateTextWrap, true); // update the zoom buttons as the scale can be changed updateZoomPicker(); @@ -1027,7 +1030,7 @@ class ZoomManager { } } else { // If not use wide viewport, use view width as the zoom overview width. - newZoomOverviewWidth = viewWidth; + newZoomOverviewWidth = Math.round(viewWidth / mDefaultScale); } if (newZoomOverviewWidth != mZoomOverviewWidth) { setZoomOverviewWidth(newZoomOverviewWidth); |