b699726018a0049665d8ad6b90dbc5af0e18f135 |
|
09-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Added more robust tracking and cancelation of events. This change fixes several issues where events would be dropped in the input dispatch pipeline in such a way that the dispatcher could not accurately track the state of the input device. Given more robust tracking, we can now also provide robust cancelation of input events in cases where an application might otherwise become out of sync with the event stream due to ANR, app switch, policy decisions, or forced focus transitions. Pruned some of the input dispatcher log output. Moved the responsibility for calling intercept*BeforeQueueing into the input dispatcher instead of the input reader and added support for early interception of injected events for events coming from trusted sources. This enables behaviors like injection of media keys while the screen is off, haptic feedback of injected virtual keys, so injected events become more "first class" in a way. Change-Id: Iec6ff1dd21e5f3c7feb80ea4feb5382bd090dbd9
/frameworks/base/core/java/android/view/MotionEvent.java
|
dc1ab4b5cc274b7d744c11a939bb5910becec5e0 |
|
15-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Input API review. Drop currently unsupported input features. Add documentation comments. Change-Id: I407d2e1dd90c5ee82983a3ccf177430d35ee7592
/frameworks/base/core/java/android/view/MotionEvent.java
|
85a3176704b5bfbeece9bd928369fbb76eec7dc6 |
|
02-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for secure views. Added the MotionEvent.FLAG_WINDOW_IS_OBSCURED flag which is set by the input manager whenever another visible window is partly or wholly obscured the target of a touch event so that applications can filter touches accordingly. Added a "filterTouchesWhenObscured" attribute to View which can be used to enable filtering of touches when the view's window is obscured. Change-Id: I936d9c85013fd2d77fb296a600528d30a29027d2
/frameworks/base/core/java/android/view/MotionEvent.java
|
2f6d975b93bbc5b55c35a00d913ee38ad9b76401 |
|
20-Aug-2010 |
Jeff Brown <jeffbrown@google.com> |
Minor MotionEvent optimization. Change-Id: I862e934e8dae80f394ffd4ab4b4697037805022c
/frameworks/base/core/java/android/view/MotionEvent.java
|
b0d6ba1ec4f71b96cab7d1ff62b846d5cf162c4f |
|
18-Aug-2010 |
Gilles Debunne <debunne@google.com> |
Text selection without trackball. Backported from HC. Squashed commit of the following: commit af214a595c7a9fdd11a2dc384f7d4665abf751c0 Fixes in TextView's selection. commit eb9fd59ebe6500a66c2003d46b5802299970ae8d TextView with Selection Contextual Mode commit 4c4c338ef355b369ce4b57d6c6fba7ee8f9dddf4 Cosmetic changes around TextView. commit d4b4b054e87480d984ad18766f5e76553e3080d8 Double and one and a half tap removed from TextView. commit 897c2847ba1fca8ef01eadadd1bc3de007af3ee5 Selection handlers in TextView commit 832be74a5394649e28927484d9a86c6d53b430e7 New cursor controller in TextViews. Change-Id: I01cc64736e2abea605317ee53907a1713617fc17
/frameworks/base/core/java/android/view/MotionEvent.java
|
9e2ad36be87f2703b3d737189944d82f93bd4f27 |
|
31-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Enhanced VelocityTracker for > 5 pointers and fixed bugs. Improved PointerLocation tool to use VelocityTracker more efficiently and correctly when multiple pointers are down. Fixed a bug in TouchInputMapper where it was not correctly copying the id to index map in the last touch data. This could cause strange behavior on secondary pointer up events. Also added finished callback pooling in InputQueue. Change-Id: Ia85e52ac2fb7350960ea1d7edfbe81a1b3e8267b
/frameworks/base/core/java/android/view/MotionEvent.java
|
6ec402b5ae33c8927694d8522b4cc6a5c8ba974e |
|
29-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
DO NOT MERGE: Fix input event injection ANRs on UI thread. Added a new asynchronous injection mode and made the existing synchronization mechanism more robust. Change-Id: Ia4aa04fd9b75ea2461a844c5b7933c831c1027e6
/frameworks/base/core/java/android/view/MotionEvent.java
|
6d0fec2de3601821f4f44eeb7d7deedebb2b7117 |
|
24-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Refactor input reader to support new device types more easily. Refactored the input reader so that each raw input protocol is handled by a separate subclass of the new InputMapper type. This way, behaviors pertaining to keyboard, trackballs, touchscreens, switches and other devices are clearly distinguished for improved maintainability. Added partial support for describing capabilities of input devices (incomplete and untested for now, will be fleshed out in later commits). Simplified EventHub interface somewhat since InputReader is taking over more of the work. Cleaned up some of the interactions between InputManager and WindowManagerService related to reading input state. Fixed swiping finger from screen edge into display area. Added logging of device information to 'dumpsys window'. Change-Id: I17faffc33e3aec3a0f33f0b37e81a70609378612
/frameworks/base/core/java/android/view/MotionEvent.java
|
e33348ba54cd68d6936cffd4507037c14d4b10c2 |
|
16-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix bug with phantom input windows. Add dumpsys integration for the native input dispatcher. Add some InputDevice API stubs. Add an appendFormat helper method to String8 for printf style string formatting mainly for debugging purposes. Use generic ArrayList<WindowState> everywhere in WindowManagerService to eliminate unnecessary casts all over. Change-Id: I9d1e3bd90eb7222d10620200477f11b7bfd25e44
/frameworks/base/core/java/android/view/MotionEvent.java
|
c5ed5910c9ef066cec6a13bbb404ec57b1e92637 |
|
15-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for new input sources. Added several new coordinate values to MotionEvents to capture touch major/minor area, tool major/minor area and orientation. Renamed NDK input constants per convention. Added InputDevice class in Java which will eventually provide useful information about available input devices. Added APIs for manufacturing new MotionEvent objects with multiple pointers and all necessary coordinate data. Fixed a bug in the input dispatcher where it could get stuck with a pointer down forever. Fixed a bug in the WindowManager where the input window list could end up containing stale removed windows. Fixed a bug in the WindowManager where the input channel was being removed only after the final animation transition had taken place which caused spurious WINDOW DIED log messages to be printed. Change-Id: Ie55084da319b20aad29b28a0499b8dd98bb5da68
/frameworks/base/core/java/android/view/MotionEvent.java
|
5c225b1680e696ae8bbf505a1997d6f720672f74 |
|
16-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
Even more native input dispatch work in progress. Added more tests. Fixed a regression in Vector. Fixed bugs in pointer tracking. Fixed a starvation issue in PollLoop when setting or removing callbacks. Fixed a couple of policy nits. Modified the internal representation of MotionEvent to be more efficient and more consistent. Added code to skip/cancel virtual key processing when there are multiple pointers down. This helps to better disambiguate virtual key presses from stray touches (such as cheek presses). Change-Id: I2a7d2cce0195afb9125b23378baa94fd2fc6671c
/frameworks/base/core/java/android/view/MotionEvent.java
|
46b9ac0ae2162309774a7478cd9d4e578747bfc2 |
|
23-Apr-2010 |
Jeff Brown <jeffbrown@google.com> |
Native input dispatch rewrite work in progress. The old dispatch mechanism has been left in place and continues to be used by default for now. To enable native input dispatch, edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy. Includes part of the new input event NDK API. Some details TBD. To wire up input dispatch, as the ViewRoot adds a window to the window session it receives an InputChannel object as an output argument. The InputChannel encapsulates the file descriptors for a shared memory region and two pipe end-points. The ViewRoot then provides the InputChannel to the InputQueue. Behind the scenes, InputQueue simply attaches handlers to the native PollLoop object that underlies the MessageQueue. This way MessageQueue doesn't need to know anything about input dispatch per-se, it just exposes (in native code) a PollLoop that other components can use to monitor file descriptor state changes. There can be zero or more targets for any given input event. Each input target is specified by its input channel and some parameters including flags, an X/Y coordinate offset, and the dispatch timeout. An input target can request either synchronous dispatch (for foreground apps) or asynchronous dispatch (fire-and-forget for wallpapers and "outside" targets). Currently, finding the appropriate input targets for an event requires a call back into the WindowManagerServer from native code. In the future this will be refactored to avoid most of these callbacks except as required to handle pending focus transitions. End-to-end event dispatch mostly works! To do: event injection, rate limiting, ANRs, testing, optimization, etc. Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
/frameworks/base/core/java/android/view/MotionEvent.java
|
d28f4be870ea8850a2d4a2fe51333643f16b9ab1 |
|
03-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
Fixed some minor bugs in MotionEvent recycling. 1. MotionEvent.recycle() never set mRecycled to true so it couldn't actually detect doubly-recycled events (unless the TRACK_RECYCLED_LOCATION debuging flag was enabled). 2. MotionEvent.obtain() did not set mNext to null before returning the event so it would unnecessarily retain a reference to other events in the recycled event linked list until recycled again. Change-Id: I93709c402d260691875f632dfc080a355f85fbb0
/frameworks/base/core/java/android/view/MotionEvent.java
|
b125dc5599468a09d82751cd76152071ae485afb |
|
13-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix MotionEvent pointer API. Ooops. The API said that the pointer down and up actions contained the pointer id, but it is actually the index. Actually it makes much more sense for it to be the index, and those ACTION_POINTER_1_DOWN etc. constants were stupid.
/frameworks/base/core/java/android/view/MotionEvent.java
|
2397640740e053af7ef4aa742467f723186d5ad7 |
|
27-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Maybe fix issue #2145012: Array bounds exception in touch event processing Change-Id: I223d9ae29f22f08cb8426ccd8bbadeedd5db3fc3
/frameworks/base/core/java/android/view/MotionEvent.java
|
8df8b2b405c60cacf7a66c4e2ca078dd3d7ec7bd |
|
18-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Allow wallpapers to get touch events.
/frameworks/base/core/java/android/view/MotionEvent.java
|
1e8dfc73fba88766ee3c25ae7b3bb1850319b11d |
|
06-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix crash when MotionEvent is initialized with more than 2 fingers, and bump its initial size to allow for up to 5 fingers.
/frameworks/base/core/java/android/view/MotionEvent.java
|
d41ba666d12a24ee4624ea9a009151e6165e3775 |
|
06-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix documentation.
/frameworks/base/core/java/android/view/MotionEvent.java
|
0dd7cb4b4ef86eb7d4e837b1948501da66adeebe |
|
04-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Finish implementation of multiple pointer support for MotionEvent. The major things going on here: - The MotionEvent API is now extended to included "pointer ID" information, for applications to keep track of individual fingers as they move up and down. PointerLocation has been updated to take advantage of this. - The input system now has logic to generate MotionEvents with the new ID information, synthesizing an identifier as new points are down and trying to keep pointer ids consistent across events by looking at the distance between the last and next set of pointers. - We now support the new multitouch driver protocol, and will use that instead of the old one if it is available. We do NOT use any finger id information coming from the driver, but always synthesize pointer ids in user space. (This is simply because we don't yet have a driver reporting this information from which to base an implementation on.) - Increase maximum number of fingers to 10. This code has only been used with a driver that reports up to 2, so no idea how more will actually work. - Oh and the input system can now detect and report physical DPAD devices.
/frameworks/base/core/java/android/view/MotionEvent.java
|
18a081e68441a098fe0a1a6283439913cfb6b0ca |
|
29-Jul-2009 |
Owen Lin <owenlin@google.com> |
Fix OOB in arraycopy.
/frameworks/base/core/java/android/view/MotionEvent.java
|
dac57e4ec94591207eeb660adbe53245dd78e713 |
|
27-Jul-2009 |
Adam Bliss <abliss@google.com> |
Fix a bug that was causing ArrayIndexOutOfBoutExceptions when obtaining a MotionEvent from an older one that had a number of time samples.
/frameworks/base/core/java/android/view/MotionEvent.java
|
ddca3ee3e86fbaa05c1528bd72afd955f0fb4ee6 |
|
24-Jul-2009 |
Dianne Hackborn <hackbod@google.com> |
Add support for power keys, improve behavior of virtual keys. The platform now knows how to deal with a platform key, which at this point is "just like end call, but don't end a call." Also improve the handling of virtual keys, to allow for canceling when sliding off into the display and providing haptic feedback. Finally fixes a bug where the raw x and y in motion event were not always set which caused the status bar to not work.
/frameworks/base/core/java/android/view/MotionEvent.java
|
9822d2b27330793ea4ba9c3316ef35f402f35fb4 |
|
21-Jul-2009 |
Dianne Hackborn <hackbod@google.com> |
First stab at poly-finger support. The MotionEvent API should be fairly solid, but there is still a lot of work to do in the input device code. In particular, right now we are really stupid about watching how fingers change -- we just take whatever the driver reports as down and dump that directly into the motion event. The big remaning work is to assign pointer IDs so that applications have help in determine which fingers go up and down, and adding support for the official multi-touch driver protocol.
/frameworks/base/core/java/android/view/MotionEvent.java
|
e9dcb803a0a08780054c272df12b7e8b5984b30a |
|
16-Jul-2009 |
Romain Guy <romainguy@android.com> |
Fixes merge conflict.
/frameworks/base/core/java/android/view/MotionEvent.java
|
ecf2b68d834d334de218dc427615b4ca05c0293a |
|
25-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am 7941e903: Merge change 5091 into donut Merge commit '7941e903c973af66075bbd4fa4bcadf021a61ccc' * commit '7941e903c973af66075bbd4fa4bcadf021a61ccc': * new screen resolution support impl.
|
64f59342d41849bd365cb43fad7505d5e3daa417 |
|
21-Jun-2009 |
Mitsuru Oshima <oshima@google.com> |
* new screen resolution support impl. * use full window for activities, and shift & clip the content * refactored the compatibility code, and introdcued Translator class to handle cooridnate translations. * removed a workaround to handle an activity with configChagne=rotation in old implementation. * I'll fix background issue on rotation in next CL. * removed unnecessary scaling code in SurfaceView, which I forgot to remove when I changed SurfaceView not to scale the content.
/frameworks/base/core/java/android/view/MotionEvent.java
|
9d2b0f4de03ca9bcdab5a3608dea5474c91faf86 |
|
15-Jun-2009 |
The Android Open Source Project <initial-contribution@android.com> |
merge cafdea61a85c8f5d0646cc9413a09346c637f43f w/ one minor conflict in core/java/android/view/MotionEvent.java
|
cafdea61a85c8f5d0646cc9413a09346c637f43f |
|
12-Jun-2009 |
Romain Guy <romainguy@android.com> |
Fixes #1914574. An NPE could be causes in lists by ViewGroup.dispatchDraw(). ViewGroup was trying to access the AttachInfo without checking whether the info object is null. The object can be null at varioous times in the lifecycle of a list.
/frameworks/base/core/java/android/view/MotionEvent.java
|
53071d6d159f6dfd6fe0328a39bcf967ef308a64 |
|
14-May-2009 |
Michael Chan <mchan@android.com> |
Added LatencyTimer to ease latency measurements new file: core/java/android/os/LatencyTimer.java modified: core/java/android/view/MotionEvent.java modified: core/java/android/view/ViewRoot.java modified: services/java/com/android/server/InputDevice.java modified: services/java/com/android/server/KeyInputQueue.java modified: services/java/com/android/server/WindowManagerService.java
/frameworks/base/core/java/android/view/MotionEvent.java
|
d4cc32ca99390ca54762f86d4850ab553a05ccf7 |
|
08-May-2009 |
Mitsuru Oshima <oshima@google.com> |
don't use modulo
/frameworks/base/core/java/android/view/MotionEvent.java
|
dffbb4dbceb7e90e91b65d02dfdbd1abd6147b94 |
|
30-Apr-2009 |
Mitsuru Oshima <nobody@android.com> |
AI 148024: fix NPE when there is no history Automated import of CL 148024
/frameworks/base/core/java/android/view/MotionEvent.java
|
8169daed2f7a8731d478b884b1f455c747b88478 |
|
29-Apr-2009 |
Mitsuru Oshima <> |
AI 147976: Compatibility mode support. Part 2. * Introduced ApplicationScale (may not be good name. CompatibilityScale? CanvasScale? Pls let me know if you have better idea) * Changes to RootView / SurfaceView - Makes the app believe it's running in the supported density/resolution. - Makes the window manager believe it's running at the right density/resolution. * Added methods to Rect/Event for scaling up/down. Known issues: * certain kind of images (such as nine patch for buttons) seesm to be loaded not by app, thus does not take the scale into account, which, in turn, is causing layout issue. * ZoomButton in MapView is rendered in wrong place * Transparent region on Surface is not correct * Specifying different densities in one process is not working. BUG=1770627 Automated import of CL 147976
/frameworks/base/core/java/android/view/MotionEvent.java
|
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/view/MotionEvent.java
|
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/view/MotionEvent.java
|
f013e1afd1e68af5e3b868c26a653bbfb39538f8 |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/android/view/MotionEvent.java
|
54b6cfa9a9e5b861a9930af873580d6dc20f773c |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
/frameworks/base/core/java/android/view/MotionEvent.java
|