Loading services/core/java/com/android/server/policy/PhoneWindowManager.java +32 −10 Original line number Diff line number Diff line Loading @@ -2873,16 +2873,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { switch(keyCode) { case KeyEvent.KEYCODE_HOME: // First we always handle the home key here, so applications // can never break it, although if keyguard is on, we do let // it handle it, because that gives us the correct 5 second // timeout. DisplayHomeButtonHandler handler = mDisplayHomeButtonHandlers.get(displayId); if (handler == null) { handler = new DisplayHomeButtonHandler(displayId); mDisplayHomeButtonHandlers.put(displayId, handler); } return handler.handleHomeButton(focusedToken, event); return handleHomeShortcuts(displayId, focusedToken, event); case KeyEvent.KEYCODE_MENU: // Hijack modified menu keys for debugging features final int chordBug = KeyEvent.META_SHIFT_ON; Loading Loading @@ -2913,6 +2904,11 @@ public class PhoneWindowManager implements WindowManagerPolicy { return key_consumed; } break; case KeyEvent.KEYCODE_H: if (down && event.isMetaPressed()) { return handleHomeShortcuts(displayId, focusedToken, event); } break; case KeyEvent.KEYCODE_I: if (down && event.isMetaPressed()) { showSystemSettings(); Loading Loading @@ -2952,6 +2948,11 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (down && event.isMetaPressed() && event.isCtrlPressed() && repeatCount == 0) { enterStageSplitFromRunningApp(true /* leftOrTop */); return key_consumed; } else if (!down && event.isMetaPressed()) { boolean backKeyHandled = backKeyPress(); if (backKeyHandled) { return key_consumed; } } break; case KeyEvent.KEYCODE_DPAD_RIGHT: Loading @@ -2960,6 +2961,14 @@ public class PhoneWindowManager implements WindowManagerPolicy { return key_consumed; } break; case KeyEvent.KEYCODE_GRAVE: if (!down && event.isMetaPressed()) { boolean backKeyHandled = backKeyPress(); if (backKeyHandled) { return key_consumed; } } break; case KeyEvent.KEYCODE_SLASH: if (down && repeatCount == 0 && event.isMetaPressed() && !keyguardOn) { toggleKeyboardShortcutsMenu(event.getDeviceId()); Loading Loading @@ -3175,6 +3184,19 @@ public class PhoneWindowManager implements WindowManagerPolicy { return key_not_consumed; } private int handleHomeShortcuts(int displayId, IBinder focusedToken, KeyEvent event) { // First we always handle the home key here, so applications // can never break it, although if keyguard is on, we do let // it handle it, because that gives us the correct 5 second // timeout. DisplayHomeButtonHandler handler = mDisplayHomeButtonHandlers.get(displayId); if (handler == null) { handler = new DisplayHomeButtonHandler(displayId); mDisplayHomeButtonHandlers.put(displayId, handler); } return handler.handleHomeButton(focusedToken, event); } private void toggleMicrophoneMuteFromKey() { if (mSensorPrivacyManager.supportsSensorToggle( SensorPrivacyManager.TOGGLE_TYPE_SOFTWARE, Loading Loading
services/core/java/com/android/server/policy/PhoneWindowManager.java +32 −10 Original line number Diff line number Diff line Loading @@ -2873,16 +2873,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { switch(keyCode) { case KeyEvent.KEYCODE_HOME: // First we always handle the home key here, so applications // can never break it, although if keyguard is on, we do let // it handle it, because that gives us the correct 5 second // timeout. DisplayHomeButtonHandler handler = mDisplayHomeButtonHandlers.get(displayId); if (handler == null) { handler = new DisplayHomeButtonHandler(displayId); mDisplayHomeButtonHandlers.put(displayId, handler); } return handler.handleHomeButton(focusedToken, event); return handleHomeShortcuts(displayId, focusedToken, event); case KeyEvent.KEYCODE_MENU: // Hijack modified menu keys for debugging features final int chordBug = KeyEvent.META_SHIFT_ON; Loading Loading @@ -2913,6 +2904,11 @@ public class PhoneWindowManager implements WindowManagerPolicy { return key_consumed; } break; case KeyEvent.KEYCODE_H: if (down && event.isMetaPressed()) { return handleHomeShortcuts(displayId, focusedToken, event); } break; case KeyEvent.KEYCODE_I: if (down && event.isMetaPressed()) { showSystemSettings(); Loading Loading @@ -2952,6 +2948,11 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (down && event.isMetaPressed() && event.isCtrlPressed() && repeatCount == 0) { enterStageSplitFromRunningApp(true /* leftOrTop */); return key_consumed; } else if (!down && event.isMetaPressed()) { boolean backKeyHandled = backKeyPress(); if (backKeyHandled) { return key_consumed; } } break; case KeyEvent.KEYCODE_DPAD_RIGHT: Loading @@ -2960,6 +2961,14 @@ public class PhoneWindowManager implements WindowManagerPolicy { return key_consumed; } break; case KeyEvent.KEYCODE_GRAVE: if (!down && event.isMetaPressed()) { boolean backKeyHandled = backKeyPress(); if (backKeyHandled) { return key_consumed; } } break; case KeyEvent.KEYCODE_SLASH: if (down && repeatCount == 0 && event.isMetaPressed() && !keyguardOn) { toggleKeyboardShortcutsMenu(event.getDeviceId()); Loading Loading @@ -3175,6 +3184,19 @@ public class PhoneWindowManager implements WindowManagerPolicy { return key_not_consumed; } private int handleHomeShortcuts(int displayId, IBinder focusedToken, KeyEvent event) { // First we always handle the home key here, so applications // can never break it, although if keyguard is on, we do let // it handle it, because that gives us the correct 5 second // timeout. DisplayHomeButtonHandler handler = mDisplayHomeButtonHandlers.get(displayId); if (handler == null) { handler = new DisplayHomeButtonHandler(displayId); mDisplayHomeButtonHandlers.put(displayId, handler); } return handler.handleHomeButton(focusedToken, event); } private void toggleMicrophoneMuteFromKey() { if (mSensorPrivacyManager.supportsSensorToggle( SensorPrivacyManager.TOGGLE_TYPE_SOFTWARE, Loading