blob: 0fc7a3ed22a1815c884e57d5cd5c557ed614f73f [file] [log] [blame]
Gina Dimino7fb86e22015-03-17 13:28:38 -07001page.title=Dumpsys Input Diagnostics
2@jd:body
3
4<!--
5 Copyright 2015 The Android Open Source Project
6
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
10
11 http://www.apache.org/licenses/LICENSE-2.0
12
13 Unless required by applicable law or agreed to in writing, software
14 distributed under the License is distributed on an "AS IS" BASIS,
15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 See the License for the specific language governing permissions and
17 limitations under the License.
18-->
19<div id="qv-wrapper">
20 <div id="qv">
21 <h2>In this document</h2>
22 <ol id="auto-toc">
23 </ol>
24 </div>
25</div>
26
27<p>The <code>dumpsys</code> input command dumps the state of the
28system’s input devices, such as keyboards and touchscreens, and the
29processing of input events.</p>
30
31<h2 id="input">Input</h2>
32<p>To dump the input system’s state, run the following command:</p>
33<pre>
34$ adb shell dumpsys input
35</pre>
36
37<h2 id="output">Output</h2>
38
39<p>The set of information reported varies depending on the version of Android
40but consists of three sections:</p>
41
42<ul>
43 <li> Event Hub State
44 <li> Input Reader State
45 <li> Input Dispatcher State
46</ul>
47
48<h3 id="event_hub_state">Event Hub State</h3>
49
50<pre><code>
51INPUT MANAGER (dumpsys input)
52
53Event Hub State:
54 BuiltInKeyboardId: -2
55 Devices:
56 -1: Virtual
57 Classes: 0x40000023
58 Path: <virtual>
59 Descriptor: a718a782d34bc767f4689c232d64d527998ea7fd
60 Location:
61 ControllerNumber: 0
62 UniqueId: <virtual>
63 Identifier: bus=0x0000, vendor=0x0000, product=0x0000, version=0x0000
64 KeyLayoutFile: /system/usr/keylayout/Generic.kl
65 KeyCharacterMapFile: /system/usr/keychars/Virtual.kcm
66 ConfigurationFile:
67 HaveKeyboardLayoutOverlay: false
68 1: msm8974-taiko-mtp-snd-card Headset Jack
69 Classes: 0x00000080
70 Path: /dev/input/event5
71 Descriptor: c8e3782483b4837ead6602e20483c46ff801112c
72 Location: ALSA
73 ControllerNumber: 0
74 UniqueId:
75 Identifier: bus=0x0000, vendor=0x0000, product=0x0000, version=0x0000
76 KeyLayoutFile:
77 KeyCharacterMapFile:
78 ConfigurationFile:
79 HaveKeyboardLayoutOverlay: false
80 2: msm8974-taiko-mtp-snd-card Button Jack
81 Classes: 0x00000001
82 Path: /dev/input/event4
83 Descriptor: 96fe62b244c555351ec576b282232e787fb42bab
84 Location: ALSA
85 ControllerNumber: 0
86 UniqueId:
87 Identifier: bus=0x0000, vendor=0x0000, product=0x0000, version=0x0000
88 KeyLayoutFile: /system/usr/keylayout/msm8974-taiko-mtp-snd-card_Button_Jack.kl
89 KeyCharacterMapFile: /system/usr/keychars/msm8974-taiko-mtp-snd-card_Button_Jack.kcm
90 ConfigurationFile:
91 HaveKeyboardLayoutOverlay: false
92 3: hs_detect
93 Classes: 0x00000081
94 Path: /dev/input/event3
95 Descriptor: 485d69228e24f5e46da1598745890b214130dbc4
96 Location:
97 ControllerNumber: 0
98 UniqueId:
99 Identifier: bus=0x0000, vendor=0x0001, product=0x0001, version=0x0001
100 KeyLayoutFile: /system/usr/keylayout/hs_detect.kl
101 KeyCharacterMapFile: /system/usr/keychars/hs_detect.kcm
102 ConfigurationFile:
103 HaveKeyboardLayoutOverlay: false
104 4: touch_dev
105 Classes: 0x00000014
106 Path: /dev/input/event1
107 Descriptor: 4e2720e99bd2b59adae8529881343531fff7c98e
108 Location:
109 ControllerNumber: 0
110 UniqueId:
111 Identifier: bus=0x0000, vendor=0x0000, product=0x0000, version=0x0000
112 KeyLayoutFile:
113 KeyCharacterMapFile:
114 ConfigurationFile: /system/usr/idc/touch_dev.idc
115 HaveKeyboardLayoutOverlay: false
116 5: qpnp_pon
117 Classes: 0x00000001
118 Path: /dev/input/event0
119 Descriptor: fb60d4f4370f5dbe8267b63d38dea852987571ab
120 Location: qpnp_pon/input0
121 ControllerNumber: 0
122 UniqueId:
123 Identifier: bus=0x0000, vendor=0x0000, product=0x0000, version=0x0000
124 KeyLayoutFile: /system/usr/keylayout/qpnp_pon.kl
125 KeyCharacterMapFile: /system/usr/keychars/qpnp_pon.kcm
126 ConfigurationFile:
127 HaveKeyboardLayoutOverlay: false
128 6: gpio-keys
129 Classes: 0x00000081
130 Path: /dev/input/event2
131 Descriptor: d2c52ff0f656fac4cd7b7a118d575e0109a9fe1c
132 Location: gpio-keys/input0
133 ControllerNumber: 0
134 UniqueId:
135 Identifier: bus=0x0019, vendor=0x0001, product=0x0001, version=0x0100
136 KeyLayoutFile: /system/usr/keylayout/gpio-keys.kl
137 KeyCharacterMapFile: /system/usr/keychars/gpio-keys.kcm
138 ConfigurationFile:
139 HaveKeyboardLayoutOverlay: false
140</code></pre>
141
142<h4 id="things-to-look-for">Things to check</h4>
143
144<ul>
145 <li> All of the expected input devices are present.</li>
146
147 <li> Each input device has an appropriate key layout file, key character map
148 file and input device configuration file. If the files are missing or contain
149 syntax errors, then they will not be loaded.</li>
150
151 <li> Each input device is being classified correctly. The bits in the
152 <code>Classes</code> field correspond to flags in <code>EventHub.h</code> such
153 as <code>INPUT_DEVICE_CLASS_TOUCH_MT</code>.</li>
154
155 <li> The <code>BuiltInKeyboardId</code> is correct. If the device does not
156 have a built-in keyboard, then the id must be <code>-2</code>, otherwise it
157 should be the id of the built-in keyboard.</li>
158
159 <li>If you observe that the <code>BuiltInKeyboardId</code> is not
160 <code>-2</code> but it should be, then you are missing a key character map file
161 for a special function keypad somewhere. Special function keypad devices
162 should have key character map files that contain just the line <code>type
163 SPECIAL_FUNCTION</code> (that's what in the <code>tuna-gpio-keykad.kcm</code>
164 file we see mentioned above).</li>
165</ul>
166
167<h3 id="input-reader-state">Input Reader State</h3>
168<p>The <code>InputReader</code> is responsible for decoding input events from the kernel.
169Its state dump shows information about how each input device is configured
170and recent state changes that have occurred, such as key presses or touches on
171the touch screen.</p>
172
173<p>As an example, this is what a special function keypad looks like:</p>
174
175<pre>
176Input Reader State
177...
178 Device 3: tuna-gpio-keypad
179 IsExternal: false
180 Sources: 0x00000101
181 KeyboardType: 1
182 Keyboard Input Mapper:
183 Parameters:
184 AssociatedDisplayId: -1
185 OrientationAware: false
186 KeyboardType: 1
187 Orientation: 0
188 KeyDowns: 0 keys currently down
189 MetaState: 0x0
190 DownTime: 75816923828000
191</pre>
192
193<p>Here is a touch screen. Notice all of the information about the resolution of
194the device and the calibration parameters that were used.</p>
195
196<pre>
197Input Reader State
198...
199 Device 6: Melfas MMSxxx Touchscreen
200 IsExternal: false
201 Sources: 0x00001002
202 KeyboardType: 0
203 Motion Ranges:
204 X: source=0x00001002, min=0.000, max=719.001, flat=0.000, fuzz=0.999
205 Y: source=0x00001002, min=0.000, max=1279.001, flat=0.000, fuzz=0.999
206 PRESSURE: source=0x00001002, min=0.000, max=1.000, flat=0.000, fuzz=0.000
207 SIZE: source=0x00001002, min=0.000, max=1.000, flat=0.000, fuzz=0.000
208 TOUCH_MAJOR: source=0x00001002, min=0.000, max=1468.605, flat=0.000, fuzz=0.000
209 TOUCH_MINOR: source=0x00001002, min=0.000, max=1468.605, flat=0.000, fuzz=0.000
210 TOOL_MAJOR: source=0x00001002, min=0.000, max=1468.605, flat=0.000, fuzz=0.000
211 TOOL_MINOR: source=0x00001002, min=0.000, max=1468.605, flat=0.000, fuzz=0.000
212 Touch Input Mapper:
213 Parameters:
214 GestureMode: spots
215 DeviceType: touchScreen
216 AssociatedDisplay: id=0, isExternal=false
217 OrientationAware: true
218 Raw Touch Axes:
219 X: min=0, max=720, flat=0, fuzz=0, resolution=0
220 Y: min=0, max=1280, flat=0, fuzz=0, resolution=0
221 Pressure: min=0, max=255, flat=0, fuzz=0, resolution=0
222 TouchMajor: min=0, max=30, flat=0, fuzz=0, resolution=0
223 TouchMinor: unknown range
224 ToolMajor: unknown range
225 ToolMinor: unknown range
226 Orientation: unknown range
227 Distance: unknown range
228 TiltX: unknown range
229 TiltY: unknown range
230 TrackingId: min=0, max=65535, flat=0, fuzz=0, resolution=0
231 Slot: min=0, max=9, flat=0, fuzz=0, resolution=0
232 Calibration:
233 touch.size.calibration: diameter
234 touch.size.scale: 10.000
235 touch.size.bias: 0.000
236 touch.size.isSummed: false
237 touch.pressure.calibration: amplitude
238 touch.pressure.scale: 0.005
239 touch.orientation.calibration: none
240 touch.distance.calibration: none
241 SurfaceWidth: 720px
242 SurfaceHeight: 1280px
243 SurfaceOrientation: 0
244 Translation and Scaling Factors:
245 XScale: 0.999
246 YScale: 0.999
247 XPrecision: 1.001
248 YPrecision: 1.001
249 GeometricScale: 0.999
250 PressureScale: 0.005
251 SizeScale: 0.033
252 OrientationCenter: 0.000
253 OrientationScale: 0.000
254 DistanceScale: 0.000
255 HaveTilt: false
256 TiltXCenter: 0.000
257 TiltXScale: 0.000
258 TiltYCenter: 0.000
259 TiltYScale: 0.000
260 Last Button State: 0x00000000
261 Last Raw Touch: pointerCount=0
262 Last Cooked Touch: pointerCount=0
263</pre>
264
265<p>Here is an external keyboard / mouse combo HID device. (This device doesn't actually
266have a mouse but its HID descriptor says it does.)</p>
267
268<pre><code> Device 7: Motorola Bluetooth Wireless Keyboard
269 IsExternal: true
270 Sources: 0x00002103
271 KeyboardType: 2
272 Motion Ranges:
273 X: source=0x00002002, min=0.000, max=719.000, flat=0.000, fuzz=0.000
274 Y: source=0x00002002, min=0.000, max=1279.000, flat=0.000, fuzz=0.000
275 PRESSURE: source=0x00002002, min=0.000, max=1.000, flat=0.000, fuzz=0.000
276 VSCROLL: source=0x00002002, min=-1.000, max=1.000, flat=0.000, fuzz=0.000
277 Keyboard Input Mapper:
278 Parameters:
279 AssociatedDisplayId: -1
280 OrientationAware: false
281 KeyboardType: 2
282 Orientation: 0
283 KeyDowns: 0 keys currently down
284 MetaState: 0x0
285 DownTime: 75868832946000
286 Cursor Input Mapper:
287 Parameters:
288 AssociatedDisplayId: 0
289 Mode: pointer
290 OrientationAware: false
291 XScale: 1.000
292 YScale: 1.000
293 XPrecision: 1.000
294 YPrecision: 1.000
295 HaveVWheel: true
296 HaveHWheel: false
297 VWheelScale: 1.000
298 HWheelScale: 1.000
299 Orientation: 0
300 ButtonState: 0x00000000
301 Down: false
302 DownTime: 0
303</code></pre>
304<p>Here is a joystick. Notice how all of the axes have been scaled to a normalized
305range. The axis mapping can be configured using key layout files.</p>
306<pre><code>Device 18: Logitech Logitech Cordless RumblePad 2
307 IsExternal: true
308 Sources: 0x01000511
309 KeyboardType: 1
310 Motion Ranges:
311 X: source=0x01000010, min=-1.000, max=1.000, flat=0.118, fuzz=0.000
312 Y: source=0x01000010, min=-1.000, max=1.000, flat=0.118, fuzz=0.000
313 Z: source=0x01000010, min=-1.000, max=1.000, flat=0.118, fuzz=0.000
314 RZ: source=0x01000010, min=-1.000, max=1.000, flat=0.118, fuzz=0.000
315 HAT_X: source=0x01000010, min=-1.000, max=1.000, flat=0.000, fuzz=0.000
316 HAT_Y: source=0x01000010, min=-1.000, max=1.000, flat=0.000, fuzz=0.000
317 Keyboard Input Mapper:
318 Parameters:
319 AssociatedDisplayId: -1
320 OrientationAware: false
321 KeyboardType: 1
322 Orientation: 0
323 KeyDowns: 0 keys currently down
324 MetaState: 0x0
325 DownTime: 675270841000
326 Joystick Input Mapper:
327 Axes:
328 X: min=-1.00000, max=1.00000, flat=0.11765, fuzz=0.00000
329 scale=0.00784, offset=-1.00000, highScale=0.00784, highOffset=-1.00000
330 rawAxis=0, rawMin=0, rawMax=255, rawFlat=15, rawFuzz=0, rawResolution=0
331 Y: min=-1.00000, max=1.00000, flat=0.11765, fuzz=0.00000
332 scale=0.00784, offset=-1.00000, highScale=0.00784, highOffset=-1.00000
333 rawAxis=1, rawMin=0, rawMax=255, rawFlat=15, rawFuzz=0, rawResolution=0
334 Z: min=-1.00000, max=1.00000, flat=0.11765, fuzz=0.00000
335 scale=0.00784, offset=-1.00000, highScale=0.00784, highOffset=-1.00000
336 rawAxis=2, rawMin=0, rawMax=255, rawFlat=15, rawFuzz=0, rawResolution=0
337 RZ: min=-1.00000, max=1.00000, flat=0.11765, fuzz=0.00000
338 scale=0.00784, offset=-1.00000, highScale=0.00784, highOffset=-1.00000
339 rawAxis=5, rawMin=0, rawMax=255, rawFlat=15, rawFuzz=0, rawResolution=0
340 HAT_X: min=-1.00000, max=1.00000, flat=0.00000, fuzz=0.00000
341 scale=1.00000, offset=0.00000, highScale=1.00000, highOffset=0.00000
342 rawAxis=16, rawMin=-1, rawMax=1, rawFlat=0, rawFuzz=0, rawResolution=0
343 HAT_Y: min=-1.00000, max=1.00000, flat=0.00000, fuzz=0.00000
344 scale=1.00000, offset=0.00000, highScale=1.00000, highOffset=0.00000
345 rawAxis=17, rawMin=-1, rawMax=1, rawFlat=0, rawFuzz=0, rawResolution=0
346</code></pre>
347<p>At the end of the input reader dump there is some information about global configuration
348parameters such as the mouse pointer speed.</p>
349<pre><code> Configuration:
350 ExcludedDeviceNames: []
351 VirtualKeyQuietTime: 0.0ms
352 PointerVelocityControlParameters: scale=1.000, lowThreshold=500.000, highThreshold=3000.000, acceleration=3.000
353 WheelVelocityControlParameters: scale=1.000, lowThreshold=15.000, highThreshold=50.000, acceleration=4.000
354 PointerGesture:
355 Enabled: true
356 QuietInterval: 100.0ms
357 DragMinSwitchSpeed: 50.0px/s
358 TapInterval: 150.0ms
359 TapDragInterval: 300.0ms
360 TapSlop: 20.0px
361 MultitouchSettleInterval: 100.0ms
362 MultitouchMinDistance: 15.0px
363 SwipeTransitionAngleCosine: 0.3
364 SwipeMaxWidthRatio: 0.2
365 MovementSpeedRatio: 0.8
366 ZoomSpeedRatio: 0.3
367</code></pre>
368<h4 id="things-to-look-for_1">Things To Look For</h4>
369<ol>
370<li>
371<p>All of the expected input devices are present.</p>
372</li>
373<li>
374<p>Each input device has been configured appropriately. Especially check the
375 touch screen and joystick axes.</p>
376</li>
377</ol>
378<h3 id="input-dispatcher-state">Input Dispatcher State</h3>
379<p>The <code>InputDispatcher</code> is responsible for sending input events to applications.
380Its state dump shows information about which window is being touched, the
381state of the input queue, whether an ANR is in progress, and so on.</p>
382<pre>
383Input Dispatcher State:
384 DispatchEnabled: 1
385 DispatchFrozen: 0
386 FocusedApplication: &lt;null&gt;
387 FocusedWindow: name='Window{3fb06dc3 u0 StatusBar}'
388 TouchStates: &lt;no displays touched&gt;
389 Windows:
390 0: name='Window{357bbbfe u0 SearchPanel}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x01820100, type=0x000007e8, layer=211000, frame=[0,0][1080,1920], scale=1.000000, touchableRegion=[0,0][1080,1920], inputFeatures=0x00000000, ownerPid=22674, ownerUid=10020, dispatchingTimeout=5000.000ms
391 1: name='Window{3b14c0ca u0 NavigationBar}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x01840068, type=0x000007e3, layer=201000, frame=[0,1776][1080,1920], scale=1.000000, touchableRegion=[0,1776][1080,1920], inputFeatures=0x00000000, ownerPid=22674, ownerUid=10020, dispatchingTimeout=5000.000ms
392 2: name='Window{2c7e849c u0 com.vito.lux}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=true, canReceiveKeys=false, flags=0x0089031a, type=0x000007d6, layer=191000, frame=[-495,-147][1575,1923], scale=1.000000, touchableRegion=[-495,-147][1575,1923], inputFeatures=0x00000000, ownerPid=4697, ownerUid=10084, dispatchingTimeout=5000.000ms
393 3: name='Window{31c9f22 u0 Heads Up}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x01820328, type=0x000007de, layer=161000, frame=[0,0][1794,750], scale=1.000000, touchableRegion=[0,0][1794,192], inputFeatures=0x00000000, ownerPid=22674, ownerUid=10020, dispatchingTimeout=5000.000ms
394 4: name='Window{3fb06dc3 u0 StatusBar}', displayId=0, paused=false, hasFocus=true, hasWallpaper=false, visible=true, canReceiveKeys=true, flags=0x81960040, type=0x000007d0, layer=151000, frame=[0,0][1080,1920], scale=1.000000, touchableRegion=[0,0][1080,1920], inputFeatures=0x00000004, ownerPid=22674, ownerUid=10020, dispatchingTimeout=5000.000ms
395 5: name='Window{278c1d65 u0 KeyguardScrim}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x01110900, type=0x000007ed, layer=131000, frame=[0,0][1080,1776], scale=1.000000, touchableRegion=[0,0][1080,1776], inputFeatures=0x00000000, ownerPid=745, ownerUid=1000, dispatchingTimeout=5000.000ms
396 6: name='Window{869f213 u0 com.android.systemui.ImageWallpaper}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=true, canReceiveKeys=false, flags=0x00000318, type=0x000007dd, layer=21025, frame=[0,0][2328,1920], scale=1.000000, touchableRegion=[0,0][2328,1920], inputFeatures=0x00000000, ownerPid=22674, ownerUid=10020, dispatchingTimeout=5000.000ms
397 7: name='Window{16ab6320 u0 InputMethod}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x01800108, type=0x000007db, layer=21020, frame=[0,75][1080,1920], scale=1.000000, touchableRegion=[0,986][1080,1920], inputFeatures=0x00000000, ownerPid=8409, ownerUid=10056, dispatchingTimeout=5000.000ms
398 8: name='Window{cf4ff0b u0 com.google.android.googlequicksearchbox/com.google.android.launcher.GEL}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x81910120, type=0x00000001, layer=21015, frame=[0,0][1080,1920], scale=1.000000, touchableRegion=[0,0][1080,1920], inputFeatures=0x00000000, ownerPid=14722, ownerUid=10022, dispatchingTimeout=5000.000ms
399 9: name='Window{1a7be08a u0 com.android.systemui/com.android.systemui.recents.RecentsActivity EXITING}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x81910120, type=0x00000001, layer=21010, frame=[0,0][1080,1920], scale=1.000000, touchableRegion=[0,0][1080,1920], inputFeatures=0x00000000, ownerPid=22674, ownerUid=10020, dispatchingTimeout=5000.000ms
400 10: name='Window{2280455f u0 com.google.android.gm/com.google.android.gm.ConversationListActivityGmail}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x81810120, type=0x00000001, layer=21005, frame=[0,0][1080,1920], scale=1.000000, touchableRegion=[0,0][1080,1920], inputFeatures=0x00000000, ownerPid=9897, ownerUid=10070, dispatchingTimeout=5000.000ms
401 11: name='Window{657fee5 u0 com.mobilityware.freecell/com.mobilityware.freecell.FreeCell}', displayId=0, paused=false, hasFocus=false, hasWallpaper=false, visible=false, canReceiveKeys=false, flags=0x01810520, type=0x00000001, layer=21000, frame=[0,0][1080,1776], scale=1.000000, touchableRegion=[0,0][1080,1920], inputFeatures=0x00000000, ownerPid=3189, ownerUid=10085, dispatchingTimeout=5000.000ms
402 MonitoringChannels:
403 0: 'WindowManager (server)'
404 RecentQueue: length=10
405 MotionEvent(deviceId=4, source=0x00001002, action=2, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (335.0, 1465.0)]), policyFlags=0x62000000, age=217264.0ms
406 MotionEvent(deviceId=4, source=0x00001002, action=1, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (335.0, 1465.0)]), policyFlags=0x62000000, age=217255.7ms
407 MotionEvent(deviceId=4, source=0x00001002, action=0, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (330.0, 1283.0)]), policyFlags=0x62000000, age=216805.0ms
408 MotionEvent(deviceId=4, source=0x00001002, action=2, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (330.0, 1287.0)]), policyFlags=0x62000000, age=216788.3ms
409 MotionEvent(deviceId=4, source=0x00001002, action=2, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (331.0, 1297.0)]), policyFlags=0x62000000, age=216780.0ms
410 MotionEvent(deviceId=4, source=0x00001002, action=2, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (332.0, 1316.0)]), policyFlags=0x62000000, age=216771.6ms
411 MotionEvent(deviceId=4, source=0x00001002, action=2, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (333.0, 1340.0)]), policyFlags=0x62000000, age=216763.3ms
412 MotionEvent(deviceId=4, source=0x00001002, action=2, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (333.0, 1362.0)]), policyFlags=0x62000000, age=216755.0ms
413 MotionEvent(deviceId=4, source=0x00001002, action=2, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (332.0, 1384.0)]), policyFlags=0x62000000, age=216747.2ms
414 MotionEvent(deviceId=4, source=0x00001002, action=1, flags=0x00000000, metaState=0x00000000, buttonState=0x00000000, edgeFlags=0x00000000, xPrecision=1.0, yPrecision=1.0, displayId=0, pointers=[0: (332.0, 1384.0)]), policyFlags=0x62000000, age=216738.9ms
415 PendingEvent: &lt;none&gt;
416 InboundQueue: &lt;empty&gt;
417 ReplacedKeys: &lt;empty&gt;
418 Connections:
419 0: channelName='WindowManager (server)', windowName='monitor', status=NORMAL, monitor=true, inputPublisherBlocked=false
420 OutboundQueue: &lt;empty&gt;
421 WaitQueue: &lt;empty&gt;
422 1: channelName='278c1d65 KeyguardScrim (server)', windowName='Window{278c1d65 u0 KeyguardScrim}', status=NORMAL, monitor=false, inputPublisherBlocked=false
423 OutboundQueue: &lt;empty&gt;
424 WaitQueue: &lt;empty&gt;
425 2: channelName='357bbbfe SearchPanel (server)', windowName='Window{357bbbfe u0 SearchPanel}', status=NORMAL, monitor=false, inputPublisherBlocked=false
426 OutboundQueue: &lt;empty&gt;
427 WaitQueue: &lt;empty&gt;
428 3: channelName='869f213 com.android.systemui.ImageWallpaper (server)', windowName='Window{869f213 u0 com.android.systemui.ImageWallpaper}', status=NORMAL, monitor=false, inputPublisherBlocked=false
429 OutboundQueue: &lt;empty&gt;
430 WaitQueue: &lt;empty&gt;
431 4: channelName='3fb06dc3 StatusBar (server)', windowName='Window{3fb06dc3 u0 StatusBar}', status=NORMAL, monitor=false, inputPublisherBlocked=false
432 OutboundQueue: &lt;empty&gt;
433 WaitQueue: &lt;empty&gt;
434 5: channelName='2c7e849c (server)', windowName='Window{2c7e849c u0 com.vito.lux}', status=NORMAL, monitor=false, inputPublisherBlocked=false
435 OutboundQueue: &lt;empty&gt;
436 WaitQueue: &lt;empty&gt;
437 6: channelName='cf4ff0b com.google.android.googlequicksearchbox/com.google.android.launcher.GEL (server)', windowName='Window{cf4ff0b
438u0 com.google.android.googlequicksearchbox/com.google.android.launcher.GEL}', status=NORMAL, monitor=false, inputPublisherBlocked=false
439 OutboundQueue: &lt;empty&gt;
440 WaitQueue: &lt;empty&gt;
441 7: channelName='2280455f com.google.android.gm/com.google.android.gm.ConversationListActivityGmail (server)', windowName='Window{2280455f u0 com.google.android.gm/com.google.android.gm.ConversationListActivityGmail}', status=NORMAL, monitor=false, inputPublisherBlocked=false
442 OutboundQueue: &lt;empty&gt;
443 WaitQueue: &lt;empty&gt;
444 8: channelName='1a7be08a com.android.systemui/com.android.systemui.recents.RecentsActivity (server)', windowName='Window{1a7be08a u0 com.android.systemui/com.android.systemui.recents.RecentsActivity EXITING}', status=NORMAL, monitor=false, inputPublisherBlocked=false
445 OutboundQueue: &lt;empty&gt;
446 WaitQueue: &lt;empty&gt;
447 9: channelName='3b14c0ca NavigationBar (server)', windowName='Window{3b14c0ca u0 NavigationBar}', status=NORMAL, monitor=false, inputPublisherBlocked=false
448 OutboundQueue: &lt;empty&gt;
449 WaitQueue: &lt;empty&gt;
450 10: channelName='16ab6320 InputMethod (server)', windowName='Window{16ab6320 u0 InputMethod}', status=NORMAL, monitor=false, inputPublisherBlocked=false
451 OutboundQueue: &lt;empty&gt;
452 WaitQueue: &lt;empty&gt;
453 11: channelName='657fee5 com.mobilityware.freecell/com.mobilityware.freecell.FreeCell (server)', windowName='Window{657fee5 u0 com.mobilityware.freecell/com.mobilityware.freecell.FreeCell}', status=NORMAL, monitor=false, inputPublisherBlocked=false
454 OutboundQueue: &lt;empty&gt;
455 WaitQueue: &lt;empty&gt;
456 12: channelName='31c9f22 Heads Up (server)', windowName='Window{31c9f22 u0 Heads Up}', status=NORMAL, monitor=false, inputPublisherBlocked=false
457 OutboundQueue: &lt;empty&gt;
458 WaitQueue: &lt;empty&gt;
459 AppSwitch: not pending
460 7: channelName='2280455f com.google.android.gm/com.google.android.gm.ConversationListActivityGmail (server)', windowName='Window{2280455f u0 com.google.android.gm/com.google.android.gm.ConversationListActivityGmail}', status=NORMAL, monitor=false, inputPublisherBlocked=false
461 OutboundQueue: &lt;empty&gt;
462 WaitQueue: &lt;empty&gt;
463 8: channelName='1a7be08a com.android.systemui/com.android.systemui.recents.RecentsActivity (server)', windowName='Window{1a7be08a u0 com.android.systemui/com.android.systemui.recents.RecentsActivity EXITING}', status=NORMAL, monitor=false, inputPublisherBlocked=false
464 OutboundQueue: &lt;empty&gt;
465 WaitQueue: &lt;empty&gt;
466 9: channelName='3b14c0ca NavigationBar (server)', windowName='Window{3b14c0ca u0 NavigationBar}', status=NORMAL, monitor=false, inputPublisherBlocked=false
467 OutboundQueue: &lt;empty&gt;
468 WaitQueue: &lt;empty&gt;
469 10: channelName='16ab6320 InputMethod (server)', windowName='Window{16ab6320 u0 InputMethod}', status=NORMAL, monitor=false, inputPublisherBlocked=false
470 OutboundQueue: &lt;empty&gt;
471 WaitQueue: &lt;empty&gt;
472 11: channelName='657fee5 com.mobilityware.freecell/com.mobilityware.freecell.FreeCell (server)', windowName='Window{657fee5 u0 com.mobilityware.freecell/com.mobilityware.freecell.FreeCell}', status=NORMAL, monitor=false, inputPublisherBlocked=false
473 OutboundQueue: &lt;empty&gt;
474 WaitQueue: &lt;empty&gt;
475 12: channelName='31c9f22 Heads Up (server)', windowName='Window{31c9f22 u0 Heads Up}', status=NORMAL, monitor=false, inputPublisherBlocked=false
476 OutboundQueue: &lt;empty&gt;
477 WaitQueue: &lt;empty&gt;
478 AppSwitch: not pending
479 Configuration:
480 KeyRepeatDelay: 50.0ms
481 KeyRepeatTimeout: 500.0ms
482</pre>
483<h4 id="things-to-look-for_2">Things To Look For</h4>
484<ol>
485 <li> In general, all input events are being processed as expected. </li>
486 <li> If you touch the touch screen and run dumpsys at the same time,
487 then the <code>TouchStates</code> line should show the window that
488 you are touching. </li>
489</ol>
490