summaryrefslogtreecommitdiffstats
path: root/include/androidfw
Commit message (Collapse)AuthorAgeFilesLines
* Correct executable bit for source filesKenny Root2013-04-131-0/+0
| | | | | | | | | | Many media files and source code files were marked as executable in Git. Remove those. Also a shell script and python script were not marked as executable. Change-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5 Signed-off-by: Chirayu Desai <cdesai@cyanogenmod.org>
* Squashed commit of the theme engine support.Ricardo Cerqueira2012-11-245-1/+713
| | | | | | | | | | | | | | | | | | | | | | | | | | Updated 4.2 support for the old T-Mobile theme engine, as usual needs the provider and switcher apps installed as well. I'm finally dropping the 400+ commit history on this, since everybody else keeps picking it up from CM as a single patch anyway... But for the record, nothing of this would be possible without Josh, Ed, and the rest of the TMo guys who wrote and maintained it until 2.2: amit chabra <amit.chabra@t-mobile.com> Amit Kohli <amit.kohli@t-mobile.com> Chris Cogar <chriscogar@t-mobile.com> Dirk Sigurdson <dirk.sigurdson@t-mobile.com> Ed Carrigan <edward.carrigan@t-mobile.com> Gaurav Sharma <gaurav.sharma3@t-mobile.com> Hui Feng <hui.feng@t-mobile.com> John Ritz <john.ritz1@t-mobile.com> Josh Guilfoyle <josh.guilfoyle@t-mobile.com> Mark Roberts <mark.roberts48@t-mobile.com> Pankaj Kumar <Pankaj.kumar6@t-mobile.com> Samuel Cheung <samuel.cheung@t-mobile.com> Sergey Ten <sergey.ten6@t-mobile.com> Change-Id: I7148d51be48f28a2dc4bdf9ec9018f04b268ffc4
* Make input system aware of multiple displays.Jeff Brown2012-09-101-0/+9
| | | | | | | | | | | | | | | | | | | | The input system needs to know about the window that has focus, even if it is on a secondary display. So now we send it the list of all windows and indicate which display they are on. We filter the list of windows as necessary when delivering touch events. To keep things simple, monitor input channels and input filters are not supported except on the main display. We also do not pass the display id to applications; it is only used inside the input system for now. Properly scale touch coordinates based on the viewport. This will be needed to ensure that touch works on external display as well as when the internal display is being used to simulate a different resolution. Change-Id: I1815579a52fcc852c519b5391fc7ab8767c2dc59
* Add support for "-rtl" in resourcesFabrice Di Meglio2012-08-231-2/+10
| | | | | | - fix bug #7035019 Need to have "-rtl" support for Resource Change-Id: Ic82145c2ac672729d8a6c695a5f343276a1a0a2c
* Move and rename user activity event type constants.Jeff Brown2012-07-271-4/+4
| | | | Change-Id: Ie565808796773b6896e71ddfac6aaaf8031de846
* Add new ASSIST key and map it to the global assist intent.Jeff Brown2012-06-141-0/+1
| | | | | | | | | Moved some duplicate code from SearchPanelView and LockScreen over to SearchManager to avoid creating yet another copy of it in PhoneWindowManager. Bug: 6594275 Change-Id: Ib4ebcd6817639d17548952ab2ce7cb876c05777c
* Port the legacy velocity tracker strategy.Jeff Brown2012-06-041-0/+39
| | | | | | | | For comparison purposes, port the legacy velocity tracker algorithm as it behaved prior to ICS. Bug: 6413587 Change-Id: I7e8e56584dcdb1a3c660ca9d8f9c5bd5d868e449
* Implement a second order integrating VT strategy.Jeff Brown2012-06-041-7/+9
| | | | | Bug: 6413587 Change-Id: I51bc7b8cbff22b10b728fc84ee15370e9984dd55
* Implement a weighted least squares VelocityTracker strategy.Jeff Brown2012-06-041-1/+19
| | | | | | | No change to the default strategy. Bug: 6413587 Change-Id: I08eb6f9a511e65ad637359b55b5993c26ba93b40
* Implement an integrating VelocityTracker strategy.Jeff Brown2012-06-031-0/+33
| | | | | | | | | | | This algorithm better tolerates certain kinds of errors in the touch input than the least squares strategy but it may underestimate the velocity of accelerating movements. This algorithm is mainly of interest as a baseline for testing and comparison with the least squares algorithm, which remains the default. Bug: 6413587 Change-Id: I8ddb50084e44875e234717907e5b06d03f59788c
* Make velocity tracker strategy configurable.Jeff Brown2012-06-031-6/+14
| | | | | | | | | | This change is very useful for testing purposes because it makes it easy to compare different implementations to see how they behave. There is no change to the current default strategy. Bug: 6413587 Change-Id: I4d8567aa4160571ba9fa397ce419882cd9366749
* Detect when pointer has stopped moving.Jeff Brown2012-05-141-1/+5
| | | | | | | | | | | | Some input devices do not generate ACTION_MOVE events while all pointers have stopped, thereby lulling the VelocityTracker into a false sense of complacency. Before handling the following sample, reset the VelocityTracker state so as not to be influenced by earlier samples before the pointer stopped. The velocity after stopping is assumed to be discontinuous. Bug: 6413587 Change-Id: I6387bc036ff141d083d3d17a89e37eeaa3188349
* Improve touch event resampling.Jeff Brown2012-05-142-3/+23
| | | | | | | | | | | | | | | | | | | Fixed a few bugs related to the id-to-index mapping for pointer coordinates. Tightened the bounds on the resampling time interval to avoid predicting too far into the future. Only lerp X and Y components of motion events. Alter the future to satisfy past predictions. (Rewrite touch events to conceal obvious discontinuities.) Added a system property to control whether resampling is enabled for debugging purposes. Bug: 6375101 Change-Id: I35972d63278bc4e78148053a4125ad9abeebfedb
* More VelocityTracker refactoring.Jeff Brown2012-05-131-15/+56
| | | | | Bug: 6413587 Change-Id: Ida1152e7a34d5fe5caab5e6b5e1bc79f6c7a25e6
* Minor refactoring before starting on velocity tracker changes.Jeff Brown2012-05-113-177/+231
| | | | | Bug: 6413587 Change-Id: I5eba2bb57193bff78cb3740de5f87aca0b31d154
* Fix bugs in fallback key handling.Jeff Brown2012-05-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If a fallback key is generated using a key plus a modifier, then it's possible we might get a different fallback key generated if the modifier has changed. PhoneWindowManager needs to remember which fallback is last generated for a given key code so that it can apply the same fallback action. When generating cancellation events, it's important to have preserved the policyFlags of the original event. Otherwise we may not dispatch the cancellation properly. For example, some actions are not performed if the POLICY_FLAG_TRUSTED is not specified. Remember the metaState associated with a key event so we can include it when canceled. Tell the policy when a fallback is being cancelled so that it can clean up its state. After a SEARCH shortcut is invoked, clear the flag indicating that a shortcut is pending. This is to prevent SEARCH from getting stuck down in the case where we might forget to send the up. (Shouldn't happen anymore after the prior fixes.) Bug: 5616255 Change-Id: I68f0a9679c7af464eaf31c099f2aa50b53fecf1f
* Improve handling of built-in keyboard.Jeff Brown2012-05-012-32/+3
| | | | | | | | | | | | | | | | | The window manager policy made some incorrect assumptions about the meaning of the Configuration.keyboard field. We need to be more careful about distinguishing between built-in and external keyboards. Most of this change is to move the determination of the parts of the Configuration related to input devices into the WindowManagerService leveraging new features of the InputManagerService to good effect. Then we plumb through the flag that indicates whether a device is internal or external so that we can be more particular about how the lid switch effects changes to the Configuration. Bug: 6424373 Change-Id: I36a1c22ade35e578955465a25940a33f227b9763
* Resample touch events on frame boundaries.Jeff Brown2012-04-272-6/+68
| | | | | Bug: 6375101 Change-Id: I8774e366306bb2b6b4e42b913525bf25b0380ec3
* Get alias for Bluetooth devices.Jeff Brown2012-04-201-6/+9
| | | | | | | | | | | Bluetooth devices can be renamed by the user. Make the input system aware of the user-specified name and transparently pass it down to applications. This enables the keyboard layout picker Settings UI to use device names that are consistent with what the user set in the Bluetooth UI. Bug: 6363157 Change-Id: I8eea26ce2c69c2a3f09c8de02e9e847610e0419c
* Improve handling of certain keyboard layout properties.Jeff Brown2012-04-181-0/+2
| | | | | | | | | | | | | | | Automatically choose a default value for the 'number' property based on the characters that the key can generate. Don't generate any character when ctrl, alt or meta is pressed unless the behavior exactly matches the modifier keys that are pressed. Simplified the basic keyboard layouts taking into account the new features. Bug: 6110399 Change-Id: Ibc0f0b50c2dcf3f962a33ac77c24d2993b77637d
* Add Dvorak keyboard layout.Jeff Brown2012-04-171-0/+9
| | | | | | | | | 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
* Support loading keyboard layout overlays from resources.Jeff Brown2012-04-171-2/+27
| | | | | | | | | | | | | | | | | | | | | | 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
* Add support for input devices that have vibrators.Jeff Brown2012-04-131-0/+4
| | | | | | | | | | 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
* Notify applications when input devices change.Jeff Brown2012-04-121-1/+4
| | | | | | | | | | | | | | | | | 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
* Refactor key code mapping.Jeff Brown2012-04-111-2/+6
| | | | | | | | | | | | | | | | | | | 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
* Request key maps from input manager service.Jeff Brown2012-04-106-120/+181
| | | | | | | | | | | | | | | | | | 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
* Add a unique input device descriptor.Jeff Brown2012-04-061-18/+28
| | | | | | | | | | | | | 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
* Add Japanese specific key codes.Yang Chuang2012-04-021-0/+8
| | | | | | | | | These keys are specific to Japanese hardware keyboard which can be used by input method. Patch ported from AOSP, with the addition of EISU and KANA mappings. Change-Id: I647473cdd257458e3b9d134b0fc623eae946c3e0
* frameworks/base: move Zip* from libandroidfw to libutilsColin Cross2012-03-224-391/+1
| | | | | | | ZipUtils is needed by build/tools, move it from libandroidfw (frameworks/base) to libutils (frameworks/native). Change-Id: I2b4b7adcdf68eb25ee7cba5dd3b69eadf0523af3
* Fix spurious ANRs in native activities.Jeff Brown2012-03-132-1/+43
| | | | | | | | | | | | | | Some native activities experienced ANRs when the input consumer deferred an input event due to client-side batching. If the input channel was fully emptied then the client had no way of knowing that it should wake up to handle the deferred input event. This patch also fixes some lock issues in the native activity input queue implementation. In at least one error case, it was possible for a function to exit without releasing the lock. Bug: 6051176 Change-Id: I4d9d843237e69b9834f8d8b360031b677fcab8c3
* move CursorWindow from libbinder to libandroidfwMathias Agopian2012-02-271-0/+193
| | | | Change-Id: I3b304e4f74e0d0ec8b20c57296c62449c9a0f792
* frameworks/base refactoring.Mathias Agopian2012-02-1710-0/+3221
| | | | | | step 2: move libutils headers to their new home: androidfw Change-Id: I14624ba23db92a81f2cb929f104386e1fab293ef
* frameworks/base refactoring.Mathias Agopian2012-02-178-0/+2072
First step. Move libui includes to their new home: androidfw. Change-Id: Ic042b52fdba72f30edc3cc6339bf30b4c1b99662