Skip to content

Commit ca4d54c

Browse files
committed
Clamp initial scale between minimum and maximum values.
Fixes bug 5515454: web page is not optimized (gmarket) Initial scale is used to detect mobile sites In ICS, mobile site detection based on whether the URL included m., mobile., wap., etc. has been removed in exclusive favor of the meta viewport tag. Within meta viewport tag, mobile site detection uses width (set to device-width), initial-scale (set to 1.0 or default scale), etc. Make this logic more robust by clamping initial scale between minimum and maximum values, if specified. Change-Id: I663c50ce20b35279d37a8c812e91d6bc4c16c1d3
1 parent 63dd319 commit ca4d54c

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

core/java/android/webkit/WebViewCore.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2290,6 +2290,18 @@ private void setupViewport(boolean updateViewState) {
22902290
// set the viewport settings from WebKit
22912291
setViewportSettingsFromNative();
22922292

2293+
// clamp initial scale
2294+
if (mViewportInitialScale > 0) {
2295+
if (mViewportMinimumScale > 0) {
2296+
mViewportInitialScale = Math.max(mViewportInitialScale,
2297+
mViewportMinimumScale);
2298+
}
2299+
if (mViewportMaximumScale > 0) {
2300+
mViewportInitialScale = Math.min(mViewportInitialScale,
2301+
mViewportMaximumScale);
2302+
}
2303+
}
2304+
22932305
if (mSettings.forceUserScalable()) {
22942306
mViewportUserScalable = true;
22952307
if (mViewportInitialScale > 0) {

0 commit comments

Comments
 (0)