ac6c78b6eef49f5c1ab2a346d90ccb99ccec18f4 |
|
17-Jul-2013 |
Michael Wright <michaelwr@google.com> |
Add controller numbers for gamepads / joysticks Change-Id: I30ac9add6a2473a5ebd83a022c571545e61d1136
/frameworks/base/services/input/EventHub.cpp
|
713412fd54aba940ff67ab804292a2033681df89 |
|
11-Jul-2013 |
Satoshi Kataoka <satok@google.com> |
am 7e0fad1d: am 8b95d259: am b7925f22: Merge "Revert "Stop marking gamepads as keyboards"" into jb-mr2-dev * commit '7e0fad1d442428b9a2ba5d88ce7f8a59869acb0e': Revert "Stop marking gamepads as keyboards"
|
b7925f2219480d4ddbb1c655b9b386ed031815a3 |
|
09-Jul-2013 |
Satoshi Kataoka <satok@google.com> |
Merge "Revert "Stop marking gamepads as keyboards"" into jb-mr2-dev
|
02a44f7d4715bf876aad6b420a0c7c1782965aa0 |
|
05-Jul-2013 |
Ken Wakasa <kwakasa@google.com> |
Revert "Stop marking gamepads as keyboards" This reverts commit 74c8fb601ef75d8e12df5221489c41c125e3b846. Change-Id: If8ca4d09b4d52f11d48dabebf2dff2984760cdc0 bug: 8896129
/frameworks/base/services/input/EventHub.cpp
|
9d3b1a424c5c61e24e9659d15fb353026a00d925 |
|
02-Jul-2013 |
Jeff Brown <jeffbrown@google.com> |
Move input library code to frameworks/native. No longer compile libandroidfw as a static library on the device since it already exists as a shared library. Keeping the static library would force us to provide a static library version of libinput for the device as well which doesn't make sense. Change-Id: I3517881b87b47dcc209d80dbd0ac6b5cf29a766f
/frameworks/base/services/input/EventHub.cpp
|
f7104136927f45e152cec3583463b8ef1570df7b |
|
10-Apr-2013 |
Michael Wright <michaelwr@google.com> |
Merge "Stop marking gamepads as keyboards" into jb-mr2-dev
|
4dac901f011e7c15882e260441225633a6435e49 |
|
10-Apr-2013 |
Jeff Brown <jeffbrown@google.com> |
Rewrite touch navigation dpad synthesis. The new implementation more accurately tracks the velocity of flings and takes care to avoid obvious discontinuities. The main goal is for a fling to appear to be a linear extension of the movement already in progress. The minimum fling velocity is set to ensure that flings appear to be fairly smooth despite being discretized. Use sequences of repeated key events instead of individual down/up events to represent continuous motions in one direction which can be helpful for stopping flings at boundaries such as when flinging the cursor position within a text view. Compute the movement thresholds based on the physical size of the touch pad, if known. If not known, we assume a nominal size. Support stopping flings with a tap just like we do for normal touch events elsewhere in the framework. Moved the detection of ASSIST swipes into the InputReader where it belongs. These swipes must be detected globally to ensure consistent behavior across the all applications. Added a custom protocol in EventHub to enable input device drivers to override the timestamp of the following events in a packet. This change enables input device drivers that have a better idea of when an input event was actually generated to pass this information to the input system. Particularly useful with uinput. Bug: 8583760 Change-Id: I8ef4e827804786d549cfaa00793a2b9dd0fda465
/frameworks/base/services/input/EventHub.cpp
|
74c8fb601ef75d8e12df5221489c41c125e3b846 |
|
09-Apr-2013 |
Michael Wright <michaelwr@google.com> |
Stop marking gamepads as keyboards Change-Id: I0ba49aa3235b2e0a50405cf6d68632e268fe4183
/frameworks/base/services/input/EventHub.cpp
|
a0a72850c255b69f8f37e7602215287947bf2432 |
|
22-Feb-2013 |
Michael Wright <michaelwr@google.com> |
Disable kernel keyrepeat Bug: 6332980 Change-Id: Ife69167285aad24ed3e4fa5b65abf59d8dfa4f0a
/frameworks/base/services/input/EventHub.cpp
|
f33b2b2b2483fa824c650b281159ca62e1d0123a |
|
06-Oct-2012 |
Jeff Brown <jeffbrown@google.com> |
Recover from bad input event timestamps from the kernel. This can happen due to a race when the input device is opened or if the kernel happens to be missing the required Android patches to set the timestamp correctly. Bug: 7291243 Change-Id: If4319440eaff2889147c86296abd39efc5664346
/frameworks/base/services/input/EventHub.cpp
|
25a465bb44497682fde84935100e0acf4a0eb5db |
|
16-May-2012 |
JP Abgrall <jpa@google.com> |
Revert "services: input events: enable debugging in EventHub (touch screen issues)" This reverts commit df0a89daa8018f9dec53d8d766e5a045347ffc93 Get rid of the debugging for the release.
/frameworks/base/services/input/EventHub.cpp
|
df0a89daa8018f9dec53d8d766e5a045347ffc93 |
|
09-May-2012 |
JP Abgrall <jpa@google.com> |
services: input events: enable debugging in EventHub (touch screen issues) Enable verbose logging, but limit the output of events to only those that are stale by more than 1ms. This does not overly pollute the logcat output. Bug: 6258051 Change-Id: I32012a379ca0e97c0834975482cd91f9eeb08907
/frameworks/base/services/input/EventHub.cpp
|
a75fe05b6e0728ada82cd18dc3ac1ae3a61a10fb |
|
02-May-2012 |
Jeff Brown <jeffbrown@google.com> |
Use EVIOCSCLOCKID correctly. Bug: 6382031 Change-Id: I87b0887ce867a79758bcd24e2202280270faaf8c
/frameworks/base/services/input/EventHub.cpp
|
61c08240585a6186b4bd879d87f238b3efc368f8 |
|
19-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Don't load keyboard layout overlay for virtual keyboard. Bug: 6110399 Change-Id: I07c85cf991790ed8766b097acc39295a8065a5ea
/frameworks/base/services/input/EventHub.cpp
|
4a3862f6b0a8971b6ab5b1c46735b28e7604d0db |
|
18-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Add Dvorak keyboard layout. Added support for mapping both scan codes and HID usages to KeyLayoutMap and KeyCharacterMap. Keyboard overlays can now influence how key events are mapped to key codes. Bug: 6110399 Change-Id: I6619fd2d3e1337c55928f89869dbc45b535c7ccf
/frameworks/base/services/input/EventHub.cpp
|
6ec6f79e1ac1714e3b837796e99f07ff88f66601 |
|
18-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Support loading keyboard layout overlays from resources. Added the concept of a keyboard layout overlay, which is a key character map file that has "type OVERLAY". Added support for loading keyboard layout overlays from resources dynamically. The layouts are reloaded whenever they are changed in the Settings application or an application is installed. This is somewhat more aggressive than necessary so we might want to optimize it later. Before system-ready, the input system uses just the generic keyboard layouts that are included on the device system image. After system-ready, it considers the user's selected keyboard layout overlay and attempts to load it as necessary. We need to wait until system-ready before doing this because we need to be in a state where it is safe to start applications or access their resources. Bug: 6110399 Change-Id: Iae0886d3356649b0d2440aa00910a888cedd8323
/frameworks/base/services/input/EventHub.cpp
|
a47425a13c19f95057df78b8bb65bb25657e8753 |
|
13-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Add support for input devices that have vibrators. Added a getVibrator() method to InputDevice which returns a Vibrator associated with that input device. Its uses the same API as the system vibrator which makes it easy for applications to be modified to use one or the other. Bug: 6334179 Change-Id: Ifc7f13dbcb778670f3f1c07ccc562334e6109d2e
/frameworks/base/services/input/EventHub.cpp
|
af9e8d38184c6ba4d2d3eb5bde7014a66dd8a78b |
|
13-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Notify applications when input devices change. This change allows the InputManager to keep track of what input devices are registered with the system and when they change. It needs to do this so that it can properly clear its cache of input device properties (especially the key map!) when changes occur. Added new API so that applications can register listeners for input device changes. Fixed a minor bug in EventHub where it didn't handle EPOLLHUP properly so it would spam the log about unsupposed epoll events until inotify noticed that the device was gone and removed it. Change-Id: I937d8c601f7185d4299038bce6a2934fe4fdd2b3
/frameworks/base/services/input/EventHub.cpp
|
49ccac530b5a798e3c4a79b66b51b8546a0deed1 |
|
12-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor key code mapping. Added handling for EV_MSC / MSC_SCAN which typically reports the HID usage associated with a key. This will enable key maps to map keys with HID usages that Linux does not natively recognize. Removed keyCode and flags fields from EventHub RawEvent since they don't necessarily make sense in isolation now that we pay attention to HID usage codes too. Removed the fallback code for mapping keys and axes. In practice, an input device should be self-sufficient. We should not ever need to look at the built-in keyboard's key map. In fact, there usually isn't a built-in keyboard anyhow. This code was originally working around a problem where we weren't loading the key map for touch screens with virtual keys, which has long since been fixed. Change-Id: I0a319bdec44be9514f795526347397e94d53a127
/frameworks/base/services/input/EventHub.cpp
|
9f25b7fdf216c9ef0bd2322cd223eeaf0d60f77f |
|
10-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Request key maps from input manager service. Instead of each application loading the KeyCharacterMap from the file system, get them from the input manager service as part of the InputDevice object. Refactored InputManager to be a proper singleton instead of having a bunch of static methods. InputManager now maintains a cache of all InputDevice objects that it has loaded. Currently we never invalidate the cache which can cause InputDevice to return stale motion ranges if the device is reconfigured. This will be fixed in a future change. Added a fake InputDevice with ID -1 to represent the virtual keyboard. Change-Id: If7a695839ad0972317a5aab89e9d1e42ace28eb7
/frameworks/base/services/input/EventHub.cpp
|
eca3cf58c096d5a4ba4ae80318f72266c21a9a6d |
|
07-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Use new EVIOCSCLOCKID ioctl if supported. Bug: 6292993 Change-Id: I718f167c2cd41298ed54847dbc5de872cd4c7e4a
/frameworks/base/services/input/EventHub.cpp
|
e38fdfae9196afd1bdc14c5ec6c12793af1e2550 |
|
06-Apr-2012 |
Jeff Brown <jeffbrown@google.com> |
Add a unique input device descriptor. The purpose of the input device descriptor is to make it possible to associate persistent settings for each input device, such as the keyboard layout. The descriptor is a hash of the information we have about the device, such as its vendor id, product id, unique id, name, or location. Bug: 6110399 Change-Id: Idb80f946819b3f0dbf4e661bb0a753dbc2b60981
/frameworks/base/services/input/EventHub.cpp
|
b93a03f841d93498bfea6cc92a22faa34bce1337 |
|
18-Feb-2012 |
Mathias Agopian <mathias@google.com> |
frameworks/base refactoring. First step. Move libui includes to their new home: androidfw. Change-Id: Ic042b52fdba72f30edc3cc6339bf30b4c1b99662
/frameworks/base/services/input/EventHub.cpp
|
874c1e9aa598b45e7114a69ecb4194c167a8b39d |
|
19-Jan-2012 |
Jeff Brown <jeffbrown@google.com> |
Use O_CLOEXEC when opening input device. Change-Id: I931614ef4fe2143c9e124c3239d74a4a2ce3816c
/frameworks/base/services/input/EventHub.cpp
|
e22afbedc1a71905d112d8cf78ca8c2a27e371fe |
|
16-Dec-2011 |
Jeff Brown <jeffbrown@google.com> |
Add basic support for new suspend-block ioctls. The new ioctls will enable the system to be more selective about which evdev devices should hold wake-locks when their queue is non-empty. For now, we enable this behavior for all configured input devices, which is more or less the status quo. This change is mainly about ensuring that the system still works correctly when combined with a newer kernel that supports the suspend-block ioctls. We can tweak this behavior later. Change-Id: I8ff69aa5198903f7e2998772a339313df17c0f24
/frameworks/base/services/input/EventHub.cpp
|
214f459b2c35ac0d95ad8ae9e2a68b94807ceba0 |
|
23-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Remove no longer needed EventHub usleep() optimization. This optimization is no longer needed now that the kernel evdev driver's poll() implementation only wakes up the poll after the final sync. Change-Id: If237776861df9cfac3086e744d3bbf3484d4c53b
/frameworks/base/services/input/EventHub.cpp
|
4130554b452a8462a83f97051240f1aec8590650 |
|
05-Oct-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix line wrapping. Change-Id: I41199d1145d2435eee046a7e5006dcdce0986821
/frameworks/base/services/input/EventHub.cpp
|
ec193dec4d9ca2cfc8295c4becfe950a906a15ed |
|
09-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename LOG_ASSERT to ALOG_ASSERT DO NOT MERGE See https://android-git.corp.google.com/g/157519 Bug: 5449033 Change-Id: I8ceb2dba1b031a0fd68d15d146960d9ced62bbf3
/frameworks/base/services/input/EventHub.cpp
|
3762c311729fe9f3af085c14c5c1fb471d994c03 |
|
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
/frameworks/base/services/input/EventHub.cpp
|
8564c8da817a845353d213acd8636b76f567b234 |
|
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
/frameworks/base/services/input/EventHub.cpp
|
6215d3ff4b5dfa52a5d8b9a42e343051f31066a5 |
|
04-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156801 Bug: 5449033 Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
/frameworks/base/services/input/EventHub.cpp
|
5baa3a62a97544669fba6d65a11c07f252e654dd |
|
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
/frameworks/base/services/input/EventHub.cpp
|
221096fdd6963a0f7090b928cfb92b9267f32d7a |
|
16-Nov-2011 |
Jeff Brown <jeffbrown@google.com> |
am 4c0e0dd2: am 3e7497b4: Merge "Eliminate hw.keyboards system properties." into ics-mr1 * commit '4c0e0dd29dcce33e7521b11d01d21d9431f3b264': Eliminate hw.keyboards system properties.
|
1e08fe90df18930691b0c2ec22e5db25d7fcb4cf |
|
16-Nov-2011 |
Jeff Brown <jeffbrown@google.com> |
Eliminate hw.keyboards system properties. Stop using system properties to publish information about the key character map path. Instead, we can retrieve it on demand by asking the window manager. It was possible to exhaust the supply of system properties when repeatedly adding and removing input devices. Bug: 5532806 Change-Id: Idd361a24ad7db2edc185c8546db7fb05f9c28669
/frameworks/base/services/input/EventHub.cpp
|
71f2cf116aab893e224056c38ab146bd1538dd3e |
|
20-Oct-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
/frameworks/base/services/input/EventHub.cpp
|
e8b7f4a20c43d8f55d0cf85a94363b764ba598b8 |
|
27-Sep-2011 |
Dima Zavin <dima@android.com> |
eventhub: print debugginf info when removing device Change-Id: I40bbbd3867e8c7ac7d6fb38e1c72432bb4963316 Signed-off-by: Dima Zavin <dima@android.com>
/frameworks/base/services/input/EventHub.cpp
|
3cdfc4d94f6af82953f0e722ade882197c72da58 |
|
01-Sep-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Support composite touch / joystick devices better."
|
9ee285afe740ff13d176c9d8430979dfd9575a23 |
|
31-Aug-2011 |
Jeff Brown <jeffbrown@google.com> |
Support composite touch / joystick devices better. This change enables the joystick input mapper to handle any axes that are not claimed by the touch input mapper, which makes auxiliary controls such as wheels / knobs accessible. Change-Id: I01ee7f342ac91acfcb4ccb6676fd52b3d5bf31a0
/frameworks/base/services/input/EventHub.cpp
|
e81056f35041de24adad9bc5384b9e8f72bf95f6 |
|
30-Aug-2011 |
Max Braun <braun@google.com> |
Pick up device configuration "device.internal = 0". Before, only "device.internal = 1" had an effect. Change-Id: Ie88ed66e0841418c147bed2e23806405bdd17ad6
/frameworks/base/services/input/EventHub.cpp
|
063097545e6a273952463803d1a2fab2cb590d4e |
|
12-Aug-2011 |
Jeff Brown <jeffbrown@google.com> |
Ensure outValue is set, even when an error occurs. Change-Id: If883f60cde28792bd0e108597ced49d69d13136e
/frameworks/base/services/input/EventHub.cpp
|
89ef0720ee8e0ac6ae1758faa917e4d6c9606fb4 |
|
11-Aug-2011 |
Jeff Brown <jeffbrown@google.com> |
Add input system to Watchdog. Bug: 5094994 Change-Id: I153866958efc64ac19bda8b997c1c9f6ad425ec4
/frameworks/base/services/input/EventHub.cpp
|
ba421dddfd558b34726df5dfbf8a3bf748e285b1 |
|
11-Aug-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix getSwitchState and others to check bitmasks. Bug: 5149443 Removed some dead code and unnecessary checks, such as checks for non-nullity of arrays that used to be dynamically allocated once upon a time but are now part of the Device object itself. Change-Id: I531116e816772d7c5030d22da0c8e1d7dcfba778
/frameworks/base/services/input/EventHub.cpp
|
49754db5a304d995c1cc108ff6f19e4ba4265572 |
|
02-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Handle stylus buttons and tool types. Added TOOL_TYPE_ERASER. Refactored the InputReader to share more code between the various input mappers that handle button states and to simplify the accumulator implementations by having each one only handle a single type of input. Removed the concept of direct/indirect tool types from the API. If we add it back, it should be done in a manner that is orthogonal to the tool type itself, perhaps as a flags field on the pointer. The device source may well provide sufficient information anyhow. Change-Id: I811c22d95e8304269b6ee4f6d11a6b04f3cfc1b2
/frameworks/base/services/input/EventHub.cpp
|
2717eff2ac04bed60e5fd577bcb8ec1ea7c2ccde |
|
01-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Query input device for initial slot index. This fixes a problem where touches can get stuck because the driver and the framework have different ideas of what the initial slot index is. The framework assumed it was slot 0 but it could in principle be any slot, such as slot 1. When that happened, the framework would start tracking the first touch as slot 0, but it might never receive an "up" for that slot. Change-Id: Idaffc4534b275d66b9d4360987b28dc2d0f63218
/frameworks/base/services/input/EventHub.cpp
|
93fa9b30b91f75ee161d0791ff17f98d1a603812 |
|
15-Jun-2011 |
Jeff Brown <jeffbrown@google.com> |
EventHub code cleanup. Use epoll_wait() instead of poll(). Dropped all support for non-Linux platforms. Added a wake-up protocol so that the InputReader can wake up the event loop immediately as needed. Change-Id: Ibf84337bcceb3c2df068c5c637de42a319786d66
/frameworks/base/services/input/EventHub.cpp
|
b3a2d1330716812784aee91b6d6275764b5e4210 |
|
13-Jun-2011 |
Jeff Brown <jeffbrown@google.com> |
Take advantage of updated linux/input.h kernel headers. Change-Id: I72d2ef82de5c504d46b0cdb57aa43bbd0d769174
/frameworks/base/services/input/EventHub.cpp
|
7218d830e27d81141588cd6e37f206d141a18f62 |
|
04-Jun-2011 |
Jeff Brown <jeffbrown@google.com> |
resolved conflicts for merge of ca2b552d to master Change-Id: I2f3693a59042ac5aa2d7bcdc3a504c78dc99a18b
|
1a84fd1fb7a51f3fe4f8865e1cdd09f3490f696c |
|
02-Jun-2011 |
Jeff Brown <jeffbrown@android.com> |
Add a preference panel for mouse speed. Bug: 4124987 Change-Id: I3ce175d268a1d043cf5878481261b1049a15a149
/frameworks/base/services/input/EventHub.cpp
|
5ced76a14350db56f1a80f00076f8be3d982c389 |
|
24-May-2011 |
Jeff Brown <jeffbrown@android.com> |
Coalesce input events that arrive faster than 333Hz. (DO NOT MERGE) Some drivers report individual finger updates one at a time instead of all at once. When 10 fingers are down, this can cause the framework to have to handle 10 times as many events each with 10 times as much data. Applications like PointerLocation would get significantly bogged down by all of the redundant samples. This change coalesces samples that are closely spaced in time, before they are dispatched, as part of the motion event batching protocol. Increased the size of the InputChannel shared memory buffer so that applications can catch up faster if they accumulate a backlog of samples. Change-Id: Ibc6abf8af027d9003011ac75caa12941080caba3
/frameworks/base/services/input/EventHub.cpp
|
dbf8d27f4c32e20e132e90ad713c6ebaf71d7756 |
|
19-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Optimize EventHub to process events in big chunks. (DO NOT MERGE) When 10 fingers are down, reduces the CPU time spent by the InputReader thread from ~30% to ~5% on Stingray. Change-Id: I42ee5c67b8521af715cbab43e763a4af4eb1f914
/frameworks/base/services/input/EventHub.cpp
|
80fd47ce75253dcdc2cfa85d7a3f42634b923a47 |
|
24-May-2011 |
Jeff Brown <jeffbrown@google.com> |
Input device protocol enhancements. Added support for Linux multitouch protocol B (slots). Added support for using the device's input properties as a hint to determine the intended usage of a touch device. Added support for the ABS_MT_DISTANCE axis. Fixed a bug reporting the presence of the orientation axis. Change-Id: Icf7b5a5a0f1a9cdf6ad2b35be8ea0c1a35815d48
/frameworks/base/services/input/EventHub.cpp
|
68d6075b4ad2205c10064c78cde552e3210cca91 |
|
17-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Refactor how timeouts are calculated. (DO NOT MERGE) Added a timeout mechanism to EventHub and InputReader so that InputMappers can request timeouts to perform delayed processing of input when needed. Change-Id: I89c1171c9326c6e413042e3ee13aa9f7f1fc0454
/frameworks/base/services/input/EventHub.cpp
|
4e91a180be46c0c7c3bf398d4df4cbe2404216b5 |
|
07-Apr-2011 |
Jeff Brown <jeffbrown@google.com> |
Coalesce input events that arrive faster than 333Hz. Some drivers report individual finger updates one at a time instead of all at once. When 10 fingers are down, this can cause the framework to have to handle 10 times as many events each with 10 times as much data. Applications like PointerLocation would get significantly bogged down by all of the redundant samples. This change coalesces samples that are closely spaced in time, before they are dispatched, as part of the motion event batching protocol. Increased the size of the InputChannel shared memory buffer so that applications can catch up faster if they accumulate a backlog of samples. Added logging code to help measure input dispatch and drawing latency issues in the view hierarchy. See ViewDebug.DEBUG_LATENCY. Change-Id: Ia5898f781f19901d2225c529a910c32bdf4f504f
/frameworks/base/services/input/EventHub.cpp
|
b6110c2de0cd7950360aeb2c248a44e4ea5f33f5 |
|
02-Apr-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix dispatcher crash when input monitoring enabled. Also ensure that we actually log assertion failures. Bug: 4203092 Change-Id: I5c14bc41b2255f876858121f5572e2de75cabcc3
/frameworks/base/services/input/EventHub.cpp
|
df66797771550d243500943e1b9a177667f77f7a |
|
19-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Optimize EventHub to process events in big chunks."
|
b7198743ab3976b30d4655c1e065ca33e372b6af |
|
19-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Optimize EventHub to process events in big chunks. When 10 fingers are down, reduces the CPU time spent by the InputReader thread from ~30% to ~5% on Stingray. Change-Id: Icdf7c91cd5d9039ac3beb38ba9021a05e7fabc80
/frameworks/base/services/input/EventHub.cpp
|
6ed6f6d82d7b9f8d82f3ab3a9f718a0e59ffa476 |
|
18-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Refactor how timeouts are calculated."
|
aa3855d5836d2a2d83baafdf6e40caf90d3dad1c |
|
17-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Refactor how timeouts are calculated. Added a timeout mechanism to EventHub and InputReader so that InputMappers can request timeouts to perform delayed processing of input when needed. Change-Id: Iec2045baaf4e67690b15eef3c09a58d5cac76897
/frameworks/base/services/input/EventHub.cpp
|
8e9d4431d6a97a08d7dc9612c68ffd0812dfdc68 |
|
13-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix dangling pointer when device closed just after opening. Bug: 4088239 Change-Id: I210b918370357560a5ace8ea8dd7601255487e88
/frameworks/base/services/input/EventHub.cpp
|
9e8e40cb5f8aeb0702002eee60d1ce394bf699ee |
|
03-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Recognize 3D joysticks. (DO NOT MERGE) Change-Id: Idf7799ea90fa07677850d40ee1aec39220ded372
/frameworks/base/services/input/EventHub.cpp
|
8529745b27877d98a0c76692295a3fcac238b1e6 |
|
04-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Joystick tweaks. (DO NOT MERGE) Ensure that the joystick can always reach -1.0, 0.0 and 1.0 positions even when noise filtering is applied. (Bug: 3514510) Add support for a few more standard axes. Add additional mapping modes for axes. Some axes are inverted from standard interpretation or are actually intended to be split into two distict axes such as left/right trigger controls or accelerator/brake. Add key layout file for a G25 racing wheel and XBox 360 controller to tweak behavior. They work fine without them but the axis mappings are not ideal. Change-Id: I0fddd90309af4dc14d35f34fe99ed6e521c0b7c7
/frameworks/base/services/input/EventHub.cpp
|
3a22fa057091cd6614f58ebc57a7ce4fe29462bb |
|
04-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Joystick tweaks. Ensure that the joystick can always reach -1.0, 0.0 and 1.0 positions even when noise filtering is applied. (Bug: 3514510) Add support for a few more standard axes. Add additional mapping modes for axes. Some axes are inverted from standard interpretation or are actually intended to be split into two distict axes such as left/right trigger controls or accelerator/brake. Add key layout file for a G25 racing wheel and XBox 360 controller to tweak behavior. They work fine without them but the axis mappings are not ideal. Change-Id: Id4c86a0a272331c680039a9bde6815bb7eba44ab
/frameworks/base/services/input/EventHub.cpp
|
e7b2029a0b7b948daf2d6accbc200a56d72f96ca |
|
03-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Recognize 3D joysticks. Change-Id: Ie4eae09c0334f69c2ccfcf7eaede075f9ba02eab
/frameworks/base/services/input/EventHub.cpp
|
56194ebec6212e229f4ccdaa4b187166d20013ef |
|
03-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Wake screen from external HID peripherals. Added some plumbing to enable the policy to intercept motion events when the screen is off to handle wakeup if needed. Added a basic concept of an external device to limit the scope of the wakeup policy to external devices only. The wakeup policy for internal devices should be based on explicit rules such as policy flags in key layout files. Moved isTouchEvent to native. Ensure the dispatcher sends the right event type to userActivity for non-touch pointer events like HOVER_MOVE and SCROLL. Bug: 3193114 Change-Id: I15dbd48a16810dfaf226ff7ad117d46908ca4f86
/frameworks/base/services/input/EventHub.cpp
|
33bbfd2232ea9eaae9a9d87a05a95a430f09bd83 |
|
25-Feb-2011 |
Jeff Brown <jeffbrown@google.com> |
Add support for mouse hover and scroll wheel. Dispatch ACTION_HOVER_MOVE and ACTION_SCROLL through the View hierarchy as onGenericTouchEvent. Pointer events dispatched this way are delivered to the view under the pointer. Non-pointer events continue to be delivered to the focused view. Added scroll wheel support to AbsListView, ScrollView, HorizontalScrollView and WebView. Shift+VSCROLL is translated to HSCROLL as appropriate. Added logging of new pointer events in PointerLocationView. Fixed a problem in EventHub when a USB device is removed that resulted in a long stream of ENODEV errors being logged until INotify noticed the device was gone. Note that the new events are not supported by wallpapers at this time because the wallpaper engine only delivers touch events. Make all mouse buttons behave identically. (Effectively we only support one button.) Change-Id: I9ab445ffb63c813fcb07db6693987b02475f3756
/frameworks/base/services/input/EventHub.cpp
|
cc0c159e9b3dd4e0f48da0ce3e33d2c68a651413 |
|
19-Feb-2011 |
Jeff Brown <jeffbrown@google.com> |
Add new hover move action and scroll wheel plumbing. Added support for tracking the mouse position even when the mouse button is not pressed. To avoid confusing existing applications, mouse movements are reported using the new ACTION_HOVER_MOVE action when the mouse button is not pressed. Added some more plumbing for the scroll wheel axes. The values are reported to Views but they are not yet handled by the framework. Change-Id: I1706be850d25cf34e5adf880bbed5cc3265cf4b1
/frameworks/base/services/input/EventHub.cpp
|
6f2fba428ca5e77a26d991ad728e346cc47609ee |
|
19-Feb-2011 |
Jeff Brown <jeffbrown@google.com> |
Add new axes for joysticks and mouse wheels. Added API on InputDevice to query the set of axes available. Added API on KeyEvent and MotionEvent to convert keycodes and axes to symbolic name strings for diagnostic purposes. Added API on KeyEvent to query if a given key code is a gamepad button. Added a new "axis" element to key layout files to specify the mapping between raw absolute axis values and motion axis ids. Expanded the axis bitfield to 64bits to allow for future growth. Modified the Makefile for keyboard prebuilts to run the keymap validation tool during the build. Added layouts for two game controllers. Added default actions for game pad button keys. Added more tests. Fixed a bunch of bugs. Change-Id: I73f9166c3b3c5bcf4970845b58088ad467525525
/frameworks/base/services/input/EventHub.cpp
|
0a9f335e7088ade74d9e3fbc852d052de45603ca |
|
26-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix build. Change-Id: Id08f3ccced1281f1c6840cc67713bcedcf9a53c0
/frameworks/base/services/input/EventHub.cpp
|
ab2f09603079534b53499864a403d0ba16aad13b |
|
26-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
am 12b2dc90: am b1e0a870: Merge "Fix crashes caused by some input devices." into honeycomb * commit '12b2dc90883ef4f930a17907acdef3677b0598a5': Fix crashes caused by some input devices.
|
58a2da843f2f22f406df8df1f011738eb8b7fcb1 |
|
26-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix crashes caused by some input devices. The touch screen sometimes reports more than 10 pointers even though that's all we asked for. When this happens, we start dropping events with more than 10 pointers. This confuses applications and causes them to crash. Raised the limit to 16 pointers. Bug: 3331247 The default behavior was to identify all touch devices as touch screens. External devices that are plugged in are more likely to be touch pads not attached to a screen. Changed the default to be a touch pad and renamed some internal constants to avoid confusion. A certain mouse happens to also behave like a touch pad. That caused problems because we would see multiple concurrent traces of motion events coming from the same input device so we would batch them up. Added code to ensure that we don't batch events unless they come from the same *source* in addition to coming from the same *device*. Due to batching or misbehaving drivers, it's possible for the set of pointer ids to be different from what we expect when it comes time to split motion events across windows. As a result, we can generate motion events with 0 pointers. When we try to deliver those events, we cause an error in the InputTransport so we tear down the InputChannel and kill the application. Added code to check out assumption about pointer ids and drop the event gracefully instead. Patched up the tests to take into account the change in default behavior for identifying touch screens and touch pads. Change-Id: Ic364bd4cb4cc6335d4a1213a26d6bdadc7e33505
/frameworks/base/services/input/EventHub.cpp
|
cb1404e45639d20439d7700b06d57ca1a1aad1fa |
|
16-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Add joystick support to framework. Change-Id: I95374436708752e1a9cff3f85c5b9bc3e0987961
/frameworks/base/services/input/EventHub.cpp
|
b4ff35df5c04aec71fce7e90a6d6f9ef7180c2ad |
|
03-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Mouse pointer integration. Added support for loading the pointer icon from a resource. Moved the system server related bits of the input manager out of libui and into libinput since they do not need to be linked into applications. Change-Id: Iec11e0725b3add2b905c51f8ea2c3b4b0d1a2d67
/frameworks/base/services/input/EventHub.cpp
|