diff options
| author | Michael Wright <michaelwr@google.com> | 2013-03-14 10:58:50 -0700 |
|---|---|---|
| committer | Michael Wright <michaelwr@google.com> | 2013-03-21 17:47:40 -0700 |
| commit | 95ae9429ee3555f4a1f396da423413ba496bdf33 (patch) | |
| tree | 36f66c84c905ef944c5dfe06f40b6470f72672ff /core/java/android/view/ViewRootImpl.java | |
| parent | 1edaff0709bc3558a6736eac7fccbe8350f2d158 (diff) | |
Add tracing for pending queue size
Change-Id: Ib31c2245feca31d0276ef1ebf6e6d237d0297671
Diffstat (limited to 'core/java/android/view/ViewRootImpl.java')
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 8808af04e21f..f06387ceab04 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -245,8 +245,10 @@ public final class ViewRootImpl implements ViewParent, // Input event queue. QueuedInputEvent mFirstPendingInputEvent; + int mPendingInputEventCount; QueuedInputEvent mCurrentInputEvent; boolean mProcessInputEventsScheduled; + String mPendingInputEventQueueLengthCounterName = "pq"; boolean mWindowAttributesChanged = false; int mWindowAttributesChangesFlag = 0; @@ -642,6 +644,8 @@ public final class ViewRootImpl implements ViewParent, if (view.getImportantForAccessibility() == View.IMPORTANT_FOR_ACCESSIBILITY_AUTO) { view.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_YES); } + + mPendingInputEventQueueLengthCounterName = "pq:" + attrs.getTitle(); } } } @@ -4427,6 +4431,9 @@ public final class ViewRootImpl implements ViewParent, } last.mNext = q; } + mPendingInputEventCount += 1; + Trace.traceCounter(Trace.TRACE_TAG_INPUT, mPendingInputEventQueueLengthCounterName, + mPendingInputEventCount); if (processImmediately) { doProcessInputEvents(); @@ -4451,6 +4458,10 @@ public final class ViewRootImpl implements ViewParent, q.mNext = null; mCurrentInputEvent = q; + mPendingInputEventCount -= 1; + Trace.traceCounter(Trace.TRACE_TAG_INPUT, mPendingInputEventQueueLengthCounterName, + mPendingInputEventCount); + final int result = deliverInputEvent(q); if (result != EVENT_IN_PROGRESS) { finishCurrentInputEvent(result == EVENT_HANDLED); |
