diff options
| author | Shimeng (Simon) Wang <swang@google.com> | 2010-09-17 10:12:05 -0700 |
|---|---|---|
| committer | Shimeng (Simon) Wang <swang@google.com> | 2010-09-17 10:54:48 -0700 |
| commit | 14bcc0e7fe4e2cfddb0d98079ec0fbdbe33c5e87 (patch) | |
| tree | d68d48f9e47cbfad554c4ae621706dcfa89a4ef9 /core/java/android/webkit/WebSettings.java | |
| parent | a8f99bbbbc89014a2c38637f8e2179f0cd578b11 (diff) | |
Use website preferred width as the fixed viewport.
This preferred width will be set between the default viewport width and
the max fixed viewport width. The default viewport width serves as the
minimum fixed viewport width, so it's lowered to 980.
This change will make the shirt.woot.com/blog site works better, since it's using
1080 as the preferred width, so user needs not to scroll in overview mode.
issue: 3003933
Change-Id: Ie3eed44a54d277f5bc5f63cd394d463012a80d80
Diffstat (limited to 'core/java/android/webkit/WebSettings.java')
| -rw-r--r-- | core/java/android/webkit/WebSettings.java | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/core/java/android/webkit/WebSettings.java b/core/java/android/webkit/WebSettings.java index d81d7f2e88fd..122c268b093b 100644 --- a/core/java/android/webkit/WebSettings.java +++ b/core/java/android/webkit/WebSettings.java @@ -178,6 +178,7 @@ public class WebSettings { private boolean mUseDoubleTree = false; private boolean mUseWideViewport = false; private boolean mUseFixedViewport = false; + private int mMaxFixedViewportWidth = WebView.DEFAULT_VIEWPORT_WIDTH; private boolean mSupportMultipleWindows = false; private boolean mShrinksStandaloneImagesToFit = false; private long mMaximumDecodedImageSize = 0; // 0 means default @@ -324,8 +325,9 @@ public class WebSettings { // Detect tablet device for fixed viewport mode. final DisplayMetrics metrics = context.getResources().getDisplayMetrics(); - mUseFixedViewport = (metrics.density == 1.0f - && (metrics.widthPixels >= 800 ||metrics.heightPixels >= 800)); + final int landscapeWidth = Math.max(metrics.widthPixels, metrics.heightPixels); + mUseFixedViewport = (metrics.density == 1.0f && landscapeWidth >= 800); + mMaxFixedViewportWidth = (int) (landscapeWidth * 1.25); if (sLockForLocaleSettings == null) { sLockForLocaleSettings = new Object(); @@ -1516,6 +1518,13 @@ public class WebSettings { } /** + * Returns maximum fixed viewport width. + */ + /* package */ int getMaxFixedViewportWidth() { + return mMaxFixedViewportWidth; + } + + /** * Returns whether private browsing is enabled. */ /* package */ boolean isPrivateBrowsingEnabled() { |
