summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRoman Birg <roman@cyngn.com>2016-08-10 12:42:07 -0700
committerGerrit Code Review <gerrit@cyanogenmod.org>2016-08-12 07:32:40 -0700
commita0c695b831df29c47fa0fd32c232490c3d51ba2c (patch)
treeeaa2bea35fe7330269c935f2516e84e5b620462e /src
parentb4bac9841a13c1ad747da3bc981993f0d6d67fd0 (diff)
downloadpackages_apps_Settings-a0c695b831df29c47fa0fd32c232490c3d51ba2c.zip
packages_apps_Settings-a0c695b831df29c47fa0fd32c232490c3d51ba2c.tar.gz
packages_apps_Settings-a0c695b831df29c47fa0fd32c232490c3d51ba2c.tar.bz2
Settings: move high touch sensitivity setting to Display
For devices that support this feature, it makes sense to place this under display settings as most people wouldn't look under language. Ticket: CYNGNOS-3250 Change-Id: Ib99f5e8c5f0f2bdae7b5b5f788a364a1d63aa146 Signed-off-by: Roman Birg <roman@cyngn.com>
Diffstat (limited to 'src')
-rw-r--r--src/com/android/settings/DisplaySettings.java42
-rw-r--r--src/com/android/settings/cyanogenmod/BootReceiver.java2
-rw-r--r--src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java25
3 files changed, 44 insertions, 25 deletions
diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java
index f01f1e8..a434e97 100644
--- a/src/com/android/settings/DisplaySettings.java
+++ b/src/com/android/settings/DisplaySettings.java
@@ -20,6 +20,7 @@ import com.android.internal.logging.MetricsLogger;
import android.app.AlertDialog;
import android.content.DialogInterface;
+import android.content.SharedPreferences;
import android.preference.CheckBoxPreference;
import android.os.UserHandle;
@@ -83,6 +84,7 @@ import java.util.List;
import com.android.settings.Utils;
import com.android.settings.cyanogenmod.DisplayRotation;
+import cyanogenmod.hardware.CMHardwareManager;
import cyanogenmod.hardware.LiveDisplayManager;
import cyanogenmod.providers.CMSettings;
@@ -113,6 +115,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
private static final String KEY_NOTIFICATION_LIGHT = "notification_light";
private static final String KEY_BATTERY_LIGHT = "battery_light";
private static final String KEY_LIVEDISPLAY = "live_display";
+ private static final String KEY_HIGH_TOUCH_SENSITIVITY = "high_touch_sensitivity";
private static final int DLG_GLOBAL_CHANGE_WARNING = 1;
@@ -130,10 +133,13 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
private SwitchPreference mLiftToWakePreference;
private SwitchPreference mDozePreference;
private SwitchPreference mTapToWakePreference;
+ private SwitchPreference mHighTouchSensitivity;
private SwitchPreference mProximityCheckOnWakePreference;
private SwitchPreference mAutoBrightnessPreference;
private SwitchPreference mWakeWhenPluggedOrUnplugged;
+ private CMHardwareManager mHardware;
+
private ContentObserver mAccelerometerRotationObserver =
new ContentObserver(new Handler()) {
@Override
@@ -164,6 +170,8 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
final ContentResolver resolver = activity.getContentResolver();
addPreferencesFromResource(R.xml.display);
+ mHardware = CMHardwareManager.getInstance(activity);
+
PreferenceCategory displayPrefs = (PreferenceCategory)
findPreference(KEY_CATEGORY_DISPLAY);
PreferenceCategory interfacePrefs = (PreferenceCategory)
@@ -294,6 +302,16 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
}
}
+ mHighTouchSensitivity = (SwitchPreference) findPreference(KEY_HIGH_TOUCH_SENSITIVITY);
+ if (!mHardware.isSupported(
+ CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY)) {
+ displayPrefs.removePreference(mHighTouchSensitivity);
+ mHighTouchSensitivity = null;
+ } else {
+ mHighTouchSensitivity.setChecked(
+ mHardware.get(CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY));
+ }
+
mProximityCheckOnWakePreference = (SwitchPreference) findPreference(KEY_PROXIMITY_WAKE);
boolean proximityCheckOnWake = getResources().getBoolean(
org.cyanogenmod.platform.internal.R.bool.config_proximityCheckOnWake);
@@ -677,6 +695,12 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
} else if (preference == mAccelerometer) {
RotationPolicy.setRotationLockForAccessibility(getActivity(),
!mAccelerometer.isChecked());
+ } else if (preference == mHighTouchSensitivity) {
+ boolean mHighTouchSensitivityEnable = mHighTouchSensitivity.isChecked();
+ CMSettings.System.putInt(getActivity().getContentResolver(),
+ CMSettings.System.HIGH_TOUCH_SENSITIVITY_ENABLE,
+ mHighTouchSensitivityEnable ? 1 : 0);
+ return true;
}
return super.onPreferenceTreeClick(preferenceScreen, preference);
@@ -796,6 +820,8 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
@Override
public List<String> getNonIndexableKeys(Context context) {
+ final CMHardwareManager hardware = CMHardwareManager.getInstance(context);
+
ArrayList<String> result = new ArrayList<String>();
if (!context.getResources().getBoolean(
com.android.internal.R.bool.config_dreamsSupported)) {
@@ -828,7 +854,23 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
if (!isCameraGestureAvailable(context.getResources())) {
result.add(KEY_CAMERA_GESTURE);
}
+ if (hardware.isSupported(CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY)) {
+ result.add(KEY_HIGH_TOUCH_SENSITIVITY);
+ }
return result;
}
};
+
+ public static void restore(Context context) {
+ final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
+ final CMHardwareManager hardware = CMHardwareManager.getInstance(context);
+ if (hardware.isSupported(CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY)) {
+ final boolean enabled = prefs.getBoolean(KEY_HIGH_TOUCH_SENSITIVITY,
+ hardware.get(CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY));
+ CMSettings.System.putInt(context.getContentResolver(),
+ CMSettings.System.HIGH_TOUCH_SENSITIVITY_ENABLE,
+ enabled ? 1 : 0);
+ }
+ }
+
}
diff --git a/src/com/android/settings/cyanogenmod/BootReceiver.java b/src/com/android/settings/cyanogenmod/BootReceiver.java
index 7bee75c..20190e6 100644
--- a/src/com/android/settings/cyanogenmod/BootReceiver.java
+++ b/src/com/android/settings/cyanogenmod/BootReceiver.java
@@ -23,6 +23,7 @@ import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import com.android.settings.ButtonSettings;
+import com.android.settings.DisplaySettings;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.contributors.ContributorsCloudFragment;
@@ -43,6 +44,7 @@ public class BootReceiver extends BroadcastReceiver {
ButtonSettings.restoreKeyDisabler(ctx);
VibratorIntensity.restore(ctx);
InputMethodAndLanguageSettings.restore(ctx);
+ DisplaySettings.restore(ctx);
setRestoredTunable(ctx);
}
diff --git a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
index 1e7b35c..7c531da 100644
--- a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
+++ b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
@@ -93,7 +93,6 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
private static final String KEY_USER_DICTIONARY_SETTINGS = "key_user_dictionary_settings";
private static final String KEY_POINTER_SETTINGS_CATEGORY = "pointer_settings_category";
private static final String KEY_PREVIOUSLY_ENABLED_SUBTYPES = "previously_enabled_subtypes";
- private static final String KEY_HIGH_TOUCH_SENSITIVITY = "high_touch_sensitivity";
private static final String KEY_TOUCHSCREEN_HOVERING = "touchscreen_hovering";
private static final String KEY_TRACKPAD_SETTINGS = "gesture_pad_settings";
private static final String KEY_STYLUS_GESTURES = "stylus_gestures";
@@ -115,7 +114,6 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
private int mDefaultInputMethodSelectorVisibility = 0;
private ListPreference mShowInputMethodSelectorPref;
private SwitchPreference mStylusIconEnabled;
- private SwitchPreference mHighTouchSensitivity;
private SwitchPreference mTouchscreenHovering;
private PreferenceCategory mKeyboardSettingsCategory;
private PreferenceCategory mHardKeyboardCategory;
@@ -203,7 +201,6 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
mStylusGestures = (PreferenceScreen) findPreference(KEY_STYLUS_GESTURES);
mStylusIconEnabled = (SwitchPreference) findPreference(KEY_STYLUS_ICON_ENABLED);
- mHighTouchSensitivity = (SwitchPreference) findPreference(KEY_HIGH_TOUCH_SENSITIVITY);
mTouchscreenHovering = (SwitchPreference) findPreference(KEY_TOUCHSCREEN_HOVERING);
@@ -213,15 +210,6 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
pointerSettingsCategory.removePreference(mStylusIconEnabled);
}
- if (!mHardware.isSupported(
- CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY)) {
- pointerSettingsCategory.removePreference(mHighTouchSensitivity);
- mHighTouchSensitivity = null;
- } else {
- mHighTouchSensitivity.setChecked(
- mHardware.get(CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY));
- }
-
if (!mHardware.isSupported(CMHardwareManager.FEATURE_TOUCH_HOVERING)) {
pointerSettingsCategory.removePreference(mTouchscreenHovering);
mTouchscreenHovering = null;
@@ -433,12 +421,6 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
if (preference == mStylusIconEnabled) {
Settings.System.putInt(getActivity().getContentResolver(),
Settings.System.STYLUS_ICON_ENABLED, mStylusIconEnabled.isChecked() ? 1 : 0);
- } else if (preference == mHighTouchSensitivity) {
- boolean mHighTouchSensitivityEnable = mHighTouchSensitivity.isChecked();
- CMSettings.System.putInt(getActivity().getContentResolver(),
- CMSettings.System.HIGH_TOUCH_SENSITIVITY_ENABLE,
- mHighTouchSensitivityEnable ? 1 : 0);
- return true;
} else if (preference == mTouchscreenHovering) {
boolean touchHoveringEnable = mTouchscreenHovering.isChecked();
CMSettings.Secure.putInt(getActivity().getContentResolver(),
@@ -785,13 +767,6 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
public static void restore(Context context) {
final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
final CMHardwareManager hardware = CMHardwareManager.getInstance(context);
- if (hardware.isSupported(CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY)) {
- final boolean enabled = prefs.getBoolean(KEY_HIGH_TOUCH_SENSITIVITY,
- hardware.get(CMHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY));
- CMSettings.System.putInt(context.getContentResolver(),
- CMSettings.System.HIGH_TOUCH_SENSITIVITY_ENABLE,
- enabled ? 1 : 0);
- }
if (hardware.isSupported(CMHardwareManager.FEATURE_TOUCH_HOVERING)) {
final boolean enabled = prefs.getBoolean(KEY_TOUCHSCREEN_HOVERING,
hardware.get(CMHardwareManager.FEATURE_TOUCH_HOVERING));