Merge "Add reporting to monitor apps incorrectly using getRaw" into sc-dev

This commit is contained in:
Evan Rosky
2021-03-25 02:10:05 +00:00
committed by Android (Google) Code Review
2 changed files with 14 additions and 0 deletions

View File

@@ -222,6 +222,14 @@ public final class InputManager {
@ChangeId
public static final long BLOCK_FLAG_SLIPPERY = android.os.IInputConstants.BLOCK_FLAG_SLIPPERY;
/**
* Check whether apps are using MotionEvent.getRawX/Y. This is implementation-specific, and
* thus undefined for most 3p app usages.
* @hide
*/
@ChangeId
public static final long APP_USES_RAW_INPUT_COORDS = 179274888L;
/**
* Input Event Injection Synchronization Mode: None.
* Never blocks. Injection is asynchronous and is assumed always to be successful.

View File

@@ -16,6 +16,7 @@
package android.view;
import static android.hardware.input.InputManager.APP_USES_RAW_INPUT_COORDS;
import static android.view.Display.DEFAULT_DISPLAY;
import static java.lang.annotation.RetentionPolicy.SOURCE;
@@ -23,6 +24,7 @@ import static java.lang.annotation.RetentionPolicy.SOURCE;
import android.annotation.IntDef;
import android.annotation.Nullable;
import android.annotation.TestApi;
import android.compat.Compatibility;
import android.compat.annotation.UnsupportedAppUsage;
import android.graphics.Matrix;
import android.os.Build;
@@ -2672,6 +2674,7 @@ public final class MotionEvent extends InputEvent implements Parcelable {
* @see #AXIS_X
*/
public final float getRawX() {
Compatibility.reportChange(APP_USES_RAW_INPUT_COORDS);
return nativeGetRawAxisValue(mNativePtr, AXIS_X, 0, HISTORY_CURRENT);
}
@@ -2685,6 +2688,7 @@ public final class MotionEvent extends InputEvent implements Parcelable {
* @see #AXIS_Y
*/
public final float getRawY() {
Compatibility.reportChange(APP_USES_RAW_INPUT_COORDS);
return nativeGetRawAxisValue(mNativePtr, AXIS_Y, 0, HISTORY_CURRENT);
}
@@ -2701,6 +2705,7 @@ public final class MotionEvent extends InputEvent implements Parcelable {
* @see #AXIS_X
*/
public float getRawX(int pointerIndex) {
Compatibility.reportChange(APP_USES_RAW_INPUT_COORDS);
return nativeGetRawAxisValue(mNativePtr, AXIS_X, pointerIndex, HISTORY_CURRENT);
}
@@ -2717,6 +2722,7 @@ public final class MotionEvent extends InputEvent implements Parcelable {
* @see #AXIS_Y
*/
public float getRawY(int pointerIndex) {
Compatibility.reportChange(APP_USES_RAW_INPUT_COORDS);
return nativeGetRawAxisValue(mNativePtr, AXIS_Y, pointerIndex, HISTORY_CURRENT);
}