Merge "Fix flaky test WindowInputTestsi#testTrustedOverlapWindow" into sc-v2-dev

This commit is contained in:
TreeHugger Robot
2022-01-07 14:48:17 +00:00
committed by Android (Google) Code Review

View File

@@ -17,6 +17,7 @@
package android.view; package android.view;
import android.compat.annotation.UnsupportedAppUsage; import android.compat.annotation.UnsupportedAppUsage;
import android.os.Handler;
import android.os.Looper; import android.os.Looper;
/** /**
@@ -27,6 +28,13 @@ public class BatchedInputEventReceiver extends InputEventReceiver {
private Choreographer mChoreographer; private Choreographer mChoreographer;
private boolean mBatchingEnabled; private boolean mBatchingEnabled;
private boolean mBatchedInputScheduled; private boolean mBatchedInputScheduled;
private final Handler mHandler;
private final Runnable mConsumeBatchedInputEvents = new Runnable() {
@Override
public void run() {
consumeBatchedInputEvents(-1);
}
};
@UnsupportedAppUsage @UnsupportedAppUsage
public BatchedInputEventReceiver( public BatchedInputEventReceiver(
@@ -34,6 +42,7 @@ public class BatchedInputEventReceiver extends InputEventReceiver {
super(inputChannel, looper); super(inputChannel, looper);
mChoreographer = choreographer; mChoreographer = choreographer;
mBatchingEnabled = true; mBatchingEnabled = true;
mHandler = new Handler(looper);
} }
@Override @Override
@@ -57,10 +66,15 @@ public class BatchedInputEventReceiver extends InputEventReceiver {
* @hide * @hide
*/ */
public void setBatchingEnabled(boolean batchingEnabled) { public void setBatchingEnabled(boolean batchingEnabled) {
if (mBatchingEnabled == batchingEnabled) {
return;
}
mBatchingEnabled = batchingEnabled; mBatchingEnabled = batchingEnabled;
mHandler.removeCallbacks(mConsumeBatchedInputEvents);
if (!batchingEnabled) { if (!batchingEnabled) {
unscheduleBatchedInput(); unscheduleBatchedInput();
consumeBatchedInputEvents(-1); mHandler.post(mConsumeBatchedInputEvents);
} }
} }