OmniGears: Fix issue with Settings/Buttons and recents H/W key
- When disabling hardware keys and enabling navbar, if you go and try to enable custom actions,
you will notice that the app switcher is enabled unlike the other keys.
I know this isn't ideal because if you disable the h/w keys, why in the world would you go and
enable custom actions but if for some reason someone does this........this fixes that :-)
See images
Before - http://i.imgur.com/HdZYNHx.png
After - http://i.imgur.com/dkMnEAk.png
PS2 - Added the same precaution for Search key (untested but should work the same)
Change-Id: If065d005fcb17ad11119bf53736e4e0a46aca669
diff --git a/src/org/omnirom/omnigears/ButtonSettings.java b/src/org/omnirom/omnigears/ButtonSettings.java
index d7ac4b6..dae3a87 100644
--- a/src/org/omnirom/omnigears/ButtonSettings.java
+++ b/src/org/omnirom/omnigears/ButtonSettings.java
@@ -148,6 +148,8 @@
private PreferenceCategory mKeysBackCategory;
private PreferenceCategory mKeysHomeCategory;
private PreferenceCategory mKeysMenuCategory;
+ private PreferenceCategory mKeysAppSwitchCategory;
+ private PreferenceCategory mKeysAssistCategory;
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -219,9 +221,9 @@
(PreferenceCategory) prefScreen.findPreference(CATEGORY_HOME);
mKeysMenuCategory =
(PreferenceCategory) prefScreen.findPreference(CATEGORY_MENU);
- final PreferenceCategory keysAssistCategory =
+ mKeysAssistCategory =
(PreferenceCategory) prefScreen.findPreference(CATEGORY_ASSIST);
- final PreferenceCategory keysAppSwitchCategory =
+ mKeysAppSwitchCategory =
(PreferenceCategory) prefScreen.findPreference(CATEGORY_APPSWITCH);
if (!res.getBoolean(R.bool.config_has_hardware_buttons)) {
@@ -229,8 +231,8 @@
prefScreen.removePreference(mKeysBackCategory);
prefScreen.removePreference(mKeysHomeCategory);
prefScreen.removePreference(mKeysMenuCategory);
- prefScreen.removePreference(keysAssistCategory);
- prefScreen.removePreference(keysAppSwitchCategory);
+ prefScreen.removePreference(mKeysAssistCategory);
+ prefScreen.removePreference(mKeysAppSwitchCategory);
} else {
mEnableCustomBindings = (SwitchPreference) prefScreen.findPreference(
KEYS_ENABLE_CUSTOM);
@@ -384,7 +386,7 @@
mKeySettings.put(Settings.System.KEY_ASSIST_LONG_PRESS_ACTION, assistLongPressAction);
} else {
- prefScreen.removePreference(keysAssistCategory);
+ prefScreen.removePreference(mKeysAssistCategory);
}
if (hasAppSwitchKey) {
@@ -404,7 +406,7 @@
mKeySettings.put(Settings.System.KEY_APP_SWITCH_LONG_PRESS_ACTION, appSwitchLongPressAction);
} else {
- prefScreen.removePreference(keysAppSwitchCategory);
+ prefScreen.removePreference(mKeysAppSwitchCategory);
}
mEnableCustomBindings.setChecked((Settings.System.getInt(resolver,
@@ -679,5 +681,7 @@
mKeysHomeCategory.setEnabled(!harwareKeysDisable && enableHWKeyRebinding);
mKeysBackCategory.setEnabled(!harwareKeysDisable && enableHWKeyRebinding);
mKeysMenuCategory.setEnabled(!harwareKeysDisable && enableHWKeyRebinding);
+ mKeysAppSwitchCategory.setEnabled(!harwareKeysDisable && enableHWKeyRebinding);
+ mKeysAssistCategory.setEnabled(!harwareKeysDisable && enableHWKeyRebinding);
}
}