summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMangesh Ghiware <mghiware@google.com>2011-09-21 13:58:47 -0700
committerMangesh Ghiware <mghiware@google.com>2011-09-21 14:57:11 -0700
commitfaab93d1acb9738c8e2d90e20e19facc0e3eea6e (patch)
treec1b9fe2717f5ed6337fed8075296ffd874b76441
parentcec857d85c838ed7253c64b84d5b1354be7595b1 (diff)
downloadframeworks_base-faab93d1acb9738c8e2d90e20e19facc0e3eea6e.zip
frameworks_base-faab93d1acb9738c8e2d90e20e19facc0e3eea6e.tar.gz
frameworks_base-faab93d1acb9738c8e2d90e20e19facc0e3eea6e.tar.bz2
Use overview scale when restored scale is 0.
If restored scale and text wrap scale are set to 0 (meaning the previous scale wasn't saved), set them to overview and reading level scale respectively. Bug: 5230909 Change-Id: If7724e9a0cd948c88d0a001728266a3282083bdc
-rw-r--r--core/java/android/webkit/WebView.java8
-rw-r--r--core/java/android/webkit/WebViewCore.java9
-rw-r--r--core/java/android/webkit/ZoomManager.java6
3 files changed, 14 insertions, 9 deletions
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index 122a717..47629c4 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -7170,6 +7170,14 @@ public class WebView extends AbsoluteLayout
}
/**
+ * Return the overview scale of the WebView
+ * @return The overview scale.
+ */
+ float getZoomOverviewScale() {
+ return mZoomManager.getZoomOverviewScale();
+ }
+
+ /**
* @return TRUE if the WebView can be zoomed in.
*/
public boolean canZoomIn() {
diff --git a/core/java/android/webkit/WebViewCore.java b/core/java/android/webkit/WebViewCore.java
index 48359d4..470e843 100644
--- a/core/java/android/webkit/WebViewCore.java
+++ b/core/java/android/webkit/WebViewCore.java
@@ -2512,10 +2512,13 @@ public final class WebViewCore {
// called by JNI
private void restoreScale(float scale, float textWrapScale) {
if (mBrowserFrame.firstLayoutDone() == false) {
- final float defaultScale = mWebView.getDefaultZoomScale();
- mRestoredScale = (scale <= 0.0) ? defaultScale : scale;
+ // If restored scale and textWrapScale are 0, set them to
+ // overview and reading level scale respectively.
+ mRestoredScale = (scale <= 0.0)
+ ? mWebView.getZoomOverviewScale() : scale;
if (mSettings.getUseWideViewPort()) {
- mRestoredTextWrapScale = (textWrapScale <= 0.0) ? defaultScale : textWrapScale;
+ mRestoredTextWrapScale = (textWrapScale <= 0.0)
+ ? mWebView.getReadingLevelScale() : textWrapScale;
}
}
}
diff --git a/core/java/android/webkit/ZoomManager.java b/core/java/android/webkit/ZoomManager.java
index 7ca6aeb..7f526e7 100644
--- a/core/java/android/webkit/ZoomManager.java
+++ b/core/java/android/webkit/ZoomManager.java
@@ -1128,12 +1128,6 @@ class ZoomManager {
mTextWrapScale = Math.max(mTextWrapScale, overviewScale);
}
reflowText = exceedsMinScaleIncrement(mTextWrapScale, scale);
- } else {
- // In case of restored scale, treat defaultScale as overview since
- // it usually means the previous scale is not saved.
- if (scale == mDefaultScale && settings.getLoadWithOverviewMode()) {
- scale = overviewScale;
- }
}
mInitialZoomOverview = settings.getLoadWithOverviewMode() &&
!exceedsMinScaleIncrement(scale, overviewScale);