summaryrefslogtreecommitdiffstats
path: root/services/java/com/android/server/InputMethodManagerService.java
Commit message (Collapse)AuthorAgeFilesLines
* Fix an issue on showInputMethodPickerFromClientSatoshi Kataoka2012-10-091-1/+3
| | | | | Bug: 7302748 Change-Id: Iff4345d26b3d6e4bfedf893bbd6a864c771df01d
* Fix the issue on the input method switch pickerSatoshi Kataoka2012-10-051-2/+2
| | | | | Bug: 7292731 Change-Id: I8cb51dd01e4c467fff511d4ecee79426f9b2ed80
* Close the current input method when attached view doesn't have a handlerSatoshi Kataoka2012-10-031-1/+1
| | | | | Bug: 7187452 Change-Id: Iba4f7ac89f5806e871aaeb97f366935b83b95a5a
* Always accept API calls from processes which have INTERACT_ACROSS_USERS_FULL ↵Satoshi Kataoka2012-10-011-11/+29
| | | | | | | in InputMethodManagerService Bug: 6931482 Change-Id: I1620413578b9e8da6564664219f65bdc00d5ecfd
* Fix ime swtich issueSatoshi Kataoka2012-09-281-0/+3
| | | | | Bug: 7250097 Change-Id: Ibe85aaf7d60e7c3a27363eece528d19a0c8ddca2
* Treat additional inputmethod subtypes per userSatoshi Kataoka2012-09-271-11/+17
| | | | | Bug: 6931482 Change-Id: I4f7c7e69a80534da3a48ac508ff7a9e7511f33ce
* Enable multi-user function for IMFSatoshi Kataoka2012-09-261-135/+402
| | | | | | Bug: 6931482 Change-Id: Ib23849d352db33f0747aa9d5a178f00ac726c13b
* Add subtypeId for keeping enabled "InputMethodSubtype"s even if subtype ↵Satoshi Kataoka2012-09-041-11/+15
| | | | | | | parameters are changed Bug: 6752230 Change-Id: I3a2d512e395fe8645edf6ab82108948b927c629a
* Window position not reported if the window is not moved.Svetoslav Ganov2012-08-061-10/+20
| | | | | | | | | | | 1.If a window is shown but never moved the window window is never notified for its current location. Therefore, accessibility nodes do not contain correct bounds in screen coordinates. bug:6926295 Change-Id: I7df18b095d33ecafffced75aba9e4f4693b0c393
* Make AtomicFile a public API. It's about time!Dianne Hackborn2012-07-311-1/+1
| | | | Change-Id: Ib34e294747405b7ab709cb0bbb2d9a0cc80ce86a
* Workaround: Never reset the default IME if the system is not readysatok2012-06-211-1/+10
| | | | | Bug: 6685037 Change-Id: Ifb311f85154beadd4787ec73669bedfdf1f5172d
* Show even fewer notifications in Setup.Daniel Sandler2012-06-141-0/+4
| | | | | | | | | | | | | | | | | Restricting to pkg="android" didn't filter out things like open wifi networks, etc. So now we have a whitelist: notifications must be sent the "android" pseudo-package, *and* they must have one of these "kind" tags: - android.system.imeswitcher (IME switcher, needed by SUW) - android.system.update (OTAs) Note that OTAs currently use a fullScreenIntent, so they bypass this logic anyway, but for consistency's sake we now allow OTA icons in the status bar explicitly. Bug: 6645469 Change-Id: Ib2e2f22d7a0817a1acaf8137ed4f3c7d3ddf8af5
* Fix issue #5680541: onStartInputView called upon focus lossDianne Hackborn2012-05-221-21/+18
| | | | | | | | | | | We should tell the app that it is inactive, before unbinding. Otherwise when it is told to unbind it will see that it is still supposed to be active and immediately re-bind. Also change the calls to set the active state to go through the message dispatch path, to ensure ordering is correct. Change-Id: I246241eac8f7521f42c4c1eee7f46097337e7303
* Fix issue #6499411: Characters not displayed (but suggestion bar is working)Dianne Hackborn2012-05-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The problem was that when dismissing the lock screen, the window manager would briefly turn off force hiding when it started animating the transition and then turn it back on until the transition was done. This would cause it to briefly switch focus to the app behind and then take focus off it. The app would find out it got focus, and re-start input on itself, asking the input method service to do so. At this point the input method service would ask the window manager if the caller really had focus, and it may or may not be told no depending on the timing. If it is told no, then it doesn't allow the focus switch to happen at that point, ignoring the new input connection, and ultimately when focus does really switch the IME is left talking with an old dead input connection. I added some code to the input connection to make sure when we are no longer using one that we mark it inactive and can't use it. This bug was especially difficult to track down because it would only visibly break when a GC happened during this time, causing the weak reference on the input connection to become null. With this change it will now always break (though in the scenario here only if you hit the race condition correctly). Change-Id: I81a6164dc140c548da1a9736e42cd253e8238a80
* Fix the issue on the inconsistent condition of InputMethodSubtypesatok2012-05-211-21/+30
| | | | | Bug: 6510104 Change-Id: I67790e5f59d0d05340b74eca1029c60f381061b8
* Consolidate the initialization of InputMethodManagerService not to use ↵satok2012-05-181-16/+43
| | | | | | | | resource values until system ready Bug: 6477193 InputMethodManagerService have used the resource value of "isDefault" in the constructor. We should wait to use that value until system ready. Change-Id: I682fc109c303d8c7fd33d494c59e8e28d6dc6fa5
* Fix the issue that the insets linger after closing the voice inputsatok2012-05-101-0/+4
| | | | | Bug: 6456954 Change-Id: Idf7700271cf882dfbf35c9d16f0f173a791221bc
* Fix sort order of the input method switcher in IMMSsatok2012-05-091-4/+56
| | | | | Bug: 6333988 Change-Id: Ief392c9157f2a37600e517ec9caf586ffb9d5f0d
* Do not return stale subtypessatok2012-05-081-29/+45
| | | | | Bug: 6294329 Change-Id: I3f0713f94c291298dfd447d1b65bd7c6d2858492
* Reset the default system ime to the proper one when the system locale is changedsatok2012-05-031-23/+101
| | | | | | | | | | The framework automatically enables only valid system default IMEs and IMEs that have at least one English subtype at the initial boot and system locale changes. Settings: I9af4065e4b9f933 Bug: 6422666 Bug: 6422390 Change-Id: I0b86ddba692144521f30e0b9086ddd67bfb9a793
* Move handling of package changes to a background thread.Dianne Hackborn2012-04-191-1/+1
| | | | | | Helps get rid of some jank when installing applications. Change-Id: I97d0022f82d67796e334d37086e5911dd6ca6b62
* Support loading keyboard layout overlays from resources.Jeff Brown2012-04-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | 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
* Show physical keyboard control button on the input method switch dialogsatok2012-04-111-3/+69
| | | | | Bug: 5240095 Change-Id: Ica768083f95c33dc1e494a28ba7d8b6eb989b0ef
* Hide ongoing notification icon when the screen is locked.satok2012-04-021-3/+7
| | | | | Bug: 5858903 Change-Id: Ibee9123f4a520e77f4baf8bdd3d75364ab451100
* am 911b505f: am dc5fa185: am 133dc2d7: Merge "Fix issue #6048808: sometimes ↵Dianne Hackborn2012-02-241-33/+78
|\ | | | | | | | | | | | | auto-correct is inactive" into ics-mr1 * commit '911b505f11c719906985f169a4f45930bdec8695': Fix issue #6048808: sometimes auto-correct is inactive
| * Fix issue #6048808: sometimes auto-correct is inactiveDianne Hackborn2012-02-241-33/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | My previous change to speed up the time the IME is dismissed was fundamentally flawed. That change basically switched the order the application called the input method manager service from doing startInput() and then windowGainedFocus(), to first windowGainedFocus() and then startInput(). The problem is that the service relies on startInput() being done first, since this is the mechanism to set up the new input focus, and windowGainedFocus() is just updating the IME visibility state after that is done. However, by doing the startInput() first, that means in the case where we are going to hide the IME we must first wait for the IME to re-initialize editing on whatever input has focus in the new window. To address this, the change here tries to find a half-way point between the two. We now do startInput() after windowGainedFocus() only when this will result in the window being hidden. It is not as easy as that, though, because these are calls on to the system service from the application. So being able to do that meant a fair amount of re-arranging of this part of the protocol with the service. Now windowGainedFocus() is called with all of the information also needed for startInput(), and takes care of performing both operations. The client-side code is correspondingly rearranged so that the guts of it where startInput() is called can instead call the windowGainedFocus() entry if appropriate. So... in theory this is safer than the previous change, since it should not be impacting the behavior as much. In practice, however, we are touching and re-arranging a lot more code, and "should" is not a promise. Change-Id: Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb
* | Add an api to switch to the next IME and subtypesatok2012-02-101-56/+130
| | | | | | | | | | | | Bug: 5975302 Change-Id: I48aa4220159c65f456d61a324efcdf0a1ceec91c
* | Enable subtypes when the implicitly enabled subtype is not ascii capable ↵satok2012-01-111-6/+25
|/ | | | | | | | keyboard Bug: 5806103 Change-Id: I1a83b227498073c47567f73566043c273809adc9
* Hide/show ime switch icon properlysatok2011-11-181-10/+17
| | | | | Bug: 5481999 Change-Id: I4b3dde7285a9ac49da8d5d1133fddd0807b03f4d
* Various performance and other work.Dianne Hackborn2011-10-311-2/+27
| | | | | | | | | | | | | | | | | | - IME service now switches between visible and perceptible depending on whether it is being showm, allowing us to more aggressively free its memory when not shown. - The activity display time is no longer delayed by the activity transition animation. - New -R (repeat) option for launching activities with the am command. - Improved some documentation on Loader to be clear about some methods that apps should not normally call. - FrameworkPerf test now allows you to select individual tests to run. Change-Id: Id1f73de66dc93d63212183958a72119ad174318b
* Hide ime switcher when the screen is turned off.satok2011-10-281-9/+11
| | | | | Bug: 5481999 Change-Id: Ifc870f1350db2a67405c05f6de447a69dc050408
* Fix a warning from the binder, step 3.Jean Chalard2011-10-201-6/+8
| | | | | | | | | | | | This patch fixes the following warning: W/Binder: The following Binder class should be static or leaks might occur: com.android.server .InputMethodManagerService.MethodCallback ...in hope of removing a possible memory leaks. Bugs: 5481376, 5461066 Change-Id: I1764090a7059d9bf9e5d90683d7ac190c83415de
* Fix the behavior for choosing new default IME not to choose an auxiliary IME ↵satok2011-10-101-5/+12
| | | | | | | | as the default IME Bug: 5420127 Change-Id: I3649de36806fc24e1c85c2b15db5e37acad1f120
* Prioritize the order of subtypes in method.xml for implicitly enabled subtypessatok2011-10-031-5/+7
| | | | | Bug: 5401115 Change-Id: I6d9229cd266e27b68a6b9a2892aabfba4fe4de00
* Fix a logic to recconect IME in InputMethodManagerServicesatok2011-09-301-1/+2
| | | | | | Bug: 5380216 Change-Id: I7af67265eebbd28f002210d7ac90dd18f1858f66
* Fix the visiblity of the ime switcher icon.satok2011-09-121-1/+3
| | | | | Bug: 5288866 Change-Id: I99b4aee36c337b2fab1116e9245ddecd826c840c
* Do not show the label for auto subtypessatok2011-09-061-2/+4
| | | | Change-Id: Ie62d0b83f2fcb2c93d3935bcaa5121d2adc56b7d
* Two line item for the IME switcher dialog.Ken Wakasa2011-09-061-35/+80
| | | | | bug: 5098770 Change-Id: I2b955973e7f223d8c98d8dac6aaa657a7a31b555
* Merge "Add an option for the implicitly selected subtype"satok2011-09-021-8/+41
|\
| * Add an option for the implicitly selected subtypesatok2011-09-021-8/+41
| | | | | | | | | | Bug: 5057886 Change-Id: Iddde4724891501b4f18cade6a3d2c64b6124e58a
* | Make setAdditionalInputMethodSubtypes asyncsatok2011-09-021-5/+5
|/ | | | | Bug: 5120261 Change-Id: Ic7869cfaa5361531e08d58d7dfa5ba0feab0613e
* Fix crash in setAdditionalInputMethodSubtypessatok2011-08-311-2/+7
| | | | | Bug: 5142455 Change-Id: I5eca4c1a3d9a964db04c819fc671670ef1b81817
* Fix set additional subtypes.satok2011-08-311-7/+1
| | | | | Bug: 5102787 Change-Id: Ic38db8c33b6496a083e8158cd79fb54c21187b04
* Do not show auxiliary subtypes on the lock screensatok2011-08-261-4/+4
| | | | Change-Id: Id7cf5d122968790ba6d75d3b047d45ea99e4d0f6
* Dismiss the ime switch notification properlysatok2011-08-251-4/+5
| | | | | | Bug: 5159818 Change-Id: I606294dd453d3cc105714c62b945fcf1fa11164d
* Add progress dialog for booting after an upgrade.Dianne Hackborn2011-08-221-37/+48
| | | | | | | | | | This introduces a new facility for code during the boot process to display messages to the user through a progress dialog. This is only for use when performing longer-than-usual post-upgrade operations such as running dexopt on applications or upgrading databases. Change-Id: I0e78439ccec3850fb67872c22f235bf12a158dae
* Display the current ime and subtype name in the ongoing notificationsatok2011-07-231-3/+11
| | | | | Bug: 4903422 Change-Id: I3eaeb3decb75f687ad2af0d80340b819229c3ebe
* Delay load the settings for the ongoing ime swithersatok2011-07-221-3/+5
| | | | | Bug: 5029803 Change-Id: I488ff7804a986b71bf01b3dfad0e65fd4707965d
* Adding accessibility support to the Status Bar.Svetoslav Ganov2011-07-211-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | 1. Added content description to pretty much all animals in the zoo including buttons in the navigation bar, notifications and status icons for battery, signal, data, etc. 2. Rectored to avoid ovelaying views since they block touch exploratino. In general overlaying views cause trouble for touch exploration and accessibility in general. 3. Avoid sending accessibility events in case the user is touching outside of the StatauBAr panels to avoid confusion. 4. Added records to accessibility events in the places where this would help the presentation. So the event comes from a given "leaf" view and its predecessor is adding a record to the event for itself to provide more cotext. It is up to the accessiiblity service to choose how to present that. bug:4686943 Change-Id: I1c1bd123d828fb10911bca92130e9a05c1f020b3
* Merge "Hide "Configure input method" button when the screen is locked."satok2011-07-181-1/+6
|\