diff options
| -rw-r--r-- | core/java/android/view/KeyEvent.java | 65 | ||||
| -rw-r--r-- | core/java/android/view/MotionEvent.java | 105 |
2 files changed, 169 insertions, 1 deletions
diff --git a/core/java/android/view/KeyEvent.java b/core/java/android/view/KeyEvent.java index 154f1fedbcfa..01015ea250e0 100644 --- a/core/java/android/view/KeyEvent.java +++ b/core/java/android/view/KeyEvent.java @@ -20,6 +20,7 @@ import static android.os.IInputConstants.INPUT_EVENT_FLAG_IS_ACCESSIBILITY_EVENT import static android.view.Display.INVALID_DISPLAY; import android.annotation.FlaggedApi; +import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.TestApi; @@ -35,6 +36,8 @@ import android.view.KeyCharacterMap.KeyData; import com.android.hardware.input.Flags; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; import java.util.concurrent.TimeUnit; /** @@ -944,7 +947,7 @@ public class KeyEvent extends InputEvent implements Parcelable { @FlaggedApi(Flags.FLAG_EMOJI_AND_SCREENSHOT_KEYCODES_AVAILABLE) public static final int KEYCODE_SCREENSHOT = 318; - /** + /** * Integer value of the last KEYCODE. Increases as new keycodes are added to KeyEvent. * @hide */ @@ -1034,6 +1037,15 @@ public class KeyEvent extends InputEvent implements Parcelable { @Deprecated public static final int ACTION_MULTIPLE = 2; + /** @hide */ + @IntDef(prefix = {"ACTION_"}, value = { + ACTION_DOWN, + ACTION_UP, + ACTION_MULTIPLE, + }) + @Retention(RetentionPolicy.SOURCE) + @interface Action {} + /** * SHIFT key locked in CAPS mode. * Reserved for use by {@link MetaKeyKeyListener} for a published constant in its API. @@ -1222,6 +1234,33 @@ public class KeyEvent extends InputEvent implements Parcelable { */ public static final int META_SCROLL_LOCK_ON = 0x400000; + /** @hide */ + @IntDef(flag = true, prefix = {"META_"}, value = { + META_CAP_LOCKED, + META_ALT_LOCKED, + META_SYM_LOCKED, + META_SELECTING, + META_ALT_ON, + META_ALT_LEFT_ON, + META_ALT_RIGHT_ON, + META_SHIFT_ON, + META_SHIFT_LEFT_ON, + META_SHIFT_RIGHT_ON, + META_SYM_ON, + META_FUNCTION_ON, + META_CTRL_ON, + META_CTRL_LEFT_ON, + META_CTRL_RIGHT_ON, + META_META_ON, + META_META_LEFT_ON, + META_META_RIGHT_ON, + META_CAPS_LOCK_ON, + META_NUM_LOCK_ON, + META_SCROLL_LOCK_ON, + }) + @Retention(RetentionPolicy.SOURCE) + @interface MetaState {} + /** * This mask is a combination of {@link #META_SHIFT_ON}, {@link #META_SHIFT_LEFT_ON} * and {@link #META_SHIFT_RIGHT_ON}. @@ -1366,6 +1405,27 @@ public class KeyEvent extends InputEvent implements Parcelable { */ public static final int FLAG_TAINTED = IInputConstants.INPUT_EVENT_FLAG_TAINTED; + /** @hide */ + @IntDef(flag = true, prefix = { "FLAG_" }, value = { + FLAG_WOKE_HERE, + FLAG_SOFT_KEYBOARD, + FLAG_KEEP_TOUCH_MODE, + FLAG_FROM_SYSTEM, + FLAG_EDITOR_ACTION, + FLAG_CANCELED, + FLAG_VIRTUAL_HARD_KEY, + FLAG_LONG_PRESS, + FLAG_CANCELED_LONG_PRESS, + FLAG_TRACKING, + FLAG_FALLBACK, + FLAG_IS_ACCESSIBILITY_EVENT, + FLAG_PREDISPATCH, + FLAG_START_TRACKING, + FLAG_TAINTED, + }) + @Retention(RetentionPolicy.SOURCE) + @interface Flag {} + /** * Returns the maximum keycode. */ @@ -1401,8 +1461,10 @@ public class KeyEvent extends InputEvent implements Parcelable { // NOTE: mHmac is private and not used in this class, but it's used on native side / parcel. private @Nullable byte[] mHmac; @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) + @MetaState private int mMetaState; @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) + @Action private int mAction; @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) private int mKeyCode; @@ -1411,6 +1473,7 @@ public class KeyEvent extends InputEvent implements Parcelable { @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) private int mRepeatCount; @UnsupportedAppUsage + @Flag private int mFlags; /** * The time when the key initially was pressed, in nanoseconds. Only millisecond precision is diff --git a/core/java/android/view/MotionEvent.java b/core/java/android/view/MotionEvent.java index 38f9a91ae44f..6db40bf6e0b8 100644 --- a/core/java/android/view/MotionEvent.java +++ b/core/java/android/view/MotionEvent.java @@ -50,6 +50,7 @@ import dalvik.annotation.optimization.CriticalNative; import dalvik.annotation.optimization.FastNative; import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; import java.util.Objects; /** @@ -445,6 +446,25 @@ public final class MotionEvent extends InputEvent implements Parcelable { @Deprecated public static final int ACTION_POINTER_ID_SHIFT = 8; + /** @hide */ + @IntDef(prefix = { "ACTION_" }, value = { + ACTION_DOWN, + ACTION_UP, + ACTION_MOVE, + ACTION_CANCEL, + ACTION_OUTSIDE, + ACTION_POINTER_DOWN, + ACTION_POINTER_UP, + ACTION_HOVER_MOVE, + ACTION_SCROLL, + ACTION_HOVER_ENTER, + ACTION_HOVER_EXIT, + ACTION_BUTTON_PRESS, + ACTION_BUTTON_RELEASE, + }) + @Retention(RetentionPolicy.SOURCE) + @interface ActionMasked {} + /** * This flag indicates that the window that received this motion event is partly * or wholly obscured by another visible window above it and the event directly passed through @@ -548,6 +568,21 @@ public final class MotionEvent extends InputEvent implements Parcelable { public static final int FLAG_TARGET_ACCESSIBILITY_FOCUS = MOTION_EVENT_FLAG_TARGET_ACCESSIBILITY_FOCUS; + /** @hide */ + @IntDef(flag = true, prefix = { "FLAG_" }, value = { + FLAG_WINDOW_IS_OBSCURED, + FLAG_WINDOW_IS_PARTIALLY_OBSCURED, + FLAG_HOVER_EXIT_PENDING, + FLAG_IS_GENERATED_GESTURE, + FLAG_CANCELED, + FLAG_NO_FOCUS_CHANGE, + FLAG_IS_ACCESSIBILITY_EVENT, + FLAG_TAINTED, + FLAG_TARGET_ACCESSIBILITY_FOCUS, + }) + @Retention(RetentionPolicy.SOURCE) + @interface Flag {} + /** * Flag indicating the motion event intersected the top edge of the screen. */ @@ -1422,6 +1457,63 @@ public final class MotionEvent extends InputEvent implements Parcelable { names.append(AXIS_GESTURE_SWIPE_FINGER_COUNT, "AXIS_GESTURE_SWIPE_FINGER_COUNT"); } + /** @hide */ + @IntDef(prefix = { "AXIS_" }, value = { + AXIS_X, + AXIS_Y, + AXIS_PRESSURE, + AXIS_SIZE, + AXIS_TOUCH_MAJOR, + AXIS_TOUCH_MINOR, + AXIS_TOOL_MAJOR, + AXIS_TOOL_MINOR, + AXIS_ORIENTATION, + AXIS_VSCROLL, + AXIS_HSCROLL, + AXIS_Z, + AXIS_RX, + AXIS_RY, + AXIS_RZ, + AXIS_HAT_X, + AXIS_HAT_Y, + AXIS_LTRIGGER, + AXIS_RTRIGGER, + AXIS_THROTTLE, + AXIS_RUDDER, + AXIS_WHEEL, + AXIS_GAS, + AXIS_BRAKE, + AXIS_DISTANCE, + AXIS_TILT, + AXIS_SCROLL, + AXIS_RELATIVE_X, + AXIS_RELATIVE_Y, + AXIS_GENERIC_1, + AXIS_GENERIC_2, + AXIS_GENERIC_3, + AXIS_GENERIC_4, + AXIS_GENERIC_5, + AXIS_GENERIC_6, + AXIS_GENERIC_7, + AXIS_GENERIC_8, + AXIS_GENERIC_9, + AXIS_GENERIC_10, + AXIS_GENERIC_11, + AXIS_GENERIC_12, + AXIS_GENERIC_13, + AXIS_GENERIC_14, + AXIS_GENERIC_15, + AXIS_GENERIC_16, + AXIS_GESTURE_X_OFFSET, + AXIS_GESTURE_Y_OFFSET, + AXIS_GESTURE_SCROLL_X_DISTANCE, + AXIS_GESTURE_SCROLL_Y_DISTANCE, + AXIS_GESTURE_PINCH_SCALE_FACTOR, + AXIS_GESTURE_SWIPE_FINGER_COUNT, + }) + @Retention(RetentionPolicy.SOURCE) + @interface Axis {} + /** * Button constant: Primary button (left mouse button). * @@ -1522,6 +1614,19 @@ public final class MotionEvent extends InputEvent implements Parcelable { "0x80000000", }; + /** @hide */ + @IntDef(flag = true, prefix = { "BUTTON_" }, value = { + BUTTON_PRIMARY, + BUTTON_SECONDARY, + BUTTON_TERTIARY, + BUTTON_BACK, + BUTTON_FORWARD, + BUTTON_STYLUS_PRIMARY, + BUTTON_STYLUS_SECONDARY, + }) + @Retention(RetentionPolicy.SOURCE) + @interface Button {} + /** * Classification constant: None. * |