0023d0e0c4f5339b299d1eacbd4e7181c2fd271f |
|
10-Jul-2014 |
Yohei Yukawa <yukawa@google.com> |
Polish new IME API for L part 2: CursorAnchorInfo This CL addresses feedbacks from internal customers for new input method APIs that are mainly used for physical keyboard support in L. For performance reasons, #onUpdateCursorAnchorInfo is not called back by default and each input method has to enable this event notification explicitly whenever fine-grained character locations are needed. In L-preview, InputMethodSession#setCursorAnchorMonitorMode was introduced for this purpose. However, we got several feedbacks to be addressed. - The effect of #setCursorAnchorMonitorMode is not preserved during focus change. IMEs need to call #setCursorAnchorMonitorMode every time when #onStartInput is called. This is tricky and hard to understand. - As #onUpdateCursorAnchorInfo is a new API, not all applications/text editors have supported it. Therefore IMEs can't always rely on it. However, there is no way to query if the attached target is supporting this new API or not. It would helpful for IME authors if we can provide a reliable way to query if the attached input target is supporting the new API or not. In order to address these issues, the triggering method has moved from InputMethodSession to InputConnection in this CL, as an analogy of existing InputConnection#getExtractedText API, which has provided similar functionality including optional reactive event callbacks from the application to the IME. BUG: 15812658 BUG: 16118603 Change-Id: I3c6b69bd9d79b199afe68d838f25effa6048e5cc
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
3d1e8129ebd69db49d80e5d598f608c59b884cdf |
|
06-Jun-2014 |
Yohei Yukawa <yukawa@google.com> |
Introduce a sequence number to avoid redundant IPCs This CL introduces a sequence number to avoid redundant IPCs between IMM and IMMS. The basic concept is that: 1. IMMS maintains a sequence number for #notifyUserAction. 2. IMMS increases the sequence number whenever the current IME/subtype is changed. 3. IMMS notifies the new sequence number to IMM. 4. IMM maintains the last sent sequence number and the next sequence number. IMM should call #notifyUserAction only once per particular sequence number. 5. IMMS ignores #notifyUserAction if the specified sequence number is not the expected one. BUG: 7043015 Change-Id: I19ad8542659bc092b92ee13eb9f1d68ddd4b815a
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
0297051162193ef2b7d906409868e404f77e4c31 |
|
05-Jun-2014 |
Yohei Yukawa <yukawa@google.com> |
Trivial method renaming for notifyTextCommitted This CL does not change existing behavior but only renames notifyTextCommitted with notifyUserAction so that we can use not only text commit but also other actions such as just typing a character will be used as a trigger to update the IME rotation order for better IME switching experience. BUG: 7043015 Change-Id: I7f3e13a7226ef0dceee82b67e8a0d8536f7e9807
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
b7b7907fb5e4b2252b3c594a6bc4402217fe662a |
|
25-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
Allow IMEs to start/stop receiving onUpdateCursor callback This CL introduces an API which allows IMEs to start/stop receiving onUpdateCursor callback upon their request. BUG: 13388665 Change-Id: I987326872def181dda5d9d701b762f088e0d9c39
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
de69575dd1bdafabda8afda8b4251b830ba0c551 |
|
12-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
Merge "Preserve the order of InputMethodManager method calls"
|
f06569561fe1c6e898debf8bb9f37331a9f87323 |
|
03-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
Introduce InputMethodSubtypeArray for memory efficient IPCs This CL introduces InputMethodSubtypeArray which compresses multiple instances of InputMethodSubtype to reduce the risk of TransactionTooLargeException during IPCs. There are some IMEs which rapidly adding new subtypes into their supported language list. One problem here is that each instance of InputMethodInfo internally owns the list of supported subtypes. Basically it requires additional 200 ~ 300 bytes for each subtype when InputMethodInfo is transffered via IPCs. We should keep the size less than 100 KB in typical scenario. With this CL, the list of InputMethodSubtype is marshalled with GZIP compression. Approximately one InputMethodInfo is marshalled within 10 KB even when it has 100 subtypes. No negative performance impact is observed so far. The cost of decompression seems to be compensated by another optimization in this CL. Actually marshalling cost is reduced with this CL by caching the compressed data on demand. BUG: 12954290 Change-Id: Ibb2940fcc02f3b3b51ba6bbe127d646fd7de7c45
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
9e9fbb26395eb983e17a415cf78b3c2ee060ee0e |
|
05-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
Preserve the order of InputMethodManager method calls This CL allows the Framework class InputMethodManager to behave in a more deterministic way, that is to say, with an I/O barrier. InputMethodManager#setAdditionalInputMethodSubtypes is internally implemented as a RPC to the corresponding counterpart in InputMethodManagerService. The problem here is that this RPC is marked as "oneway". As a consequence, this public API call returns immediately without waiting the additional subtypes are actually added. This behavior is also not documented so far unfortunately. See the following demo code: Final InputMethodManager imm = ...; imm.setAdditionalInputMethodSubtypes(id, subTypes); Final List<InputMethodInfo> ims = imm.getInputMethodList(); Currently, it is not guaranteed that the InputMethodInfo returned from #getInputMethodList reflects the result of the previous call of #setAdditionalInputMethodSubtypes because of its undocumented asynchronous nature. With this CL, InputMethodManager#setAdditionalInputMethodSubtypes behaves as if it has I/O barrier. This change should make it easy for IME developers to use additional subtype mechanism. BUG: 13033954 BUG: 13291370 Change-Id: I0f8d33b0c77129f72581bc43e7f4fdc25469b520
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
d7443c83ceae0bdd20d68bf84648cf3b40115d85 |
|
15-Oct-2013 |
Satoshi Kataoka <satok@google.com> |
Notify commitText event to InputMethodManagerService for the intelligent subtype switching Bug: 7043015 Change-Id: I11ed9a767588f8080753cd9bce011dac7db579ad
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
658c7b896a751b971db1292d86655dbb97f00067 |
|
10-Oct-2013 |
Satoshi Kataoka <satok@google.com> |
Introduce an API to get the recommended height of the InputMethodWindow Bug: 11035379 Bug: 5137498 Change-Id: I0e920ee79c526c3aea6872b063cf294e2ab081c8
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
2b10b52f6c08eb79f48f7388e2f1c69f58a9c96d |
|
21-Aug-2013 |
Satoshi Kataoka <satok@google.com> |
Add new API shouldOfferSwitchingToNextInputMethod Bug: 8364845 Change-Id: I6767f5640a07aa515a930645b0cf0b36fbe94831
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
b3c21ac7c661022534135bf688a75ec35fe3a8f2 |
|
07-Aug-2013 |
Satoshi Kataoka <satok@google.com> |
Reduce the transaction fee of getEnabledInputMethodSubtypeList Bug: 8467480 Change-Id: If18cce8fbe567df51f29adcdcedff3f743460b8b
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
c3a1914bd777575cee1917d99d14f05bfd128717 |
|
07-Aug-2013 |
Ken Wakasa <kwakasa@google.com> |
Revert "Reduce the transaction fee of getEnabledInputMethodSubtypeList" This reverts commit e9a6f9713ca48aab9a6c87e0645cb0a0af946a11. Change-Id: I611d31086d4f02aae5c7021ac92975bd92a59f34
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
e9a6f9713ca48aab9a6c87e0645cb0a0af946a11 |
|
07-Aug-2013 |
Satoshi Kataoka <satok@google.com> |
Reduce the transaction fee of getEnabledInputMethodSubtypeList Bug: 8467480 Change-Id: Ic1fddfe433e097041fcb09d1fd341d77d7d8b13b
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
0aec3ea6defdee1ee4a9c0d6c4a3c13df3e7b812 |
|
25-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
am 911b505f: am dc5fa185: am 133dc2d7: Merge "Fix issue #6048808: sometimes auto-correct is inactive" into ics-mr1 * commit '911b505f11c719906985f169a4f45930bdec8695': Fix issue #6048808: sometimes auto-correct is inactive
|
7663d80f6b6fd6ca7a736c3802013a09c0abdeb9 |
|
24-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #6048808: sometimes auto-correct is inactive 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
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
688bd47fccf1a1373e6287bc49b5b33fad12b7f3 |
|
09-Feb-2012 |
satok <satok@google.com> |
Add an api to switch to the next IME and subtype Bug: 5975302 Change-Id: I48aa4220159c65f456d61a324efcdf0a1ceec91c
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
ee5e77cafec2eae70890abdcc1646ed39b06eddd |
|
02-Sep-2011 |
satok <satok@google.com> |
Make setAdditionalInputMethodSubtypes async Bug: 5120261 Change-Id: Ic7869cfaa5361531e08d58d7dfa5ba0feab0613e
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
91e88122cf28a48fd2e2260da7d3d87dd437227a |
|
18-Jul-2011 |
satok <satok@google.com> |
Enable IMEs to set additional subtypes in background Bug: 4591792 Change-Id: I7e61a576c56d1a3a56001bdf2fd51ad3801add01
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
e7c6998e0a953ae55487d4fe122739646f9280aa |
|
03-Jun-2011 |
satok <satok@google.com> |
API to set additional subtypes Bug: 4321667 - Due to the voice team's strong request Change-Id: Ia8bbc277c0987bde996e6f65541877cec96a3ca1
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
f9f01008624e2d28c15a90d942fa36f98c8c967d |
|
19-May-2011 |
satok <satok@google.com> |
Add Apis to send notifications when the suggestion was picked - Due to a strong request from VoiceIME Bug: 4443922 Change-Id: Ia539de0acf66053e0349daec459d75e36805f6bf
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
68f1b78b7b9139a0e34285ff641a664e664a14b8 |
|
11-Apr-2011 |
satok <satok@google.com> |
Add an API to get the last used input method subtype Bug: 4075039 - Voice input requires to know the last used input method subtype. Change-Id: I603a4fb88a2af5195e52188adfa6585ad80304fa
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
857fd9b8562c29913e03ed29288bd1802d37dc60 |
|
28-Jan-2011 |
Joe Onorato <joeo@google.com> |
Plumb whether an input view is actually visible or not through from the IME to the status bar. Bug: 3391067 Change-Id: I049531155bf7ee0b29874916c0b5b0a45b73c09e
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
16331c8a1d33defccc5cbb18694def79196c921b |
|
20-Dec-2010 |
satok <satok@google.com> |
Add a parameter to InputMethodManagerService.getEnabledSubtype for allowing to select subtypes implicitly if no subtype is enabled. Bug: 3142286 Change-Id: I92d019d0648c552e6d7695c3530aa81ae054d702
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
440aab54cab106030f1edafea4dec1f9d8624f9b |
|
25-Nov-2010 |
satok <satok@google.com> |
Removed InputMethodSubtypePicker Change-Id: I08abac5d65a30c02cc671f4f70e93df25b6c8a92
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
2820351489537698ad153c6397edf3270455edc5 |
|
24-Nov-2010 |
satok <satok@google.com> |
Add an API to set InputMethodAndSubtype Change-Id: I66f1a4c8e0d98705614f12a737e7efcd0263b72a
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
4e4569dab5c75804b01a19b2d6e6101b445c1c68 |
|
19-Nov-2010 |
satok <satok@google.com> |
Add an API to get shortcut IMEs - If there are no selected shortcut IMEs, the most applicable voice input will be selected as a shortcut IME Change-Id: Ibd0f7ef5101013569c303820a3adc9038a97356d
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
67ddf9cbd5d7133c7f443cd3c55841ed1109c3a0 |
|
17-Nov-2010 |
satok <satok@google.com> |
Add a function to get enabledInputMethodAndSubtype Change-Id: Ie97635343249aa63e33028c2843cab103125ca92
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
b66d287e3003a0934d5714fbf15e554b3c814906 |
|
09-Nov-2010 |
satok <satok@google.com> |
Add a setter of InputMethodSubtype to InputMethodManager - Public API: void setCurrentInputMethodSubtype(int pos) Change-Id: I55daa19ba924999def544bf841f00bf54852f3e1
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
735cf38b8c7f8f91ad087511e44fe79018fa61d6 |
|
11-Nov-2010 |
satok <satok@google.com> |
Add a function to switch back to the last used IME Change-Id: Iac7bcc2ee16dd04d91a3e75b160622d246788c9a
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
06487a58be22b100daf3f950b9a1d25c3ea42aa2 |
|
29-Oct-2010 |
satok <satok@google.com> |
Add a functionarity for showing / hiding IME button on the system bar Bug: 3077030 - IME communicates with status bar directly. Change-Id: Ic5b6b5b7a2b8ea62372dcc9b9c36d81b9f2db651
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
04d50204705c9da52b218f11972da4e7d7a9cb84 |
|
25-Oct-2010 |
satok <satok@google.com> |
Show Subtype Icon properly in the system status bar - Added API for getting the current subtype - Added functions for show/hide status icon Change-Id: Ifcaad00f7f4c658cdb3af367387476bbf316eb19
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
47a44916e2fb33cf4751906386d5f5c903b28d8b |
|
06-Oct-2010 |
satok <satok@google.com> |
Add InputMethodEnabler for enabling input methods and subtypes - Copyed functionarity from LanguageSettings.java TODO: Save enabled InputMethodSubtypes Change-Id: I7b4fb1a79cb8b3229f88773d261430e23ba7aae2
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
ab751aa085433e9f735d2e7603459c6c7e9d2fb0 |
|
14-Sep-2010 |
satok <satok@google.com> |
Add methods for managing subtypes - added showInputMethodSubtypePicker to public API -- show the selector dialog for subtypes - added getter, setter and event handler to InputMethodManagerService - extract InputMethodSubtype to the top level class for using it in aidl - TODO: make an enabler for input method subtypes - TODO: handle the event of changing an input method subtype in LatinIME Change-Id: I49f8c6675ac4b06511635d14a37bd398738eff33
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54 |
|
09-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@137197
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
4df2423a947bcd3f024cc3d3a1a315a8dc428598 |
|
05-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@136594
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
da996f390e17e16f2dfa60e972e7ebc4f868f37e |
|
13-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@131421
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
d24b8183b93e781080b2c16c487e60d51c12da31 |
|
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
9266c558bf1d21ff647525ff99f7dadbca417309 |
|
16-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@126645
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
b798689749c64baba81f02e10cf2157c747d6b46 |
|
10-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@125939
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|
f013e1afd1e68af5e3b868c26a653bbfb39538f8 |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl
|