aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMoyster <oysterized@gmail.com>2018-01-30 17:09:03 +0100
committerMoyster <oysterized@gmail.com>2018-01-30 17:10:16 +0100
commit288642ca49c75220a23c0c3f9d5f1d94b5aa0125 (patch)
tree30c7e78c87cdf5b96cef32350f2cb18ddf0b0d3a
parentbfdd87735f601de214fce2de55895222ba4bfe66 (diff)
keyhandler: don't parse physical button events if KeyDisabler are on (virtual navbars)
-rw-r--r--keyhandler/src/com/cyanogenmod/settings/device/KeyHandler.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/keyhandler/src/com/cyanogenmod/settings/device/KeyHandler.java b/keyhandler/src/com/cyanogenmod/settings/device/KeyHandler.java
index b28d80a..7b1ee55 100644
--- a/keyhandler/src/com/cyanogenmod/settings/device/KeyHandler.java
+++ b/keyhandler/src/com/cyanogenmod/settings/device/KeyHandler.java
@@ -49,6 +49,7 @@ import android.util.Log;
import android.view.KeyEvent;
import android.view.WindowManagerGlobal;
+import cyanogenmod.hardware.CMHardwareManager;
import cyanogenmod.providers.CMSettings;
import com.android.internal.os.DeviceKeyHandler;
@@ -296,7 +297,8 @@ public class KeyHandler implements DeviceKeyHandler {
public KeyEvent handleKeyEvent(KeyEvent event) {
KeyEvent isHandled = event;
-
+ CMHardwareManager hardware = CMHardwareManager.getInstance(mContext);
+ boolean virtualKeysEnabled = hardware.get(CMHardwareManager.FEATURE_KEY_DISABLE);
switch (event.getScanCode()) {
case 102: // Home button event
@@ -306,7 +308,7 @@ public class KeyHandler implements DeviceKeyHandler {
}
isLastPressHomeButton = mPowerManager.isInteractive()
&& event.getKeyCode() == KeyEvent.KEYCODE_HOME;
- }
+ }
break;
case 195: // Gesture event
isHandled = null;
@@ -333,6 +335,9 @@ public class KeyHandler implements DeviceKeyHandler {
}
}
}
+ if (event.getScanCode() == 102) {
+ return virtualKeysEnabled ? null : isHandled;
+ }
return isHandled;
}