summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Wright <michaelwr@google.com>2014-02-18 22:50:50 -0800
committerMichael Wright <michaelwr@google.com>2014-02-19 19:11:21 -0800
commitd2c3adc9c95683d70d1ce798447a86131602b80b (patch)
treebd0823a10d19937753e4b33310f5471eea08af0f
parentfde7865c16599f617de08001dbc0ce7d8be6da30 (diff)
downloadframeworks_base-d2c3adc9c95683d70d1ce798447a86131602b80b.zip
frameworks_base-d2c3adc9c95683d70d1ce798447a86131602b80b.tar.gz
frameworks_base-d2c3adc9c95683d70d1ce798447a86131602b80b.tar.bz2
Make deliverInputEvent tracing asynchronous
Change-Id: I640ed4003194d6d4b202680e5c8fffc81749d60f
-rw-r--r--core/java/android/view/ViewRootImpl.java25
1 files changed, 12 insertions, 13 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index 11030d9..fe44e9c 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -5532,24 +5532,23 @@ public final class ViewRootImpl implements ViewParent,
}
private void deliverInputEvent(QueuedInputEvent q) {
- Trace.traceBegin(Trace.TRACE_TAG_VIEW, "deliverInputEvent");
- try {
- if (mInputEventConsistencyVerifier != null) {
- mInputEventConsistencyVerifier.onInputEvent(q.mEvent, 0);
- }
+ Trace.asyncTraceBegin(Trace.TRACE_TAG_VIEW, "deliverInputEvent",
+ q.mEvent.getSequenceNumber());
+ if (mInputEventConsistencyVerifier != null) {
+ mInputEventConsistencyVerifier.onInputEvent(q.mEvent, 0);
+ }
- InputStage stage = q.shouldSkipIme() ? mFirstPostImeInputStage : mFirstInputStage;
- if (stage != null) {
- stage.deliver(q);
- } else {
- finishInputEvent(q);
- }
- } finally {
- Trace.traceEnd(Trace.TRACE_TAG_VIEW);
+ InputStage stage = q.shouldSkipIme() ? mFirstPostImeInputStage : mFirstInputStage;
+ if (stage != null) {
+ stage.deliver(q);
+ } else {
+ finishInputEvent(q);
}
}
private void finishInputEvent(QueuedInputEvent q) {
+ Trace.asyncTraceEnd(Trace.TRACE_TAG_VIEW, "deliverInputEvent",
+ q.mEvent.getSequenceNumber());
if (q.mReceiver != null) {
boolean handled = (q.mFlags & QueuedInputEvent.FLAG_FINISHED_HANDLED) != 0;
q.mReceiver.finishInputEvent(q.mEvent, handled);