summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/api/current.txt1
-rw-r--r--core/api/test-current.txt2
-rw-r--r--core/java/android/view/KeyEvent.java8
-rw-r--r--data/keyboards/Generic.kl2
-rw-r--r--services/core/java/com/android/server/policy/PhoneWindowManager.java3
5 files changed, 13 insertions, 3 deletions
diff --git a/core/api/current.txt b/core/api/current.txt
index 84b635ae78c0..f4cfedc9e659 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -49492,6 +49492,7 @@ package android.view {
field public static final int KEYCODE_PROG_YELLOW = 185; // 0xb9
field public static final int KEYCODE_Q = 45; // 0x2d
field public static final int KEYCODE_R = 46; // 0x2e
+ field public static final int KEYCODE_RECENT_APPS = 312; // 0x138
field public static final int KEYCODE_REFRESH = 285; // 0x11d
field public static final int KEYCODE_RIGHT_BRACKET = 72; // 0x48
field public static final int KEYCODE_RO = 217; // 0xd9
diff --git a/core/api/test-current.txt b/core/api/test-current.txt
index 3d30c0f6d0b0..55dc9d3c7627 100644
--- a/core/api/test-current.txt
+++ b/core/api/test-current.txt
@@ -2927,7 +2927,7 @@ package android.view {
method public static String actionToString(int);
method public final void setDisplayId(int);
field public static final int FLAG_IS_ACCESSIBILITY_EVENT = 2048; // 0x800
- field public static final int LAST_KEYCODE = 311; // 0x137
+ field public static final int LAST_KEYCODE = 312; // 0x138
}
public final class KeyboardShortcutGroup implements android.os.Parcelable {
diff --git a/core/java/android/view/KeyEvent.java b/core/java/android/view/KeyEvent.java
index 06c1b258cb70..61582cdf07a7 100644
--- a/core/java/android/view/KeyEvent.java
+++ b/core/java/android/view/KeyEvent.java
@@ -892,13 +892,18 @@ public class KeyEvent extends InputEvent implements Parcelable {
* The use of this button does not usually correspond to the function of an eraser.
*/
public static final int KEYCODE_STYLUS_BUTTON_TAIL = 311;
+ /**
+ * Key code constant: To open recent apps view (a.k.a. Overview).
+ * This key is handled by the framework and is never delivered to applications.
+ */
+ public static final int KEYCODE_RECENT_APPS = 312;
/**
* Integer value of the last KEYCODE. Increases as new keycodes are added to KeyEvent.
* @hide
*/
@TestApi
- public static final int LAST_KEYCODE = KEYCODE_STYLUS_BUTTON_TAIL;
+ public static final int LAST_KEYCODE = KEYCODE_RECENT_APPS;
// NOTE: If you add a new keycode here you must also add it to:
// isSystem()
@@ -2021,6 +2026,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
case KeyEvent.KEYCODE_MENU:
case KeyEvent.KEYCODE_SOFT_RIGHT:
case KeyEvent.KEYCODE_HOME:
+ case KeyEvent.KEYCODE_RECENT_APPS:
case KeyEvent.KEYCODE_BACK:
case KeyEvent.KEYCODE_CALL:
case KeyEvent.KEYCODE_ENDCALL:
diff --git a/data/keyboards/Generic.kl b/data/keyboards/Generic.kl
index a43e2251d486..0f8616da7359 100644
--- a/data/keyboards/Generic.kl
+++ b/data/keyboards/Generic.kl
@@ -139,7 +139,7 @@ key 116 POWER
key 117 NUMPAD_EQUALS
# key 118 "KEY_KPPLUSMINUS"
key 119 BREAK
-# key 120 (undefined)
+key 120 RECENT_APPS
key 121 NUMPAD_COMMA
key 122 KANA
key 123 EISU
diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java
index 399b94c0c921..029d746a2f78 100644
--- a/services/core/java/com/android/server/policy/PhoneWindowManager.java
+++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java
@@ -2887,6 +2887,9 @@ public class PhoneWindowManager implements WindowManagerPolicy {
}
}
break;
+ case KeyEvent.KEYCODE_RECENT_APPS:
+ // TODO(b/261621522): Handle recents key presses
+ return key_consumed;
case KeyEvent.KEYCODE_APP_SWITCH:
if (!keyguardOn) {
if (down && repeatCount == 0) {