Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 94a9a94b authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Add direct keys to launch applications." am: d76da0b6

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1825196

Change-Id: I611123404820d92dcfd24f0dd5dc0eaebafa8fc4
parents b4f69ae6 d76da0b6
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -47544,6 +47544,10 @@ package android.view {
    field public static final int KEYCODE_CUT = 277; // 0x115
    field public static final int KEYCODE_D = 32; // 0x20
    field public static final int KEYCODE_DEL = 67; // 0x43
    field public static final int KEYCODE_DEMO_APP_1 = 301; // 0x12d
    field public static final int KEYCODE_DEMO_APP_2 = 302; // 0x12e
    field public static final int KEYCODE_DEMO_APP_3 = 303; // 0x12f
    field public static final int KEYCODE_DEMO_APP_4 = 304; // 0x130
    field public static final int KEYCODE_DPAD_CENTER = 23; // 0x17
    field public static final int KEYCODE_DPAD_DOWN = 20; // 0x14
    field public static final int KEYCODE_DPAD_DOWN_LEFT = 269; // 0x10d
@@ -47575,6 +47579,10 @@ package android.view {
    field public static final int KEYCODE_F7 = 137; // 0x89
    field public static final int KEYCODE_F8 = 138; // 0x8a
    field public static final int KEYCODE_F9 = 139; // 0x8b
    field public static final int KEYCODE_FEATURED_APP_1 = 297; // 0x129
    field public static final int KEYCODE_FEATURED_APP_2 = 298; // 0x12a
    field public static final int KEYCODE_FEATURED_APP_3 = 299; // 0x12b
    field public static final int KEYCODE_FEATURED_APP_4 = 300; // 0x12c
    field public static final int KEYCODE_FOCUS = 80; // 0x50
    field public static final int KEYCODE_FORWARD = 125; // 0x7d
    field public static final int KEYCODE_FORWARD_DEL = 112; // 0x70
@@ -47740,6 +47748,14 @@ package android.view {
    field public static final int KEYCODE_U = 49; // 0x31
    field public static final int KEYCODE_UNKNOWN = 0; // 0x0
    field public static final int KEYCODE_V = 50; // 0x32
    field public static final int KEYCODE_VIDEO_APP_1 = 289; // 0x121
    field public static final int KEYCODE_VIDEO_APP_2 = 290; // 0x122
    field public static final int KEYCODE_VIDEO_APP_3 = 291; // 0x123
    field public static final int KEYCODE_VIDEO_APP_4 = 292; // 0x124
    field public static final int KEYCODE_VIDEO_APP_5 = 293; // 0x125
    field public static final int KEYCODE_VIDEO_APP_6 = 294; // 0x126
    field public static final int KEYCODE_VIDEO_APP_7 = 295; // 0x127
    field public static final int KEYCODE_VIDEO_APP_8 = 296; // 0x128
    field public static final int KEYCODE_VOICE_ASSIST = 231; // 0xe7
    field public static final int KEYCODE_VOLUME_DOWN = 25; // 0x19
    field public static final int KEYCODE_VOLUME_MUTE = 164; // 0xa4
+1 −1
Original line number Diff line number Diff line
@@ -2748,7 +2748,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 = 288; // 0x120
    field public static final int LAST_KEYCODE = 304; // 0x130
  }

  public final class KeyboardShortcutGroup implements android.os.Parcelable {
+35 −3
Original line number Diff line number Diff line
@@ -830,13 +830,45 @@ public class KeyEvent extends InputEvent implements Parcelable {
     * consuming content. May be consumed by system to set account globally.
     */
    public static final int KEYCODE_PROFILE_SWITCH = 288;
    /** Key code constant: Video Application key #1. */
    public static final int KEYCODE_VIDEO_APP_1 = 289;
    /** Key code constant: Video Application key #2. */
    public static final int KEYCODE_VIDEO_APP_2 = 290;
    /** Key code constant: Video Application key #3. */
    public static final int KEYCODE_VIDEO_APP_3 = 291;
    /** Key code constant: Video Application key #4. */
    public static final int KEYCODE_VIDEO_APP_4 = 292;
    /** Key code constant: Video Application key #5. */
    public static final int KEYCODE_VIDEO_APP_5 = 293;
    /** Key code constant: Video Application key #6. */
    public static final int KEYCODE_VIDEO_APP_6 = 294;
    /** Key code constant: Video Application key #7. */
    public static final int KEYCODE_VIDEO_APP_7 = 295;
    /** Key code constant: Video Application key #8. */
    public static final int KEYCODE_VIDEO_APP_8 = 296;
    /** Key code constant: Featured Application key #1. */
    public static final int KEYCODE_FEATURED_APP_1 = 297;
    /** Key code constant: Featured Application key #2. */
    public static final int KEYCODE_FEATURED_APP_2 = 298;
    /** Key code constant: Featured Application key #3. */
    public static final int KEYCODE_FEATURED_APP_3 = 299;
    /** Key code constant: Featured Application key #4. */
    public static final int KEYCODE_FEATURED_APP_4 = 300;
    /** Key code constant: Demo Application key #1. */
    public static final int KEYCODE_DEMO_APP_1 = 301;
    /** Key code constant: Demo Application key #2. */
    public static final int KEYCODE_DEMO_APP_2 = 302;
    /** Key code constant: Demo Application key #3. */
    public static final int KEYCODE_DEMO_APP_3 = 303;
    /** Key code constant: Demo Application key #4. */
    public static final int KEYCODE_DEMO_APP_4 = 304;

   /**
     * Integer value of the last KEYCODE. Increases as new keycodes are added to KeyEvent.
     * @hide
     */
    @TestApi
    public static final int LAST_KEYCODE = KEYCODE_PROFILE_SWITCH;
    public static final int LAST_KEYCODE = KEYCODE_DEMO_APP_4;

    // NOTE: If you add a new keycode here you must also add it to:
    //  isSystem()
+16 −0
Original line number Diff line number Diff line
@@ -1984,6 +1984,22 @@
        <enum name="KEYCODE_THUMBS_UP" value="286" />
        <enum name="KEYCODE_THUMBS_DOWN" value="287" />
        <enum name="KEYCODE_PROFILE_SWITCH" value="288" />
        <enum name="KEYCODE_VIDEO_APP_1" value="289" />
        <enum name="KEYCODE_VIDEO_APP_2" value="290" />
        <enum name="KEYCODE_VIDEO_APP_3" value="291" />
        <enum name="KEYCODE_VIDEO_APP_4" value="292" />
        <enum name="KEYCODE_VIDEO_APP_5" value="293" />
        <enum name="KEYCODE_VIDEO_APP_6" value="294" />
        <enum name="KEYCODE_VIDEO_APP_7" value="295" />
        <enum name="KEYCODE_VIDEO_APP_8" value="296" />
        <enum name="KEYCODE_FEATURED_APP_1" value="297" />
        <enum name="KEYCODE_FEATURED_APP_2" value="298" />
        <enum name="KEYCODE_FEATURED_APP_3" value="299" />
        <enum name="KEYCODE_FEATURED_APP_4" value="300" />
        <enum name="KEYCODE_DEMO_APP_1" value="301" />
        <enum name="KEYCODE_DEMO_APP_2" value="302" />
        <enum name="KEYCODE_DEMO_APP_3" value="303" />
        <enum name="KEYCODE_DEMO_APP_4" value="304" />
    </attr>
    <!-- ***************************************************************** -->
+38 −0
Original line number Diff line number Diff line
@@ -2666,6 +2666,24 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                Slog.wtf(TAG, "KEYCODE_VOICE_ASSIST should be handled in"
                        + " interceptKeyBeforeQueueing");
                return key_consumed;
            case KeyEvent.KEYCODE_VIDEO_APP_1:
            case KeyEvent.KEYCODE_VIDEO_APP_2:
            case KeyEvent.KEYCODE_VIDEO_APP_3:
            case KeyEvent.KEYCODE_VIDEO_APP_4:
            case KeyEvent.KEYCODE_VIDEO_APP_5:
            case KeyEvent.KEYCODE_VIDEO_APP_6:
            case KeyEvent.KEYCODE_VIDEO_APP_7:
            case KeyEvent.KEYCODE_VIDEO_APP_8:
            case KeyEvent.KEYCODE_FEATURED_APP_1:
            case KeyEvent.KEYCODE_FEATURED_APP_2:
            case KeyEvent.KEYCODE_FEATURED_APP_3:
            case KeyEvent.KEYCODE_FEATURED_APP_4:
            case KeyEvent.KEYCODE_DEMO_APP_1:
            case KeyEvent.KEYCODE_DEMO_APP_2:
            case KeyEvent.KEYCODE_DEMO_APP_3:
            case KeyEvent.KEYCODE_DEMO_APP_4:
                Slog.wtf(TAG, "KEYCODE_APP_X should be handled in interceptKeyBeforeQueueing");
                return key_consumed;
            case KeyEvent.KEYCODE_SYSRQ:
                if (down && repeatCount == 0) {
                    mScreenshotRunnable.setScreenshotType(TAKE_SCREENSHOT_FULLSCREEN);
@@ -3773,6 +3791,26 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                }
                break;
            }
            case KeyEvent.KEYCODE_VIDEO_APP_1:
            case KeyEvent.KEYCODE_VIDEO_APP_2:
            case KeyEvent.KEYCODE_VIDEO_APP_3:
            case KeyEvent.KEYCODE_VIDEO_APP_4:
            case KeyEvent.KEYCODE_VIDEO_APP_5:
            case KeyEvent.KEYCODE_VIDEO_APP_6:
            case KeyEvent.KEYCODE_VIDEO_APP_7:
            case KeyEvent.KEYCODE_VIDEO_APP_8:
            case KeyEvent.KEYCODE_FEATURED_APP_1:
            case KeyEvent.KEYCODE_FEATURED_APP_2:
            case KeyEvent.KEYCODE_FEATURED_APP_3:
            case KeyEvent.KEYCODE_FEATURED_APP_4:
            case KeyEvent.KEYCODE_DEMO_APP_1:
            case KeyEvent.KEYCODE_DEMO_APP_2:
            case KeyEvent.KEYCODE_DEMO_APP_3:
            case KeyEvent.KEYCODE_DEMO_APP_4: {
                // Just drop if keys are not intercepted for direct key.
                result &= ~ACTION_PASS_TO_USER;
                break;
            }
        }

        // Intercept the Accessibility keychord (CTRL + ALT + Z) for keyboard users.