summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/ButtonSettings.java
diff options
context:
space:
mode:
authorHazouPH <jgrharbers@gmail.com>2015-06-07 21:09:11 +0200
committerAdnan Begovic <adnan@cyngn.com>2015-10-29 17:36:31 -0700
commit2d5ce26e6c369d3fdeaae1a0fa65e3eea1522a92 (patch)
tree6b4af40013deade4e4fce89a996e241e4d5b8dcc /src/com/android/settings/ButtonSettings.java
parent86ec224cb4e5aef5a5b230bd4948ca8fb1d16b0d (diff)
downloadpackages_apps_Settings-2d5ce26e6c369d3fdeaae1a0fa65e3eea1522a92.tar.gz
packages_apps_Settings-2d5ce26e6c369d3fdeaae1a0fa65e3eea1522a92.tar.bz2
packages_apps_Settings-2d5ce26e6c369d3fdeaae1a0fa65e3eea1522a92.zip
[2/2] Camera button support
Add support for camera button Based on commit http://review.cyanogenmod.org/#/c/52046/ This patch adds: - Use camera button as wake key - Use focus button as peek and wake key - Use camera button to launch (secure) camera Depends on [1/2] Camera button support in frameworks/base Change-Id: Idb959f24fec880d360afebf194a0bc573e011438
Diffstat (limited to 'src/com/android/settings/ButtonSettings.java')
-rw-r--r--src/com/android/settings/ButtonSettings.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/com/android/settings/ButtonSettings.java b/src/com/android/settings/ButtonSettings.java
index 73296d53d..0c096013e 100644
--- a/src/com/android/settings/ButtonSettings.java
+++ b/src/com/android/settings/ButtonSettings.java
@@ -121,6 +121,9 @@ public class ButtonSettings extends SettingsPreferenceFragment implements
private ListPreference mAssistLongPressAction;
private ListPreference mAppSwitchPressAction;
private ListPreference mAppSwitchLongPressAction;
+ private SwitchPreference mCameraWakeScreen;
+ private SwitchPreference mCameraSleepOnRelease;
+ private SwitchPreference mCameraLaunch;
private ListPreference mVolumeKeyCursorControl;
private SwitchPreference mVolumeWakeScreen;
private SwitchPreference mVolumeMusicControls;
@@ -157,6 +160,7 @@ public class ButtonSettings extends SettingsPreferenceFragment implements
final boolean hasMenuKey = (deviceKeys & KEY_MASK_MENU) != 0;
final boolean hasAssistKey = (deviceKeys & KEY_MASK_ASSIST) != 0;
final boolean hasAppSwitchKey = (deviceKeys & KEY_MASK_APP_SWITCH) != 0;
+ final boolean hasCameraKey = (deviceKeys & KEY_MASK_CAMERA) != 0;
final boolean hasVolumeKeys = (deviceKeys & KEY_MASK_VOLUME) != 0;
final boolean showHomeWake = (deviceWakeKeys & KEY_MASK_HOME) != 0;
@@ -164,6 +168,7 @@ public class ButtonSettings extends SettingsPreferenceFragment implements
final boolean showMenuWake = (deviceWakeKeys & KEY_MASK_MENU) != 0;
final boolean showAssistWake = (deviceWakeKeys & KEY_MASK_ASSIST) != 0;
final boolean showAppSwitchWake = (deviceWakeKeys & KEY_MASK_APP_SWITCH) != 0;
+ final boolean showCameraWake = (deviceWakeKeys & KEY_MASK_CAMERA) != 0;
final boolean showVolumeWake = (deviceWakeKeys & KEY_MASK_VOLUME) != 0;
boolean hasAnyBindableKey = false;
@@ -340,6 +345,18 @@ public class ButtonSettings extends SettingsPreferenceFragment implements
prefScreen.removePreference(appSwitchCategory);
}
+ if (hasCameraKey) {
+ if (!showCameraWake) {
+ prefScreen.removePreference(mCameraWakeScreen);
+ }
+ // Only show 'Camera sleep on release' if the device has a focus key
+ if (res.getBoolean(com.android.internal.R.bool.config_singleStageCameraKey)) {
+ prefScreen.removePreference(mCameraSleepOnRelease);
+ }
+ } else {
+ prefScreen.removePreference(mCameraLaunch);
+ }
+
if (Utils.hasVolumeRocker(getActivity())) {
if (!showVolumeWake) {
volumeCategory.removePreference(findPreference(Settings.System.VOLUME_WAKE_SCREEN));
@@ -389,6 +406,17 @@ public class ButtonSettings extends SettingsPreferenceFragment implements
Utils.updatePreferenceToSpecificActivityFromMetaDataOrRemove(getActivity(),
getPreferenceScreen(), KEY_BLUETOOTH_INPUT_SETTINGS);
+ mCameraWakeScreen = (SwitchPreference) findPreference(Settings.System.CAMERA_WAKE_SCREEN);
+ mCameraSleepOnRelease =
+ (SwitchPreference) findPreference(Settings.System.CAMERA_SLEEP_ON_RELEASE);
+ mCameraLaunch = (SwitchPreference) findPreference(Settings.System.CAMERA_LAUNCH);
+
+ if (mCameraWakeScreen != null) {
+ if (mCameraSleepOnRelease != null && !getResources().getBoolean(
+ com.android.internal.R.bool.config_singleStageCameraKey)) {
+ mCameraSleepOnRelease.setDependency(Settings.System.CAMERA_WAKE_SCREEN);
+ }
+ }
mVolumeWakeScreen = (SwitchPreference) findPreference(Settings.System.VOLUME_WAKE_SCREEN);
mVolumeMusicControls = (SwitchPreference) findPreference(KEY_VOLUME_MUSIC_CONTROLS);