diff options
| author | TreeHugger Robot <treehugger-gerrit@google.com> | 2020-03-24 07:56:25 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-03-24 07:56:25 +0000 |
| commit | aec6f5f6fa75a50720479f5cc003bf2d527fa527 (patch) | |
| tree | 5b2aae78b9e4ef2e096a950793814d54ec66cfcd /core/java/android | |
| parent | d55054d4082861558f9cd55af4f4d3bced7b15c8 (diff) | |
| parent | 423346e7e295b61a699691e9f7690e3f228d7e35 (diff) | |
Merge "Pass source to dispatchBatchedInputEventPending (1/2)" into rvc-dev
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/view/BatchedInputEventReceiver.java | 2 | ||||
| -rw-r--r-- | core/java/android/view/InputEventReceiver.java | 10 | ||||
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 32 |
3 files changed, 14 insertions, 30 deletions
diff --git a/core/java/android/view/BatchedInputEventReceiver.java b/core/java/android/view/BatchedInputEventReceiver.java index 95b2c7019dbc..30e3ec135065 100644 --- a/core/java/android/view/BatchedInputEventReceiver.java +++ b/core/java/android/view/BatchedInputEventReceiver.java @@ -35,7 +35,7 @@ public class BatchedInputEventReceiver extends InputEventReceiver { } @Override - public void onBatchedInputEventPending() { + public void onBatchedInputEventPending(int source) { scheduleBatchedInput(); } diff --git a/core/java/android/view/InputEventReceiver.java b/core/java/android/view/InputEventReceiver.java index 7986ceb988db..25a4108c612c 100644 --- a/core/java/android/view/InputEventReceiver.java +++ b/core/java/android/view/InputEventReceiver.java @@ -147,8 +147,9 @@ public abstract class InputEventReceiver { * samples until the recipient calls {@link #consumeBatchedInputEvents} or * an event is received that ends the batch and causes it to be consumed * immediately (such as a pointer up event). + * @param source The source of the batched event. */ - public void onBatchedInputEventPending() { + public void onBatchedInputEventPending(int source) { consumeBatchedInputEvents(-1); } @@ -219,13 +220,6 @@ public abstract class InputEventReceiver { onInputEvent(event); } - // Called from native code. - @SuppressWarnings("unused") - @UnsupportedAppUsage - private void dispatchBatchedInputEventPending() { - onBatchedInputEventPending(); - } - /** * Factory for InputEventReceiver */ diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 218c9fb2fd4f..315c8777ca8f 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -504,7 +504,6 @@ public final class ViewRootImpl implements ViewParent, int mPendingInputEventCount; boolean mProcessInputEventsScheduled; boolean mUnbufferedInputDispatch; - boolean mUnbufferedInputDispatchBySource; @InputSourceClass int mUnbufferedInputSource = SOURCE_CLASS_NONE; @@ -1872,9 +1871,6 @@ public final class ViewRootImpl implements ViewParent, mTraversalBarrier = mHandler.getLooper().getQueue().postSyncBarrier(); mChoreographer.postCallback( Choreographer.CALLBACK_TRAVERSAL, mTraversalRunnable, null); - if (!mUnbufferedInputDispatch && !mUnbufferedInputDispatchBySource) { - scheduleConsumeBatchedInput(); - } notifyRendererOfFramePending(); pokeDrawLockIfNeeded(); } @@ -8156,7 +8152,6 @@ public final class ViewRootImpl implements ViewParent, @Override public void onInputEvent(InputEvent event) { Trace.traceBegin(Trace.TRACE_TAG_VIEW, "processInputEventForCompatibility"); - processUnbufferedRequest(event); List<InputEvent> processedEvents; try { processedEvents = @@ -8181,12 +8176,18 @@ public final class ViewRootImpl implements ViewParent, } @Override - public void onBatchedInputEventPending() { - if (mUnbufferedInputDispatch || mUnbufferedInputDispatchBySource) { - super.onBatchedInputEventPending(); - } else { - scheduleConsumeBatchedInput(); + public void onBatchedInputEventPending(int source) { + final boolean unbuffered = mUnbufferedInputDispatch + || (source & mUnbufferedInputSource) != SOURCE_CLASS_NONE; + if (unbuffered) { + if (mConsumeBatchedInputScheduled) { + unscheduleConsumeBatchedInput(); + } + // Consume event immediately if unbuffered input dispatch has been requested. + consumeBatchedInputEvents(-1); + return; } + scheduleConsumeBatchedInput(); } @Override @@ -8199,17 +8200,6 @@ public final class ViewRootImpl implements ViewParent, unscheduleConsumeBatchedInput(); super.dispose(); } - - private void processUnbufferedRequest(InputEvent event) { - if (!(event instanceof MotionEvent)) { - return; - } - mUnbufferedInputDispatchBySource = - (event.getSource() & mUnbufferedInputSource) != SOURCE_CLASS_NONE; - if (mUnbufferedInputDispatchBySource && mConsumeBatchedInputScheduled) { - scheduleConsumeBatchedInputImmediately(); - } - } } WindowInputEventReceiver mInputEventReceiver; |
