Loading res/values/strings.xml +7 −0 Original line number Diff line number Diff line Loading @@ -6981,4 +6981,11 @@ <string name="write_settings_on">Yes</string> <!-- Summary of app not allowed to write system settings [CHAR LIMIT=45] --> <string name="write_settings_off">No</string> <!-- Title of setting that controls gesture to open camera [CHAR LIMIT=40] --> <string name="camera_gesture_title">Double twist for camera</string> <!-- Description of setting that controls gesture to open camera [CHAR LIMIT=NONE] --> <string name="camera_gesture_desc">Open the camera app by twisting your wrist twice</string> </resources> res/xml/display_settings.xml +6 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,12 @@ android:entries="@array/screen_timeout_entries" android:entryValues="@array/screen_timeout_values" /> <SwitchPreference android:key="camera_gesture" android:title="@string/camera_gesture_title" android:summary="@string/camera_gesture_desc" android:persistent="false" /> <PreferenceScreen android:key="screensaver" android:title="@string/screensaver_settings_title" Loading src/com/android/settings/DisplaySettings.java +31 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import com.android.settings.DropDownPreference.Callback; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Indexable; import static android.provider.Settings.Secure.CAMERA_GESTURE_DISABLED; import static android.provider.Settings.Secure.DOUBLE_TAP_TO_WAKE; import static android.provider.Settings.Secure.DOZE_ENABLED; import static android.provider.Settings.Secure.WAKE_GESTURE_ENABLED; Loading Loading @@ -74,6 +75,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements private static final String KEY_AUTO_BRIGHTNESS = "auto_brightness"; private static final String KEY_AUTO_ROTATE = "auto_rotate"; private static final String KEY_NIGHT_MODE = "night_mode"; private static final String KEY_CAMERA_GESTURE = "camera_gesture"; private static final int DLG_GLOBAL_CHANGE_WARNING = 1; Loading @@ -88,6 +90,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements private SwitchPreference mDozePreference; private SwitchPreference mTapToWakePreference; private SwitchPreference mAutoBrightnessPreference; private SwitchPreference mCameraGesturePreference; @Override protected int getMetricsCategory() { Loading Loading @@ -149,6 +152,13 @@ public class DisplaySettings extends SettingsPreferenceFragment implements removePreference(KEY_TAP_TO_WAKE); } if (isCameraGestureAvailable(getResources())) { mCameraGesturePreference = (SwitchPreference) findPreference(KEY_CAMERA_GESTURE); mCameraGesturePreference.setOnPreferenceChangeListener(this); } else { removePreference(KEY_CAMERA_GESTURE); } if (RotationPolicy.isRotationLockToggleVisible(activity)) { DropDownPreference rotatePreference = (DropDownPreference) findPreference(KEY_AUTO_ROTATE); Loading Loading @@ -224,6 +234,13 @@ public class DisplaySettings extends SettingsPreferenceFragment implements return res.getBoolean(com.android.internal.R.bool.config_automatic_brightness_available); } private static boolean isCameraGestureAvailable(Resources res) { boolean configSet = res.getInteger( com.android.internal.R.integer.config_cameraLaunchGestureSensorType) != -1; return configSet && !SystemProperties.getBoolean("gesture.disable_camera_launch", false); } private void updateTimeoutPreferenceDescription(long currentTimeout) { ListPreference preference = mScreenTimeoutPreference; String summary; Loading Loading @@ -370,6 +387,12 @@ public class DisplaySettings extends SettingsPreferenceFragment implements int value = Settings.Secure.getInt(getContentResolver(), DOUBLE_TAP_TO_WAKE, 0); mTapToWakePreference.setChecked(value != 0); } // Update camera gesture if it is available. if (mCameraGesturePreference != null) { int value = Settings.Secure.getInt(getContentResolver(), CAMERA_GESTURE_DISABLED, 0); mCameraGesturePreference.setChecked(value == 0); } } private void updateScreenSaverSummary() { Loading Loading @@ -425,6 +448,11 @@ public class DisplaySettings extends SettingsPreferenceFragment implements boolean value = (Boolean) objValue; Settings.Secure.putInt(getContentResolver(), DOUBLE_TAP_TO_WAKE, value ? 1 : 0); } if (preference == mCameraGesturePreference) { boolean value = (Boolean) objValue; Settings.Secure.putInt(getContentResolver(), CAMERA_GESTURE_DISABLED, value ? 0 : 1 /* Backwards because setting is for disabling */); } if (preference == mNightModePreference) { try { final int value = Integer.parseInt((String) objValue); Loading Loading @@ -493,6 +521,9 @@ public class DisplaySettings extends SettingsPreferenceFragment implements if (!isTapToWakeAvailable(context.getResources())) { result.add(KEY_TAP_TO_WAKE); } if (!isCameraGestureAvailable(context.getResources())) { result.add(KEY_CAMERA_GESTURE); } return result; } }; Loading Loading
res/values/strings.xml +7 −0 Original line number Diff line number Diff line Loading @@ -6981,4 +6981,11 @@ <string name="write_settings_on">Yes</string> <!-- Summary of app not allowed to write system settings [CHAR LIMIT=45] --> <string name="write_settings_off">No</string> <!-- Title of setting that controls gesture to open camera [CHAR LIMIT=40] --> <string name="camera_gesture_title">Double twist for camera</string> <!-- Description of setting that controls gesture to open camera [CHAR LIMIT=NONE] --> <string name="camera_gesture_desc">Open the camera app by twisting your wrist twice</string> </resources>
res/xml/display_settings.xml +6 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,12 @@ android:entries="@array/screen_timeout_entries" android:entryValues="@array/screen_timeout_values" /> <SwitchPreference android:key="camera_gesture" android:title="@string/camera_gesture_title" android:summary="@string/camera_gesture_desc" android:persistent="false" /> <PreferenceScreen android:key="screensaver" android:title="@string/screensaver_settings_title" Loading
src/com/android/settings/DisplaySettings.java +31 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import com.android.settings.DropDownPreference.Callback; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Indexable; import static android.provider.Settings.Secure.CAMERA_GESTURE_DISABLED; import static android.provider.Settings.Secure.DOUBLE_TAP_TO_WAKE; import static android.provider.Settings.Secure.DOZE_ENABLED; import static android.provider.Settings.Secure.WAKE_GESTURE_ENABLED; Loading Loading @@ -74,6 +75,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements private static final String KEY_AUTO_BRIGHTNESS = "auto_brightness"; private static final String KEY_AUTO_ROTATE = "auto_rotate"; private static final String KEY_NIGHT_MODE = "night_mode"; private static final String KEY_CAMERA_GESTURE = "camera_gesture"; private static final int DLG_GLOBAL_CHANGE_WARNING = 1; Loading @@ -88,6 +90,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements private SwitchPreference mDozePreference; private SwitchPreference mTapToWakePreference; private SwitchPreference mAutoBrightnessPreference; private SwitchPreference mCameraGesturePreference; @Override protected int getMetricsCategory() { Loading Loading @@ -149,6 +152,13 @@ public class DisplaySettings extends SettingsPreferenceFragment implements removePreference(KEY_TAP_TO_WAKE); } if (isCameraGestureAvailable(getResources())) { mCameraGesturePreference = (SwitchPreference) findPreference(KEY_CAMERA_GESTURE); mCameraGesturePreference.setOnPreferenceChangeListener(this); } else { removePreference(KEY_CAMERA_GESTURE); } if (RotationPolicy.isRotationLockToggleVisible(activity)) { DropDownPreference rotatePreference = (DropDownPreference) findPreference(KEY_AUTO_ROTATE); Loading Loading @@ -224,6 +234,13 @@ public class DisplaySettings extends SettingsPreferenceFragment implements return res.getBoolean(com.android.internal.R.bool.config_automatic_brightness_available); } private static boolean isCameraGestureAvailable(Resources res) { boolean configSet = res.getInteger( com.android.internal.R.integer.config_cameraLaunchGestureSensorType) != -1; return configSet && !SystemProperties.getBoolean("gesture.disable_camera_launch", false); } private void updateTimeoutPreferenceDescription(long currentTimeout) { ListPreference preference = mScreenTimeoutPreference; String summary; Loading Loading @@ -370,6 +387,12 @@ public class DisplaySettings extends SettingsPreferenceFragment implements int value = Settings.Secure.getInt(getContentResolver(), DOUBLE_TAP_TO_WAKE, 0); mTapToWakePreference.setChecked(value != 0); } // Update camera gesture if it is available. if (mCameraGesturePreference != null) { int value = Settings.Secure.getInt(getContentResolver(), CAMERA_GESTURE_DISABLED, 0); mCameraGesturePreference.setChecked(value == 0); } } private void updateScreenSaverSummary() { Loading Loading @@ -425,6 +448,11 @@ public class DisplaySettings extends SettingsPreferenceFragment implements boolean value = (Boolean) objValue; Settings.Secure.putInt(getContentResolver(), DOUBLE_TAP_TO_WAKE, value ? 1 : 0); } if (preference == mCameraGesturePreference) { boolean value = (Boolean) objValue; Settings.Secure.putInt(getContentResolver(), CAMERA_GESTURE_DISABLED, value ? 0 : 1 /* Backwards because setting is for disabling */); } if (preference == mNightModePreference) { try { final int value = Integer.parseInt((String) objValue); Loading Loading @@ -493,6 +521,9 @@ public class DisplaySettings extends SettingsPreferenceFragment implements if (!isTapToWakeAvailable(context.getResources())) { result.add(KEY_TAP_TO_WAKE); } if (!isCameraGestureAvailable(context.getResources())) { result.add(KEY_CAMERA_GESTURE); } return result; } }; Loading