summaryrefslogtreecommitdiffstats
path: root/src/com/android/browser/BrowserSettings.java
diff options
context:
space:
mode:
authorMangesh Ghiware <mghiware@google.com>2011-10-12 14:43:32 -0700
committerMangesh Ghiware <mghiware@google.com>2011-10-12 15:36:31 -0700
commit67f45c29882e5f9400a38d5387fe474a42cbb620 (patch)
treee0f8d8772bb186d76f6325dc06d140c4b3b18961 /src/com/android/browser/BrowserSettings.java
parente1e4e1b2ad588f227872468cf7dbe51e647b565e (diff)
downloadpackages_apps_Browser-67f45c29882e5f9400a38d5387fe474a42cbb620.zip
packages_apps_Browser-67f45c29882e5f9400a38d5387fe474a42cbb620.tar.gz
packages_apps_Browser-67f45c29882e5f9400a38d5387fe474a42cbb620.tar.bz2
Add setting for configuring zoom level on double-tap.
Added a seek bar in Accessibility settings to configure the zoom level on double-tap. The range is 75-125% with the default of 100% equal to the display density. Bug: 5312461 Change-Id: Iaf1b9f6f6659146db4031c5f819ef9cb55695b5c
Diffstat (limited to 'src/com/android/browser/BrowserSettings.java')
-rw-r--r--src/com/android/browser/BrowserSettings.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/com/android/browser/BrowserSettings.java b/src/com/android/browser/BrowserSettings.java
index 145178b..f92e53b 100644
--- a/src/com/android/browser/BrowserSettings.java
+++ b/src/com/android/browser/BrowserSettings.java
@@ -95,6 +95,11 @@ public class BrowserSettings implements OnSharedPreferenceChangeListener,
private static final int TEXT_ZOOM_START_VAL = 10;
// The size of a single step in the text zoom range, in percent
private static final int TEXT_ZOOM_STEP = 5;
+ // The initial value in the double tap zoom range
+ // This is what represents 100% in the SeekBarPreference range
+ private static final int DOUBLE_TAP_ZOOM_START_VAL = 5;
+ // The size of a single step in the double tap zoom range, in percent
+ private static final int DOUBLE_TAP_ZOOM_STEP = 5;
private static BrowserSettings sInstance;
@@ -248,6 +253,7 @@ public class BrowserSettings implements OnSharedPreferenceChangeListener,
settings.setForceUserScalable(forceEnableUserScalable());
settings.setPluginState(getPluginState());
settings.setTextZoom(getTextZoom());
+ settings.setDoubleTapZoom(getDoubleTapZoom());
settings.setAutoFillEnabled(isAutofillEnabled());
settings.setLayoutAlgorithm(getLayoutAlgorithm());
settings.setJavaScriptCanOpenWindowsAutomatically(!blockPopupWindows());
@@ -546,6 +552,15 @@ public class BrowserSettings implements OnSharedPreferenceChangeListener,
return (percent - 100) / TEXT_ZOOM_STEP + TEXT_ZOOM_START_VAL;
}
+ public int getAdjustedDoubleTapZoom(int rawValue) {
+ rawValue = (rawValue - DOUBLE_TAP_ZOOM_START_VAL) * DOUBLE_TAP_ZOOM_STEP;
+ return (int) ((rawValue + 100) * mFontSizeMult);
+ }
+
+ static int getRawDoubleTapZoom(int percent) {
+ return (percent - 100) / DOUBLE_TAP_ZOOM_STEP + DOUBLE_TAP_ZOOM_START_VAL;
+ }
+
public SharedPreferences getPreferences() {
return mPrefs;
}
@@ -579,6 +594,16 @@ public class BrowserSettings implements OnSharedPreferenceChangeListener,
mPrefs.edit().putInt(PREF_TEXT_ZOOM, getRawTextZoom(percent)).apply();
}
+ public int getDoubleTapZoom() {
+ requireInitialization();
+ int doubleTapZoom = mPrefs.getInt(PREF_DOUBLE_TAP_ZOOM, 5);
+ return getAdjustedDoubleTapZoom(doubleTapZoom);
+ }
+
+ public void setDoubleTapZoom(int percent) {
+ mPrefs.edit().putInt(PREF_DOUBLE_TAP_ZOOM, getRawDoubleTapZoom(percent)).apply();
+ }
+
// -----------------------------
// getter/setters for advanced_preferences.xml
// -----------------------------