Remove pickup gesture settings if sensor is not found.
am: 94e0da52fc
Change-Id: Iaca5d323b7cda84ca3ed822babe150fc517f1ce9
This commit is contained in:
@@ -52,6 +52,10 @@
|
|||||||
<string name="gesture_double_twist_sensor_name" translatable="false"></string>
|
<string name="gesture_double_twist_sensor_name" translatable="false"></string>
|
||||||
<string name="gesture_double_twist_sensor_vendor" translatable="false"></string>
|
<string name="gesture_double_twist_sensor_vendor" translatable="false"></string>
|
||||||
|
|
||||||
|
<!-- Pickup sensor name and vendor used by gesture setting -->
|
||||||
|
<string name="gesture_pickup_sensor_name" translatable="false"></string>
|
||||||
|
<string name="gesture_pickup_sensor_vendor" translatable="false"></string>
|
||||||
|
|
||||||
<!-- When true enable gesture setting. -->
|
<!-- When true enable gesture setting. -->
|
||||||
<bool name="config_gesture_settings_enabled">false</bool>
|
<bool name="config_gesture_settings_enabled">false</bool>
|
||||||
|
|
||||||
|
@@ -82,7 +82,7 @@ public class GestureSettings extends SettingsPreferenceFragment implements
|
|||||||
|
|
||||||
// Ambient Display
|
// Ambient Display
|
||||||
boolean dozeEnabled = isDozeAvailable(context);
|
boolean dozeEnabled = isDozeAvailable(context);
|
||||||
if (dozeEnabled) {
|
if (dozeEnabled && isPickupAvailable(context)) {
|
||||||
int pickup = Secure.getInt(getContentResolver(), Secure.DOZE_PULSE_ON_PICK_UP, 1);
|
int pickup = Secure.getInt(getContentResolver(), Secure.DOZE_PULSE_ON_PICK_UP, 1);
|
||||||
addPreference(PREF_KEY_PICK_UP, pickup != 0, PREF_ID_PICK_UP);
|
addPreference(PREF_KEY_PICK_UP, pickup != 0, PREF_ID_PICK_UP);
|
||||||
} else {
|
} else {
|
||||||
@@ -204,9 +204,19 @@ public class GestureSettings extends SettingsPreferenceFragment implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static boolean isDoubleTwistAvailable(Context context) {
|
private static boolean isDoubleTwistAvailable(Context context) {
|
||||||
|
return hasSensor(context, R.string.gesture_double_twist_sensor_name,
|
||||||
|
R.string.gesture_double_twist_sensor_vendor);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static boolean isPickupAvailable(Context context) {
|
||||||
|
return hasSensor(context, R.string.gesture_pickup_sensor_name,
|
||||||
|
R.string.gesture_pickup_sensor_vendor);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static boolean hasSensor(Context context, int nameResId, int vendorResId) {
|
||||||
Resources resources = context.getResources();
|
Resources resources = context.getResources();
|
||||||
String name = resources.getString(R.string.gesture_double_twist_sensor_name);
|
String name = resources.getString(nameResId);
|
||||||
String vendor = resources.getString(R.string.gesture_double_twist_sensor_vendor);
|
String vendor = resources.getString(vendorResId);
|
||||||
if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(vendor)) {
|
if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(vendor)) {
|
||||||
SensorManager sensorManager =
|
SensorManager sensorManager =
|
||||||
(SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
|
(SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
|
||||||
@@ -253,10 +263,10 @@ public class GestureSettings extends SettingsPreferenceFragment implements
|
|||||||
if (!isCameraDoubleTapPowerGestureAvailable(context.getResources())) {
|
if (!isCameraDoubleTapPowerGestureAvailable(context.getResources())) {
|
||||||
result.add(PREF_KEY_DOUBLE_TAP_POWER);
|
result.add(PREF_KEY_DOUBLE_TAP_POWER);
|
||||||
}
|
}
|
||||||
if (!isDozeAvailable(context)) {
|
if (!isDozeAvailable(context) || !isPickupAvailable(context)) {
|
||||||
result.add(PREF_KEY_PICK_UP);
|
result.add(PREF_KEY_PICK_UP);
|
||||||
result.add(PREF_KEY_DOUBLE_TAP_SCREEN);
|
}
|
||||||
} else if (!isDoubleTapAvailable(context)) {
|
if (!isDozeAvailable(context) || !isDoubleTapAvailable(context)) {
|
||||||
result.add(PREF_KEY_DOUBLE_TAP_SCREEN);
|
result.add(PREF_KEY_DOUBLE_TAP_SCREEN);
|
||||||
}
|
}
|
||||||
if (!isSystemUINavigationAvailable(context)) {
|
if (!isSystemUINavigationAvailable(context)) {
|
||||||
|
Reference in New Issue
Block a user