Chromium Code Reviews| Index: android_webview/java/src/org/chromium/android_webview/AwContents.java |
| diff --git a/android_webview/java/src/org/chromium/android_webview/AwContents.java b/android_webview/java/src/org/chromium/android_webview/AwContents.java |
| index 832e907200321cd42dd710cb3a134a9cc43d91c3..adacb776670138ac3ed7406576b3d444f84bad3e 100644 |
| --- a/android_webview/java/src/org/chromium/android_webview/AwContents.java |
| +++ b/android_webview/java/src/org/chromium/android_webview/AwContents.java |
| @@ -1954,11 +1954,6 @@ public class AwContents { |
| } |
| @CalledByNative |
| - private void setMaxContainerViewScrollOffset(int maxX, int maxY) { |
| - mScrollOffsetManager.setMaxScrollOffset(maxX, maxY); |
| - } |
| - |
| - @CalledByNative |
| private void scrollContainerViewTo(int x, int y) { |
| mScrollOffsetManager.scrollContainerViewTo(x, y); |
| } |
| @@ -1969,31 +1964,14 @@ public class AwContents { |
| } |
| @CalledByNative |
| - private void setContentsSize(int widthDip, int heightDip) { |
| - mContentWidthDip = widthDip; |
| - mContentHeightDip = heightDip; |
| - } |
| - |
| - @CalledByNative |
| - private void setPageScaleFactorAndLimits( |
| + private void updateScrollState(int maxContainerViewScrollOffsetX, |
| + int maxContainerViewScrollOffsetY, int contentWidthDip, int contentHeightDip, |
| float pageScaleFactor, float minPageScaleFactor, float maxPageScaleFactor) { |
| - if (mPageScaleFactor == pageScaleFactor && |
| - mMinPageScaleFactor == minPageScaleFactor && |
| - mMaxPageScaleFactor == maxPageScaleFactor) { |
| - return; |
| - } |
| - mMinPageScaleFactor = minPageScaleFactor; |
| - mMaxPageScaleFactor = maxPageScaleFactor; |
| - if (mPageScaleFactor != pageScaleFactor) { |
| - float oldPageScaleFactor = mPageScaleFactor; |
| - mPageScaleFactor = pageScaleFactor; |
| - // NOTE: if this ever needs to become synchronous then we need to make sure the scroll |
| - // bounds are correctly updated before calling the method, otherwise embedder code that |
| - // attempts to scroll on scale change might cause weird results. |
| - mContentsClient.getCallbackHelper().postOnScaleChangedScaled( |
| - (float)(oldPageScaleFactor * mDIPScale), |
| - (float)(mPageScaleFactor * mDIPScale)); |
| - } |
| + mContentWidthDip = contentWidthDip; |
| + mContentHeightDip = contentHeightDip; |
| + mScrollOffsetManager.setMaxScrollOffset(maxContainerViewScrollOffsetX, |
| + maxContainerViewScrollOffsetY); |
| + setPageScaleFactorAndLimits(pageScaleFactor, minPageScaleFactor, maxPageScaleFactor); |
| } |
| @CalledByNative |
| @@ -2019,6 +1997,27 @@ public class AwContents { |
| // Helper methods |
| // ------------------------------------------------------------------------------------------- |
| + private void setPageScaleFactorAndLimits( |
| + float pageScaleFactor, float minPageScaleFactor, float maxPageScaleFactor) { |
| + if (mPageScaleFactor == pageScaleFactor && |
| + mMinPageScaleFactor == minPageScaleFactor && |
| + mMaxPageScaleFactor == maxPageScaleFactor) { |
| + return; |
| + } |
| + mMinPageScaleFactor = minPageScaleFactor; |
| + mMaxPageScaleFactor = maxPageScaleFactor; |
| + if (mPageScaleFactor != pageScaleFactor) { |
| + float oldPageScaleFactor = mPageScaleFactor; |
|
boliu
2014/04/30 05:48:42
indent
mkosiba (inactive)
2014/05/01 11:13:25
Done.
|
| + mPageScaleFactor = pageScaleFactor; |
| + // NOTE: if this ever needs to become synchronous then we need to make sure the scroll |
| + // bounds are correctly updated before calling the method, otherwise embedder code that |
| + // attempts to scroll on scale change might cause weird results. |
| + mContentsClient.getCallbackHelper().postOnScaleChangedScaled( |
| + (float)(oldPageScaleFactor * mDIPScale), |
| + (float)(mPageScaleFactor * mDIPScale)); |
| + } |
| + } |
| + |
| private void saveWebArchiveInternal(String path, final ValueCallback<String> callback) { |
| if (path == null || mNativeAwContents == 0) { |
| ThreadUtils.runOnUiThread(new Runnable() { |