summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorMangesh Ghiware <mghiware@google.com>2011-11-03 13:21:18 -0700
committerMangesh Ghiware <mghiware@google.com>2011-11-03 13:21:18 -0700
commite59e301ca0e28d88439c626b7d177e7eeac06456 (patch)
treea6e16eddc29611de664df02d1e68120216edb1f8 /core
parentb419abcadad79cd908acfe51dc6e8902c16ff728 (diff)
downloadframeworks_base-e59e301ca0e28d88439c626b7d177e7eeac06456.zip
frameworks_base-e59e301ca0e28d88439c626b7d177e7eeac06456.tar.gz
frameworks_base-e59e301ca0e28d88439c626b7d177e7eeac06456.tar.bz2
Update fix to restore view and text wrap scales.
Fixes bug 5544556: All email content is wrapped prematurely. Previous change (I5a22dd20) didn't take a few other cases of mViewScale>0 into account. Change-Id: I4f9578f3558f026c472492ac07d19004416dc228
Diffstat (limited to 'core')
-rw-r--r--core/java/android/webkit/WebViewCore.java12
-rw-r--r--core/java/android/webkit/ZoomManager.java2
2 files changed, 10 insertions, 4 deletions
diff --git a/core/java/android/webkit/WebViewCore.java b/core/java/android/webkit/WebViewCore.java
index 22e86c7..754d6e9 100644
--- a/core/java/android/webkit/WebViewCore.java
+++ b/core/java/android/webkit/WebViewCore.java
@@ -2416,7 +2416,11 @@ public final class WebViewCore {
if (mIsRestored) {
mInitialViewState.mIsRestored = true;
mInitialViewState.mViewScale = mRestoredScale;
- mInitialViewState.mTextWrapScale = mRestoredTextWrapScale;
+ if (mRestoredTextWrapScale > 0) {
+ mInitialViewState.mTextWrapScale = mRestoredTextWrapScale;
+ } else {
+ mInitialViewState.mTextWrapScale = mInitialViewState.mViewScale;
+ }
} else {
if (mViewportInitialScale > 0) {
mInitialViewState.mViewScale = mInitialViewState.mTextWrapScale =
@@ -2535,9 +2539,11 @@ public final class WebViewCore {
// called by JNI
private void restoreScale(float scale, float textWrapScale) {
if (mBrowserFrame.firstLayoutDone() == false) {
- mIsRestored = true;
+ mIsRestored = scale > 0;
mRestoredScale = scale;
- mRestoredTextWrapScale = textWrapScale;
+ if (mSettings.getUseWideViewPort()) {
+ mRestoredTextWrapScale = textWrapScale;
+ }
}
}
diff --git a/core/java/android/webkit/ZoomManager.java b/core/java/android/webkit/ZoomManager.java
index e829571..f599dba 100644
--- a/core/java/android/webkit/ZoomManager.java
+++ b/core/java/android/webkit/ZoomManager.java
@@ -1114,7 +1114,7 @@ class ZoomManager {
float scale;
if (mInitialScale > 0) {
scale = mInitialScale;
- } else if (viewState.mIsRestored) {
+ } else if (viewState.mIsRestored || viewState.mViewScale > 0) {
scale = (viewState.mViewScale > 0)
? viewState.mViewScale : overviewScale;
mTextWrapScale = (viewState.mTextWrapScale > 0)