summaryrefslogtreecommitdiffstats
path: root/services/inputflinger/InputReader.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'android-6.0.1_r3' of ↵Steve Kondik2015-12-071-2/+1
|\ | | | | | | | | | | | | | | https://android.googlesource.com/platform/frameworks/native into cm-13.0 Android 6.0.1 release 3 Change-Id: I437aaf148d440a8144afe1454948980fc3b40cca
| * Inputflinger: hook up key event replacement processingDmitry Torokhov2015-09-291-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add handling of "replacement" key events in InputReader and EventHub by consulting device's character key map (if exists) for presence of replacement key code for given get code and meta state combination, before passing it to InputDispatcher. This enables defining special keys, such as ESC, on keyboards lacking enough physical keys, via combination of normal keys and modifiers, for example AltR + 1 => ESC. Bug: 24504154 Change-Id: I7e36104808bedcf724436c1fbb63d37c35cca8af
| * DO NOT MERGE Cancel touches as well as pointer gestures.Michael Wright2015-09-221-0/+4
| | | | | | | | | | Bug: 24302031 Change-Id: Idbe964a1a35c190a32f845e2a19542d54652d011
| * DO NOT MERGE Revert "am f37143d8: Merge "Cancel touches as well as pointer ↵Michael Wright2015-09-221-4/+0
| | | | | | | | | | | | | | | | | | | | | | gestures." into mnc-dev" This reverts commit 9b70ab7a3cb260205e81e40ba181a86710d2eb95, reversing changes made to 153008efb5a00ed3c18d588ce15f90d2442a9786. Bug: 24302031 Change-Id: Ia746381b30be3b54cb646ed412b7271962c4b02a
| * Cancel touches as well as pointer gestures.Michael Wright2015-07-091-0/+4
| | | | | | | | | | Bug: 19264992 Change-Id: Idbe964a1a35c190a32f845e2a19542d54652d011
* | input: Add option to toggle pointer icon when using stylus(3/3)Steve Kondik2015-10-171-6/+16
| | | | | | | | | | | | | | | | | | | | * The visible pointer icon when hovering or drawing with the stylus is quite annoying when trying to actually draw with it. Turn it off by default and add an option to turn it on. Forward Port from CM-11.0 Change-Id: Ie4e9e6bcc48803b195d1615d83d6e36d663cc33a
* | Forward port 'Swap volume buttons' (2/3)nadlabak2015-10-171-3/+12
| | | | | | | | | | | | [mikeioannina]: Adjust for 5.0 changes Change-Id: I5ed4ae2b7e69e2ada067ed1d3524b3d3fad30e2e
* | inputflinger: disable touch input while using a stylusChristopher N. Hesse2015-10-171-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Android 5.0 cannot form multitouch events from multiple input devices. So it is not possible to report one touchpoint from the stylus position and, at the same time, another touchpoint from a finger touch. Instead, when a new input device starts up the currently active input is cancelled. This is highly undesirable while writing with the pen. The easiest solution is to ignore non-stylus touch events while the stylus is within range (hovering) of the touchscreen. For example, N-trig digitizers implement this in hardware. But wacom digitizers do report pen data simultaneously with touch data. This patch disables (non-stylus) touch input within 50ms of stylus data. On my Galaxy Note this is necessary to make stylus input usable. Original commit by vbraun: https://github.com/CyanogenMod/android_frameworks_base/commit/b9cb2961309c829586ae24ce432bb1fdb5610ba6 Change-Id: I97f26369826e96c97461c8ae188f1c64dec1b4d3
* | inputflinger: Add gesture sensor supportSteve Kondik2015-10-171-0/+1
| | | | | | | | Change-Id: Ieca4e54439c47a817aaa6a9b6fabcee750ffc0c2
* | Cancel touches as well as pointer gestures.Michael Wright2015-07-131-0/+4
|/ | | | | Bug: 19264992 Change-Id: If48e0953b972c9d69f516906adf7c6faf67e3eb8
* Revert "Revert "Add new MotionEvent actions for button press and release.""Michael Wright2015-05-141-2/+9
| | | | This reverts commit 70b41ef580644fd0fe6fa9b8ac7e4a745cfb6db3.
* Revert "Add new MotionEvent actions for button press and release."Michael Wright2015-05-141-9/+2
| | | | This reverts commit 48a8a0e4322969e1551536d6183af3a1faa2240b.
* Add new MotionEvent actions for button press and release.Michael Wright2015-05-141-2/+9
| | | | | | | | | | | | | | Introduce ACTION_BUTTON_PRESS and ACTION_BUTTON_RELEASE as actions to signal a button press or release. If these actions happen simulanteously with a DOWN or UP event then they're explicitly ordered to happen after the DOWN or preceding the UP in order to send them to the most recently targeted view. Also, introduce new stylus button constants that differ from the constants we use for mouse buttons. Bug: 20704355 Change-Id: Ib960a5004db5429ad2fc8db020704773e2978327
* Use previous pressure value if the current fusion data is zero.Michael Wright2015-05-121-2/+2
| | | | | | | | | | | | Occasionally we'll receive the stylus up signal (pressure = 0) before we receive the touch screen up signal. Rather than giving pointer a pressure value of 0 (which is one of the signals of hovering) or falling back to the touchscreen pressure values (which would make for an inconsistent stream), use the previous pressure value which should always be non-zero for a stream of fused data. Bug: 20449776 Change-Id: I71eb97e7c4ea53e42b0eb54fc1f8ae7f89aad9d1
* Synthesize events for pressure and button changes.Michael Wright2015-05-121-1/+2
| | | | | | | | Even when there isn't movement on the touchscreen we should produce events for pressure and button state changes generated by external stylii. Change-Id: I9fd7ba85902d5d6bfb28d5e5ff5d8f340a94c2bf
* Mark all InputReaderContext methods as pure virtualMichael Wright2015-04-171-2/+2
| | | | | | Also, fix the build. Change-Id: I45d3daa8c0710b2f9421e8ffd011d2d39c05e030
* Fuse stylus and touch screen data.Michael Wright2015-04-171-26/+156
| | | | | | | TODO: Ensure we dispatch new pressure and button data when stylus is stationary. Change-Id: I10a665a9b81ff4b9acd01bf72f0fc2e0c2abc203
* Pass through availability of audio mic for input devices.Tim Kilbourn2015-04-091-0/+4
| | | | | Bug: 15374820 Change-Id: Id2ca6da10165e3a887ebfbb18f663a3bf316ac79
* Cancel touch events when a low-level touch gesture occurs.Jeff Brown2015-02-121-0/+3
| | | | | | | | | | | | | | | When the touch firmware or driver sends a key event that is triggered by a low-level gesture such as a palm slap. For this to work, the touch device's .kl file must specify the "GESTURE" flag for each key that is produced by a gesture. Note that the "VIRTUAL" flag should also be specified for any such keys for which we would like to generate haptic feedback. eg. key 142 SLEEP VIRTUAL GESTURE Bug: 19264992 Change-Id: Ief494ec7e3ca66d2358a1001fdfae4f263ee1cd1
* Add logging for switch stateMichael Wright2014-08-291-1/+2
| | | | | Bug: 17004602 Change-Id: I15c9feb7b28274183742936c20e34e7fb07e0b70
* Add idc config option for handling key repeatsMichael Wright2014-03-201-0/+1
| | | | | Bug: 13285870 Change-Id: I3c1cd5fb0a02dfb3432c1f04d0eef2d4970857ea
* Support unique calibration per orientationJason Gerecke2014-03-101-1/+1
| | | | | | | | | Updates the format of the calibration XML to store the Surface rotation that a specific calibration applies to. Also updates the API to require a rotation value for get/set, and has the native framework supply this according to the current rotation whenever it changes. Change-Id: If38563ceba27c9d8a75f9fd7928c8d7c9d187afb
* Add test for InputReader location calibrationJason Gerecke2014-03-101-0/+6
| | | | | | | This patch adds a test for the new native location calibration code. The Java interface is not tested. Change-Id: Id7496486f6b6e2ade12ada607b62d1594af488e8
* Initialize mAffineTransform and update on modificationJason Gerecke2014-03-101-0/+9
| | | | | | | | This patch causes the InputReader to update its mAffineTransform to reflect the currently-set calibration on startup and whenever its value is changed through the InputManagerService. Change-Id: I4719122a28afa9833772040f0433780a84240b9d
* Introduce mAffineCalibration for location calibrationJason Gerecke2014-03-101-0/+21
| | | | | | | | The variable mAffineCalibration describes the affine transformation that should be applied to the raw X/Y location in order to get it into a calibrated state. Change-Id: I68aa43420ffe7fcaa1ada4acd7390d37e6966a1f
* Add touch.wake IDC property to control wakeup.Jeff Brown2014-02-261-0/+2
| | | | | | | | | | | Normally we do not wake the device when the internal touch screen is touched. This behavior can now be configured by setting a property in the input device configuration file. Add the following line to the IDC file to enable an initial touch to wake the device from sleep. touch.wake = 1 Change-Id: Ifd6d4f51afacd30d85f475725a66e6fcccde9cbb
* Move inputservice over to frameworks/nativeMichael Wright2014-02-111-0/+1818
| | | | | | | | | | Add all of the underlying input system pieces, minux PointerController and SpriteController, to inputflinger. This is in preparation for moving input to its own process and the addition of the input HAL. Try 2. Change-Id: I5f571fe86eb570885ae994e1f0552fb558930346
* Revert "Move inputservice over to frameworks/native"Michael Wright2014-02-101-1818/+0
| | | | This reverts commit 2dceb67f1f32bd2ec589c4ac3d83da0b8dbe4a5c.
* Move inputservice over to frameworks/nativeMichael Wright2014-02-101-0/+1818
Add all of the underlying input system pieces, minux PointerController and SpriteController, to inputflinger. This is in preparation for moving input to its own process and the addition of the input HAL. Change-Id: I1419a740b38756bd0d54fef5f5ca337e6815b1b0