54de77470de4f605eef7f4b4e01718b301fe275e |
|
12-Jan-2017 |
Elliot Waite <elliotwaite@google.com> |
Fix @links in reference docs. Change-Id: I40cea46efd80c448640ff69753698fe8404da40b
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
45700fa135e83ed44e4b69ca60cf12960a5898d7 |
|
24-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Use a flag to grant a temporary URI permission. It turns out that we can let the system to call InputMethodService#exposeContent(InputContentInfo, EditorInfo), which added in my previous CL [1], during the IME is calling InputConnection#commitContent() as follows. [IME] InputContentInfo contentInfo = new InputContentInfo( contentUri, new ClipDescription(description, new String[]{mimeType}), linkUrl); getCurrentInputConnection().commitContent( inputContentInfo, InputConnection.INPUT_CONTENT_GRANT_READ_URI_PERMISSION, null); [App] try { contentInfo.requestPermission(); // Load inputContentInfo.getContentUri() here. } finally { contentInfo.releasePermission(); } This gives us flexibility to let InputConnection#commitContent() do all the magic for IME developers like other APIs such as Context#startActivity(), rather than asking them to call one more API to grant a temporary URI permission like a scenario where Context#grantUriPermission() is used. [1]: I2772889ca01f2ecb2cdeed4e04a9319bdf7bc5a6 25e0813e6eb6315b1016db805fa9b791b4ae5cc2 Bug: 29450031 Change-Id: I99536cd58c9984af30b0bafb4a1dd25a26634a2d
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
25e0813e6eb6315b1016db805fa9b791b4ae5cc2 |
|
23-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Add InputMethodService#exposeContent() This is a follow up CL to my previous CLs [1][2] that introduced InputConnection#commitContent(InputContentInfo, Bundle) API to enable IMEs to send a content to the target application. With this CL, IME developers are able to temporarily expose InputContentInfo object to the target package without permanently granting URI permission. Although calling IMS#exposeContent() is allowed only for the IME that is currently selected, the client is able to request a temporary read-only access even after the current IME is switched to any other IME as long as the client keeps InputContentInfo object. Here is a sample code snippet about how to use this mechanism. [IME] InputContentInfo contentInfo = new InputContentInfo( contentUri, new ClipDescription(description, new String[]{mimeType}), linkUrl); exposeContent(contentInfo, getCurrentInputEditorInfo()); getCurrentInputConnection().commitContent(inputContentInfo, null); [App] try { contentInfo.requestPermission(); // Load inputContentInfo.getContentUri() here. } finally { contentInfo.releasePermission(); } [1]: Iaadf934a997ffcd6000a516cc3c1873db56e60ad 152944f4909c47917473293b258d266435c6ab35 [2]: Ica1ba3154795c1bf44e140dfe639b299f83cd8af adebb52588b098a1af678d4e33a234ef1ce783b2 Bug: 29450031 Change-Id: I2772889ca01f2ecb2cdeed4e04a9319bdf7bc5a6
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
833bdcedceee60a873694a77587393abfc830eb5 |
|
16-May-2016 |
Yohei Yukawa <yukawa@google.com> |
Make IMS#clearInsetOfPreviousIme() reliable. This is a follow-up to my previous CL [1] for Bug 15922840 so that we can clear the following variables in a more reliable way. - PhoneWindowManager#mLastInputMethodWindow - PhoneWindowManager#mLastInputMethodTargetWindow The idea behind CL [2] is that when InputMethodManagerService (IMMS) is switching from an IME to another IME, IMMS can send a signal to WindowManagerService (WMS) to remember the current IME's inset so that the system can continue using it to reduce jank until the new inset is specified by the next IME. As summarized in Bug 28781358, however, if the next IME does not show the window after the IME switch, WMS (or PhoneWindowManager to be precise) keeps using the previous IME's inset unexpectedly until the new IME shows its window. All we have seen in Bug 15922840 and Bug 26663589 fall into this category. The idea of this CL is just adding a hidden API to InputMethodManager so that InputMethodService#clearInsetOfPreviousIme() can surely terminate the IME transition state managed in PhoneWindowManager, rather than relying on a hack of calling SoftInputWindow#show() and SoftInputWindow#hide(), which actually does not work for Bug 26663589. [1]: Ib04967f39b2529251e4835c42e9f99dba2cf43f2 2977eb7b6ce82309a1bb1ba4ab698f503cb0388a [2]: I5723f627ce323b0d12bd7b93f5b35fc4d342b50c 792faa2c16d319e874a1d633f964a78266d5f3f2 Note that addressing all the corner cases in [2] still requires lots of non-trivial change. Hence this CL focuses only on Bug 26663589 (and the case we handled in Bug 15922840). Bug: 26663589 Change-Id: Ib567daa009c1139858dccadcfc6a04465ebecf36
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
d0d07974745dcc947bb498198166f5872c7ec4a1 |
|
04-May-2016 |
Yohei Yukawa <yukawa@google.com> |
Fix a behavior change in "Show software keyboard". This bug was a corner case of stopping lying about Configuration#keyboard when "Show software keyboard" is turned on, which was done by my CL [1] in Android N development cycle. Previous implementation if (config.keyboard != Configuration.KEYBOARD_NOKEYS) { had relied on the fact that the system was lying about config.keyboard, which is no longer valid. We need to change the behavior of InputMethodService#onShowInputRequested() depending on Settings.Secure.SHOW_IME_WITH_HARD_KEYBOARD like we did for InputMethodService#onEvaluateInputViewShown() in [1] to minimize the impact on stopping lying about Configuration#keyboard. [1]: Id4d332e3909590c68345e10e1f2e18650efb2eb7 7b739a802cb7d97460a0bf8a1e9774efe96fa552 Bug: 28423439 Change-Id: I8a774cbf61ac706d8446be91b17bceee57a13656
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
91eb2651a06633353592d52c3e37579f01b020ee |
|
11-Apr-2016 |
Mark Renouf <mrenouf@google.com> |
Customizes input extract edit view for Wear Provides an alternate presentation of the extract edit area of an input method window, designed for sub 250dp width screens. An icon is used on a round material style button in place of a text action, providing more horizontal space for the editing area. BUG: 28098677 (cherry picked from commit fd71a6a5d99bad5d3ab32edc328fb5b026b66215) Change-Id: I0e559d17f78d1a48b37979a49e11ae1aad7503f4
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
757224008e6187bbb04c89fadbe6921bf8ceda9f |
|
10-Apr-2016 |
Yohei Yukawa <yukawa@google.com> |
Revert "Customizes input extract edit view for Wear" This reverts commit 880602eb640f1f0f7f77f8d17c4ad34aca8b751d [1], which was committed with a wrong author email address and lacked license notice in some files. To avoid confusion, this we decided to temporarily revert that CL so that we can commit it with proper license notice and author address again. [1]: I16226ce393f2d15065d08e66a36d008eb1a0c8a1 Bug: 22512982 Bug: 28098677 Change-Id: I3dd3c7bf0ee9634fc4f3bf433bf5023675873e46
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
880602eb640f1f0f7f77f8d17c4ad34aca8b751d |
|
05-Apr-2016 |
Mark Renouf <mark.renouf@gmail.com> |
Customizes input extract edit view for Wear Provides an alternate presentation of the extract edit area of an input method window, designed for sub 250dp width screens. An icon is used on a round material style button in place of a text action, providing more horizontal space for the editing area. BUG: 22512982 Change-Id: I16226ce393f2d15065d08e66a36d008eb1a0c8a1 (cherry picked from commit fd71a6a5d99bad5d3ab32edc328fb5b026b66215)
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
2dbc53242927a796117a0b70d856021c0d4918a5 |
|
04-Apr-2016 |
Yohei Yukawa <yukawa@google.com> |
Fix a regression in SHOW_IME_WITH_HARD_KEYBOARD handling. This is a follow up CL to my previous CL [1], which caused a regression that LatinIME does not correctly initialize its UI when: 1. Make sure SHOW_IME_WITH_HARD_KEYBOARD is off. 2. Pair a hardware keyboard. 3. Reboot. 4. Make sure the hardware keyboard is paird. 5. Focus in a text box. 6. Make sure that LatinIME does not show software keyboard. 7. Tap the IME switcher and turn of "Show Input Method" toggle. Previously IMS had called many methods from IMS#onConfigurationChanged(), which was just replaced with IMS#restartInput() by my CL [1] then broke some assumptions in LatinIME. This could also break other IMEs' assumptions as well. To avoid unexpected regressions between M and N like this, this CL ensures that those methods are called as we have done until [1]. [1]: Id4d332e3909590c68345e10e1f2e18650efb2eb7 7b739a802cb7d97460a0bf8a1e9774efe96fa552 Bug: 26985193 Change-Id: Iebd98f26d388b64cb318ac202b3bcdd956bd3a27
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
ef5b4657a8b03b33d6c4087e0ced33606fcf05f3 |
|
04-Apr-2016 |
Yohei Yukawa <yukawa@google.com> |
Fix a bug that IMS#mShowInputFlags is never updated. As a preparation to fix bug 26985193, this CL fixes a bug that IMS#ShowInputFlags is never updated. As a result, IMS#onConfigurationChanged() has always called IMS#onShowInputRequested() with specifying 0 to flags parameter, which is wrong. With this CL, we can assume that IMS#mShowInputFlags keeps tracking the last value when it should do. Also, we can remove IMS#mShowInputForced since it is now determined by IMS#mShowInputFlags. Bug: 26985193 Change-Id: Ieff634b69ce941d78ffe208547f7edd19ea28643
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
755c0095a13365617b0752b8960e0be4044634ac |
|
14-Mar-2016 |
Keisuke Kuroyanagi <ksk@google.com> |
Fix: onExtractedDeleteText deletes unintended region. InputMethodService#onExtractedDeleteText doesn't reset composing region and InputConnection#deleteSurroundingText deletes text around the composing region. As a result, #onExtractedDeleteText can delete unintended region of the text. This happens when a user perform Drag&Drop or tap "Delete" in SuggestionsPopup in full screen extracted mode. Bug: 22440907 Bug: 27536702 Change-Id: I875f2919896f8ff453a77fb4a1b642ad78079b78
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
cf8403bc36395eecd9ab03c6b5e128272c3592e9 |
|
12-Jan-2016 |
Yohei Yukawa <yukawa@google.com> |
Suppress NPE in IMS#onEvaluateInputViewShown(). This is a follow up CL for the previous commit [1], which may have triggered an unknown bug in either Android Framework or LatinIME. [1]: Id4d332e3909590c68345e10e1f2e18650efb2eb7 7b739a802cb7d97460a0bf8a1e9774efe96fa552 InputMethodService#mSettingsObserver is initialized in #onCreate() and cleard with null in #onDestroy(). Hence hitting NPE against it implies that InputMethodService#onEvaluateInputViewShown() can be called before InputMethodService#onCreate() or after InputMethodService#onDestroy(). Both possibilities are equaly problematic. Note that this might be a long-standing issue that just became obvious because of [1]. This CL does not attempt to fix the root cause but just tries to suppresses the NPE to unblock QA tasks. A proper fix should be made in subsequent CLs. Bug: 22517687 Bug: 26511607 Change-Id: I6bc87c3d18b560fe2253fb9f05557b95b04d0cf0
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
7b739a802cb7d97460a0bf8a1e9774efe96fa552 |
|
21-Dec-2015 |
Yohei Yukawa <yukawa@google.com> |
Stop lying about hardware keyboard presence. Here is a brief history of "Use Physical Keyboard", or "Show input method", or SHOW_IME_WITH_HARD_KEYBOARD. In Honeycomb, we introduced a mechanism which allows users to temporary disconnect the physical keyboard connection from a UI [1]. That state was temporary and non-persistent, but it was implemented to have system-wide effect. Whenever the user turned on that temporarily disconnected state, not only IMEs but also other processes would be notified that Configuration#keyboard was changed to KEYBOARD_NOKEYS. The UI to do that was available only in tablet UI at that point and nothing changed in phones. In JellyBean, we decided to port that UI to phone, and the "Use Physical Keyboard" toggle switch found its new home on the IME switcher dialog [2]. In Lollipop, we revised the wording for the toggle switch on the IME switcher dialog. Now it's labeled as "Show input method" [3]. In Lollipop, we also decided to make the settings of "Show input method" to be persistent as @hide entry in the secure settings [4]. [1] 2992ea782fa61780d8e0de7a36a2a84622f8694b I136087ca4f726d0068d5983d7d3686787ba60c55 [2] cb598b11ea2c012bd15e7e7f44a3006f752c0b81 (Ica768083f95c33dc1e494a28ba7d8b6eb989b0ef) [3] be11f3a5cea67c68a08c8da9ce85b3418501060a (I9c8a7eb98b5277f1d09cc19fa7402e9b4cf51d92) [4] b64e56aad3ffb267aec44308f57641a4c91caa83 (I2237ded850a0d4ab43ca441d0b7df13e0958e630) Now, we have hard time making everyone happy. Having an easy way to bring software keyboard back is probably still a valid use case, but after several wording changes it is no longer obvious why onConfigurationChanged() event is sent to all the processes as a consequence of tapping that toggle. In order to address above confusions, this CL removes the concept of "temporarily disconnected physical keyboard" but tries to implement "Show input method" functionality in InputMethodManagerService and InputMethodService to keep the affordance that has been offered in the IME switcher dialog. As long as the IME overrides InputMethodService#onEvaluateInputViewShown() as follows, the behavior of "Show input method" toggle remains the same except for processes including IMEs no longer receive onConfigurationChanged() event with faked Configuration#keyboard value. @Override public boolean onEvaluateInputViewShown() { // If the default implementation returns true, recommend honoring // it. if (super.onEvaluateInputViewShown()) { return true; } // Implement the logic that is specific to your IME here. return myOnEvaluateInputViewShown(); } Bug: 22517687 Change-Id: Id4d332e3909590c68345e10e1f2e18650efb2eb7
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
6fcbb5629019489a88a9748f278d40d554cc5cdc |
|
15-Sep-2015 |
Yohei Yukawa <yukawa@google.com> |
Handle BadTokenException exception more reliably. This is a follow up for I2c21573cf972145ab08e66604cdb9344139a3f31, which added BadTokenException handler so that we can deal with unavoidable runtime exceptions. However, it turns out that CL does not work well in a certain case. One problem in I2c21573cf972145ab08e66604cdb9344139a3f31 that it added the exception handler in the call site of InputMethodService#showWindow(boolean) rather than callee side as follows. try { showWindow(true); } catch (BadTokenException e) { if (DEBUG) Log.v(TAG, "BadTokenException: IME is done."); mWindowVisible = false; } However, the above code fails to update #mWindowVisible if an IME overrides InputMethodService#showWindow(boolean) but catch-and-ignore BadTokenException as follows. @Override public void showWindow(boolean showInput) { try { super.showWindow(showInput); // Do something if super.showWindow() succeeds. } catch (BadTokenException ex) { // Do something if super.showWindow() fails. } } With this CL, InputMethodService#mWindowVisible is always updated in the callee side whenever it should be. Note that this CL does not change anything about which method can throw BadTokenException and which method catch-and-ignores it so as not to break existing IMEs unexpectedly. Bug: 23798142 Change-Id: Id1e5f236f48c8ef01b7f157ba3f6e7ab2c26b135
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
686e03454b461484b4b51d0ff10c6361aee8c72b |
|
14-Sep-2015 |
Yohei Yukawa <yukawa@google.com> |
Merge "Mechanical merge of nested if statements."
|
24182f3dacf2d2f1b77e5eadd38547f11cd4270d |
|
12-Sep-2015 |
Yohei Yukawa <yukawa@google.com> |
Remove redundant casts. This Cl is just a mechanical removal of redundant casts. Nothing is changed logically. Bug: 22285167 Change-Id: I460b781753553c002b6cd232ae5918b7acd616d9
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
ac8bdd203c18d0f99b825132cf6134dce5d12bc6 |
|
12-Sep-2015 |
Yohei Yukawa <yukawa@google.com> |
Mechanical merge of nested if statements. This is just a mechanical merge of nested if statements with a dead code removal. Nothing is changed logically. Bug: 22285167 Change-Id: I28c1de84635b68108b25ec32ec58de2128758512
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
93c47eab2b4e11103b29f923bdda932569d0b6a5 |
|
14-Jul-2015 |
Seigo Nonaka <nona@google.com> |
Update fullscreen state on hiding window. Need to update fullscreen state on hiding window as well as showing window, otherwise IMM#isFullscreenWindow reports obsolete state after hiding window by back key or device rotation. Bug: 22238567 Change-Id: Ic8de161cd5d2ee161f32b9942cdc2c331ea4d48e
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
e9311579da9fcbc1f32deb0ca29848a46b218d1a |
|
25-Jun-2015 |
Yohei Yukawa <yukawa@google.com> |
am 6a402ca6: am d408d293: am ab142f7f: Merge "Handle back key to cancel text action mode in full-screen IME." into mnc-dev * commit '6a402ca629185576cf774587da8079977833d25e': Handle back key to cancel text action mode in full-screen IME.
|
38940aab693be587d5901f4ef110cbf95da0e22f |
|
24-Jun-2015 |
Yohei Yukawa <yukawa@google.com> |
Handle back key to cancel text action mode in full-screen IME. This CL is a follow up to I7998c8ee2162a0e01525a0cd66ec14fa505, which completely removed ExtractActionMode including back key handling in InputMethodService when full-screen mode is enabled. It turns out that back key events still need to be handled in InputMethodService when full-screen mode is enabled so that users can still cancel floating text action mode with back key. Bug: 22034992 Change-Id: I5f8db34f7425eef343d40d9820925ea6aaf9fccc
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
710645eb36e88a6a788f51bea9edbeee53853de1 |
|
11-Jun-2015 |
Andrei Stingaceanu <stg@google.com> |
Remove ExtractEditAction - part 1 Use the floating toolbar action mode instead. This change is identical to 7315b15a034eeb2d9a4cd24c100023c048ca (minus string changes). Due to scary conflicts in strings I will make the string changes in the next CL. Change-Id: Ia66ef5e886df1fc42a8e1ba52d77141e1e88dbd4
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
1036c74784d8f8ca7232aaa26b1b0c3796c29d1d |
|
11-Jun-2015 |
Andrei Stingaceanu <stg@google.com> |
Revert "Completely remove ExtractActionMode - master cherrypick" This reverts commit 00245473dbdf5469ad40d1ca6d2f53a87462efcb. Change-Id: If078c09fbdfd00d005ff58d543f03601b96eef0a
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
00245473dbdf5469ad40d1ca6d2f53a87462efcb |
|
11-Jun-2015 |
Andrei Stingaceanu <stg@google.com> |
Completely remove ExtractActionMode - master cherrypick Use the floating toolbar action mode instead. This CL is identical to ag/701639. The merge to master was skipped due to a conflict. This is the 'manual merge' Bug: 20128047 Change-Id: I5ef9b4b5b9574a4a360a853b2d1abd5b374f2fd5
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
4c1b7315b15a034eeb2d9a4cd24c100023c048ca |
|
02-Jun-2015 |
Andrei Stingaceanu <stg@google.com> |
Completely remove ExtractActionMode from ExtractEditLayout Use the floating toolbar action mode instead. Bug: 20128047 Change-Id: I7998c8ee2162a0e01525a0cd66ec14fa5050a953
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
e937216c330bfcaf523d9627fe315f89db00e36a |
|
04-Jun-2015 |
Seigo Nonaka <nona@google.com> |
Catch BadTokenException and continue in clearInsetofPreviousIme. This is a follow up CL for Ib04967f39b2529251e4835c42e9f99dba2cf43f2. As well explained in the I2c21573cf972145ab08e66604cdb9344139a3f31, the race condition here cannot be avoided without an unacceptable performance penalty. For now, we follow the same way. Bug: 21600287 Change-Id: I0ffdf8bf7e8a53cf8aba1339024b32da65d4f32d
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
2977eb7b6ce82309a1bb1ba4ab698f503cb0388a |
|
28-May-2015 |
Yohei Yukawa <yukawa@google.com> |
Clear the inset of previous IME when necessary. In the following scenario, the system continues keeping the previous IME's inset in the display until the new IME shows its window. 1. an IME shows its software keyboard with reporting non-empty inset. 2. the user switches to another IME, which does not show the software keyboard when it is selected (e.g., because the physical keyboard is connected.) This CL tries to address above situation by introducing a new state flag IMMS#mShouldClearInsetOfPreviousIme to clear the previous IME's inset when necessary. Bug: 15922840 Change-Id: Ib04967f39b2529251e4835c42e9f99dba2cf43f2
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
98d88028ae449fccfa8bace0d4ed3e34f6290658 |
|
15-Apr-2015 |
Seigo Nonaka <nona@google.com> |
Notify IME visibility when showWindow is called. To change the back icon, need to notify IME visibility to the InputMethodManagerService when guest IME service calls showWindow(). IME can call showWindow() if it want to show software input, but it doesn't send IME_VISIBLE state to the InputMethodManagerService, hence the arrow icon is different from what we expect. This typically happens when Latin IME shows Emoji panel by left-alt keys. Bug: 20318050 Change-Id: I0ec2c71ad9bc3b7e9259d9180375d9062fc7e154
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
7b9c912f536925ac6ec43935d6e97506851b33d6 |
|
31-May-2013 |
Tor Norbye <tnorbye@google.com> |
Add @ResourceInt annotations on APIs Change-Id: I119cc059c2f8bd98fd585fc84ac2b1b7d5892a08
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
72745fffe8d43b12ebb753b562191e319e5c1cda |
|
24-Dec-2014 |
Seonggoo Kang <seonggoo.kang@lge.com> |
Prevent duplicated registration of OnComputeInternalInsetsListener OnComputeInternalInsetsListener is added when initViews is called, and initViews is called by onCreate and onConfigurationChanged. But it is removed only by onDestroy. Therefore listeners are accumulated and it results performance issue. So before adding, remove mInsetListener that was previously added. Change-Id: I494d3f1875613d73d3f9b8e2af286b5800f03196
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
a277db28e990d1f6f74ace0c32fe92401660a840 |
|
22-Aug-2014 |
Yohei Yukawa <yukawa@google.com> |
Remove CursorAnchorInfoRequest and related stuff This CL removes CursorAnchorInfoRequest and related stuff in favor of InputConnection.requestUpdateCursorAnchorInfo, which is more easy to understand. This CL also deprecates InputMethodManager#updateCursor and related stuff. Rationale: 1. The spec of #updateCursor says that it provides the cursor position in local coordinates, while the input method requires it in the screen coordinates. 2. #updateCursor has never been enabled in AOSP, because InputMethodManager#isWatchingCursor always returned false. 3. There has been no way to let InputMethodManager#isWatchingCursor return true. 4. In L, InputMethodManager#updateCursorAnchorInfo is introduced to address all the issues above. Given that we no longer need to support #updateCursor, CursorAnchorInfoRequest is overkill when we need to convey just a couple of parameters. BUG: 17185263 BUG: 17182367 Change-Id: I4a577bfd02b37b9e56c80b8b41bb25afa95dd8ef
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
e07b595519e68a8ee524b1886dea01475047abec |
|
14-Aug-2014 |
Alan Viverette <alanv@google.com> |
Deprecate InputMethodService.enableHardwareAcceleration() BUG: 16951553 Change-Id: I126ea823eb2eeabb29d30999dec9c9411b33b315
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
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/android/inputmethodservice/InputMethodService.java
|
e30e02f5d9a9141c9ee70c712d4f9d52c88ea969 |
|
28-May-2014 |
Dianne Hackborn <hackbod@google.com> |
Add system layer for voice interaction services. New window layer that voice interaction service windows go in to. Includes a new voice-specific content rectangle that voice activities are placed in to. Add specific animations for this layer, sliding down from the top (though this can be customized by the voice interaction service). Also add the concept of activities running for voice interaction services for purposes of adjusting the animation used for them, again sliding from the top, but not (yet?) customizable by the voice interaction service. Change-Id: Ic9e0e8c843c2e2972d6abb4087dce0019326155d
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
c2ddd6023688db5ecf6c586e05f55e262b4a802e |
|
06-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Introduce new API for floating window support This CL introduces a new API IMM#updateCursorAnchorInfo for floating window support. BUG: 14579622 Change-Id: I61dec2f8fa671ba891da1d4af08975750e3acb04
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
5effd7e89f83824ac8982a6cbcebbf5cc331e436 |
|
05-May-2014 |
Alan Viverette <alanv@google.com> |
Partial revert "Load device default theme mapping from resources" This reverts commit e4ab72d54cf41d16819b72e94d9b0d0d51289647. Change-Id: Id17170312c75993fc1f7859d52c7e050b2aeaf80
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
c03c9167c2d9a1e22fb2b176b00a0524177fb037 |
|
02-May-2014 |
Dianne Hackborn <hackbod@google.com> |
Further work on voice interaction services. This makes VoiceInteractionSession a more first-class concept. Now the flow is that a VoiceInteractionService calls startSession() when it wants to begin a session. This will result in a new VoiceInteractionSession via the VoiceInteractionSessionService containing it, and the session at that point an decide what to do. It can now show UI, and it is what has access to the startVoiceActivity API. Change-Id: Ie2b85b3020ef1206d3f44b335b128d064e8f9935
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
0810b63739c9981f993063749f804b54faed0ba5 |
|
01-May-2014 |
Alan Viverette <alanv@google.com> |
Load device default theme mapping from resources Also adds a few missing styles and reorganizes some XML files. Makes stackViewStyle public since it's defined in DeviceDefault. Change-Id: I8f6a0f93410948b38619594474d60dc40ece5917
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
c644ff6d4ffea317420ee843965788a3e74d1969 |
|
28-Apr-2014 |
Yohei Yukawa <yukawa@google.com> |
Revise Javadoc for CURSOR_ANCHOR_MONITOR_MODE_CURSOR_RECT This is a follow-up CL for I3acf2317ae1d763d11 to improve the Javadoc for CURSOR_ANCHOR_MONITOR_MODE_CURSOR_RECT BUG: 14323360 Change-Id: Ie8948eda3ce57da282bd82e8e9a44997f6d53245
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
4de04795f988cc7447feb9ad00e179273f75a6a3 |
|
16-Apr-2014 |
Yohei Yukawa <yukawa@google.com> |
Return the cursor position in screen coordinates From its beginning, InputMethodService#onUpdateCursor has provided the cursor position in local coordinates in the attached view. However, the local coordinates is not useful for IMEs to render a floating UI near the cursor because the IME is not able to know the origin of the attached view. With this CL, CURSOR_ANCHOR_MONITOR_MODE_CURSOR_RECT also means that the IME will receive the cursor position in screen coordinates. Because this is a new constant in the next release, conditionally changing the coordinates never causes compatibility issues as long as its behavior is well documented. BUG: 14323360 Change-Id: I3acf2317ae1d763d11dae5ef73c2a1348b377c71
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
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/android/inputmethodservice/InputMethodService.java
|
6259933ec99dee566f200c5fdfe1756ee72b1513 |
|
01-Apr-2014 |
Alan Viverette <alanv@google.com> |
Switch framework Holo references to Quantum.Light Change-Id: Ib545a143f1959b6104adbc9d594dd626851d90b3
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
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/android/inputmethodservice/InputMethodService.java
|
c68d577f29604d205573ee4253704c5b2c5e4f81 |
|
08-Oct-2013 |
John Spurlock <jspurlock@google.com> |
Allow IMEs to extend below nav bar, remove SystemUI veto. Layout IMEs below the nav bar, offset by bottom padding and associated guard rectangle with a black background to ensure they do not appear as islands during transitions. This makes it safe to remove the SystemUI forced opaque transition when showing an IME, making the overall transition less expensive, quicker and smoother overall. Bug:11058746 Change-Id: I460912ee7c117480c57b947ed31eca330819f32c
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
c743cb94770701ec20a01b57b09232f1aae5bcbb |
|
12-Sep-2013 |
Jean Chalard <jchalard@google.com> |
Don't send the same values to onUpdateSelection repeatedly If the IME is repeatedly changing the text in its onUpdateSelection handler, this will crash it with a stack overflow exception. It's better than the old behavior, which would result in a busyloop likely to make the device completely unresponsive. Bug: 10301239 Change-Id: I170cfb8ef20fc056d4725931890a987aefcaea8b
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
c56191f82956527acadd525b64ebcc033bc107a3 |
|
30-May-2013 |
Satoshi Kataoka <satok@google.com> |
Resolve inconsistent conditions in InputMethodService This change is addressing this issue by 1. call doFinishInput in onDestroy 2. fix the inconsistent condition of "mInputStarted" Bug: 9197136 Change-Id: Iefe6b284e148e31bd212b255c41cb2cf548723d7
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
f09993ca1d01823f9c60c0be45a8169e09dd27d7 |
|
19-Apr-2013 |
Satoshi Kataoka <satok@android.com> |
am 1a546dca: Merge "Fixed the problem ime invisible status despite being the icon that appears in the statusbar." * commit '1a546dca77b47b86c87ddf4de7a76662ef8bd48b': Fixed the problem ime invisible status despite being the icon that appears in the statusbar.
|
f403b1fe5081aae07523043eaec8f348e1c982ea |
|
20-Mar-2013 |
Craig Mautner <cmautner@google.com> |
Clear mWindowAdded when window was not added. DO NOT MERGE If ViewRootImpl throws BadTokenException when adding a window, clear the indication that a window has been added. That way when the window is destroyed it doesn't try to clean it up. Fixes bug 8409506. Change-Id: I270740762f21ed4ec7f235344a3adaeaa033c483
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
e4bbb1cc451c7ebdad9f92968732fc4f6c21a70c |
|
15-Mar-2013 |
Craig Mautner <cmautner@google.com> |
Catch BadTokenException and continue. BadTokenException is a normal consequence of swapping IMEs while there is a DO_SHOW_SOFT_INPUT message in the IIMethodWrapper queue. This race condition cannot be avoided without an unacceptable lock down of InputMethodManagerService. Fixes bug 8387663. Fixes bug 8263462. Change-Id: I2c21573cf972145ab08e66604cdb9344139a3f31
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
6efb4c746f89458ffb3da21d7d70af0b220a4876 |
|
13-Mar-2013 |
Craig Mautner <cmautner@google.com> |
Put debug back in for b/b8263462. Previous CL did not fix. Change-Id: Ief9e8f519480fa41248d53e5b0187c9657f00b79
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
217fd2903d09d40cabcdade9f2a162dc6513f800 |
|
26-Feb-2013 |
jungheang.lee <jungheang.lee@lge.com> |
Fixed the problem ime invisible status despite being the icon that appears in the statusbar. [Reproduce the Path] Precondition : Set "Auto-rotate screen" option to ENABLE Calendar App lunch -> Rotate device to "Landscape" -> Touch "+" button(Add new Schedule) -> Check the ime icons of the Status bar Ime invisible status despite being the icon that appears in the statusbar. Displays an icon in the status bar when the ime was actually visible state is modified to check. Change-Id: If103ab909c5bfa6391eb51a696fb8b8f0b18808c
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
350d4cbec1c3006710c6544299f994cf2a72c166 |
|
09-Nov-2012 |
Satoshi Kataoka <satok@google.com> |
am ae41ba15: am 4424951f: am 1e29e49c: Merge "Reduce jankiness of the transition between a text field with FLAG_NO_FULLSCREEN and a text field with FLAG_NO_EXTRACT_UI" into jb-mr1.1-dev * commit 'ae41ba156364f5625280c4229169899adea965d5': Reduce jankiness of the transition between a text field with FLAG_NO_FULLSCREEN and a text field with FLAG_NO_EXTRACT_UI
|
8b117c85781be106f16a1fecc73d6928e54a985b |
|
06-Nov-2012 |
Satoshi Kataoka <satok@google.com> |
Reduce jankiness of the transition between a text field with FLAG_NO_FULLSCREEN and a text field with FLAG_NO_EXTRACT_UI Bug: 7393485 Currently, the extract text view blinks at the transition of InputMethodService. This change reduces this blinking by making the extract text view invisible when the extract text view is hidden. Change-Id: I9af96058283a9a5b60707d025ad1abbbbc23c16f
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
cb95cd6baebb1ffa365ff8981b0ae5e0b02e4bed |
|
26-Oct-2012 |
Tadashi G. Takaoka <takaoka@google.com> |
Fix downTime of InputMethodService.sendDownUpKeyEvents method Bug: 7403935 Change-Id: I9074269c9a5f5b54b632da11151ad46c3494dc19
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
6e2bee75cea415621165698fdd9ce857bbb8872e |
|
01-Oct-2012 |
Jeff Sharkey <jsharkey@android.com> |
Migrate more System and Secure settings to Global. Includes telephony, WindowManager, PackageManager, and debugging settings. Update API to point towards moved values. Bug: 7231764, 7231252, 7231156 Change-Id: I5828747205708872f19f83a5bc821ed0a801cb79
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
b38070caa5143ab9fd1883e0c7c879533a480bc7 |
|
24-Aug-2012 |
Victoria Lease <violets@google.com> |
IME support for trackball and generic motion events Trackball and generic motion events now pass through the IME in case it would like to handle them before passing them on to the view hierarchy. While I was at it, I also... ...fixed the documentation on InputMethodService.onKeyUp() ...added documentation to InputMethodService.onTrackballEvent() ...added trackball and generic motion events to the "input" command ...fixed input consistency verification involving ACTION_OUTSIDE Bug: 7050005 Change-Id: I40ab68df4a9542af6df25de6ec2ec500e4c02902
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
98365d7663cbd82979a5700faf0050220b01084d |
|
20-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor for multi-display support. Split WindowManagerImpl into two parts, the WindowManager interface implementation remains where it is but the global communications with the window manager are now handled by the WindowManagerGlobal class. This change greatly simplifies the challenge of having separate WindowManager instances for each Context. Removed WindowManagerImpl.getDefault(). This represents the bulk of this change. Most of the usages of this method were either to perform global functions (now handled by WindowManagerGlobal) or to obtain the default display (now handled by DisplayManager). Explicitly associate each new window with a display and make the Display object available to the View hierarchy. Add stubs for some new display manager API features. Start to split apart the concepts of display id and layer stack. since they operate at different layers of abstraction. While it's true that each logical display uniquely corresponds to a surface flinger layer stack, it is not necessarily the case that they must use the same ids. Added Display.getLayerStack() and started using it in places where it was relatively easy to do. Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
836531b0c4985b0cf6ead247dd2f403f3ec59e37 |
|
02-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Add API to turn on HW drawing in IMEs. Change-Id: Ib6a8bda46223ce1153f32834daf02a820d16136e
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
b369a141eda7b3f7cd85cbc4ae340ce688c33f8b |
|
20-Jul-2012 |
Kurt Partridge <kep@google.com> |
Documentation cleanup Change-Id: Id3d15b643e6ed29c52dc9c9eb02836eb64277dae
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
405bc51c5dc73846a4abdc325cd234eb2d37469f |
|
29-May-2012 |
Jean Chalard <jchalard@google.com> |
Add/refine comments to reflect key event policies Make clearer how the platform is handling key events following some unfortunate uses by third party applications. Also highlight the changes in Jelly Bean default keyboard. Bug: 6566711 Change-Id: Ibcdaf54c6d629fd0733529bfe2fffc82f555f084
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
2f913d951c481edccbefa4d321a76f28740b48d7 |
|
09-May-2012 |
satok <satok@google.com> |
Fix the issue that the ime switch icon is remaining after closing VoiceInput Change-Id: I4fd6b7b6c1e8a2603626d82ed3587716bea519d3
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
4f8b71e41d26538711920495242892839a1757f9 |
|
12-Apr-2012 |
Quddus Chong <quddusc@google.com> |
am a97a7b5a: am 6971153d: Merge "docs: Fixed method description for onKeyDown(int keyCode, KeyEvent event). Bug: 6318537" into ics-mr1 * commit 'a97a7b5a6efac20a112c1833579a0a2b17bc058e': docs: Fixed method description for onKeyDown(int keyCode, KeyEvent event). Bug: 6318537
|
ee71b1fa2d3905214fafaa9478fa4fc2834b06fc |
|
12-Apr-2012 |
Quddus Chong <quddusc@google.com> |
docs: Fixed method description for onKeyDown(int keyCode, KeyEvent event). Bug: 6318537 Change-Id: I4fb0f103bfe3ddf485e1bfa76eb39a51adce1aaa
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
f76a50ce8fdc6aea22cabc77b2977a1a15a79630 |
|
09-Mar-2012 |
Ken Wakasa <kwakasa@google.com> |
Fix obvious typos under frameworks/base/core Change-Id: Ia5fc3db1bb51824e7523885553be926bcc42d736
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
e300be9c29b7915450ddb62f2957d312b52cfa32 |
|
06-Dec-2011 |
Gilles Debunne <debunne@google.com> |
IOOB is Suggestions Bug 5555929 This problem only happens when in landscape extracted text mode. A suggestion pick from the popup window replaces the text in the ExtractedText, when it should do it in the underlying source EditText instead. When the replacement text is longer than the replaced text and is at the end of the text, an IOOB occurs because the ExtractedText was not modified (we now correctly change the source text using replaceText_internal). This is basically an implementation of the TODO comment next to setSpan in TextView. Change-Id: I6575137530e0bb5c9ac7e40cc2bba9c66dc254d2
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
39ba6d9c4cf5a88d71edb800f3f48f85f61187c4 |
|
09-Nov-2011 |
Gilles Debunne <debunne@google.com> |
Extracted text problems Bug 5557258: recent text editing changed in ExtractedText mode is broken. The modifications of the text performed by: - drag and drop - text suggestions, deletion - voice IME's delete button all change the ExtractEditText itself, while they should affect the underlying EditText (and the change will be forwarded to the ExtractEditText). As a results, changes are not actually modifying the underlying text. Created new protected methods in TextView, overloaded in ExtractTextView to affect the underlying text instead. Changes to spans should also be forwarded to the original TV (see the 2 TODOs), this is tracked in bug 5589158. Change-Id: Ibfec272469e8db191b3875e7576e32481a9dc1bd
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
f17db9f5257011d5331d27a6da7d4e6fddde1e08 |
|
14-Sep-2011 |
satok <satok@google.com> |
Call onFinishInputView in onDestroy onFinishInputView is called in InputMethodService#hideWindow but not in onDestroy. For closing IMS safely, onFinishInputView should be called in onDestroy. Bug: 5265534 Bug: 4697071 Change-Id: I2947b62326e3e0644f1c079eafc839a9981e902b
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
41ccb08f5af7ff28568b5eb09b1319fb6d8edcfb |
|
14-Sep-2011 |
satok <satok@google.com> |
Merge "Skip the exit animation when the IME is destroyed."
|
c0c8765719f5c8d0192aa266c27166bdd8c09a33 |
|
11-Sep-2011 |
satok <satok@google.com> |
Skip the exit animation when the IME is destroyed. Bug: 4529563 Change-Id: I6fb2ea3601e1cc6fa8858d006819698dcabdd5ca
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
34703b6d304c2bc6f4a39583931c7582d0455b0c |
|
08-Sep-2011 |
Gilles Debunne <debunne@google.com> |
The back key stops selection mode in extracted text mode. The previous behavior stopped the extracted text mode, leaving the text selected and without handles in the app. As what happens in normal (non extracted) mode, the back key now stops the text selection mode. A second back will get the user back to normal mode. Change-Id: I2e8d2d7a1a1e1344997da75438f8df804fb8735c
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
36a97e4030010298736928f9b391a390fea6941b |
|
07-Sep-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5228657 - Input method window rendered with titlebar Use the correct Holo-based IME theme for IMEs targeting >= 11 and < ICS. Change-Id: Id154a927ab8439c357dc44996155f92414e2c876
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
6e90a362bc66cc67b1beae27b21d3f0148403b08 |
|
15-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5159736 - Make DeviceDefault the default Have the framework refer to the DeviceDefault themes for ICS apps that don't explicitly request another theme. Change-Id: I27dd0bbaa60f71df4f36e47d260f556d923ba075
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
863fcd62171e55bc9f2105d9fb5877df982454d8 |
|
21-Jun-2011 |
satok <satok@google.com> |
Add onClickView to InputMethodService Bug: 4697141 - onClickView is called everytime the user taps EditText Change-Id: Ia71ad325e50a20e9e1001def662ef992bb50a9d0
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
8710e76a897cd546a79ee4338a4147eeb9f3e068 |
|
30-Jan-2011 |
Ken Wakasa <kwakasa@google.com> |
Follow up change to I741642ac Fix wrong constant. bug: 3404788 Change-Id: Ic5f849e6640a78a70951cf819d7e8ce53a9c2585
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
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/android/inputmethodservice/InputMethodService.java
|
8cbb4c6e30cff706a243599634aeb8fd9a818d92 |
|
24-Jan-2011 |
Gilles Debunne <debunne@google.com> |
NULL inputType text fields should never show the IME. Bug 3381317 Changes made in https://android-git.corp.google.com/g/#change,91880 displayed the IME onFocus. However, the test was not consistent to what is done in touch event. textIsEditable is now checked too. Change-Id: If11382c1c90a557839b87d62494253470c42b621
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
865b97761cc58053f45a8b06b531d60d8e482c3a |
|
20-Jan-2011 |
satok <satok@google.com> |
Show ime switch icon when there is a hard keyboard Change-Id: Ife3a8733b1a1bf43b195ecf4b8c5082b6538d0a0
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
fbf097732137a32930d151f7ba6816a5b870c32a |
|
16-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Support non-rectangular input regions. This enables the system bar to carve out a region through which events will be sent to the IME behind it. Bug: 3238092 Change-Id: I69b855a8d9b5b3ee525266c0861826e53e5b5028
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
d922ae01ca99a2b6d39a9393f86776a1d10ebd14 |
|
14-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Add Holo theme for IMEs. Also clean up theme selection code to get rid of duplication. Change-Id: Idf7b21db70ee83fce24756ead877169bd08b77a9
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
6b53e8daa69cba1a2a5a7c95a01e37ce9c53226c |
|
11-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Added support for full PC-style keyboards. BREAKING CHANGE: Redesigned the key character map format to accomodate full keyboards with more comprehensive suite of modifiers. Old key character maps will not work anymore and must be updated. The new format is plain text only and it not compiled to a binary file (so the "kcm" tool will be removed in a subsequent check-in). Added FULL keyboard type to support full PC-style keyboards. Added SPECIAL_FUNCTION keyboard type to support special function keypads that do not have any printable keys suitable for typing and only have keys like HOME and POWER Added a special VIRTUAL_KEYBOARD device id convention that maps to a virtual keyboard with a fixed known layout. This is designed to work around issues injecting input events on devices whose built-in keyboard does not have a useful key character map (ie. when the built-in keyboard is a special function keyboard only.) Modified several places where events were being synthesized to use the virtual keyboard. Removed support for the "qwerty" default layout. The new default layout is "Generic". For the most part "qwerty" was being used as a backstop in case the built-in keyboard did not have a key character map (probably because it was a special function keypad) and the framework needed to be able to inject key events anyways. The latter issue is resolved by using the special VIRTUAL_KEYBOARD device instead of BUILT_IN_KEYBOARD. Added the concept of a key modifier behavior so that MetaKeyKeyListener can distinguish between keyboards that use chorded vs. toggled modifiers. Wrote more robust key layout and key character map parsers to enable support for new keyboard features and user installable key maps. Fixed a bug in InputReader generating key ups when keys are released out of sequence. Updated tons of documentation. Currently QwertyKeyListener is being used for full keyboards with autotext and capitalization disabled. This mostly works but causes some problems with character pickers, etc. These issues will be resolved in subsequent changes. Change-Id: Ica48f6097a551141c215bc0d2c6f7b3fb634d354
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
9ef0283bdcd9534cc09ae37eb2b78771b95247b5 |
|
04-Nov-2010 |
satok <satok@google.com> |
Change API for getting InputMethodSubtype's mode from resource id to String Change-Id: I00aa99f8ab9901d40806a6bb336ab718eb857e8b
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
dea3ef7967228f0ddcc03f2455a4f1254758e584 |
|
28-Oct-2010 |
Dianne Hackborn <hackbod@google.com> |
Add new resize mode to not resize, new web input types. Change-Id: Ib098c03793d08532c3c099b59d0cc6b567e54900
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
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/android/inputmethodservice/InputMethodService.java
|
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/android/inputmethodservice/InputMethodService.java
|
007ad7700a23ff7e618cfeee1eab97063c93b800 |
|
04-May-2010 |
The Android Open Source Project <initial-contribution@android.com> |
merge from open-source master Change-Id: If72ad6758c9e1bf77c38c4afec6b00ec9d5b89e4
|
59eb69192c47ba53cf2ea412a5fba160f2a7892d |
|
08-Sep-2009 |
Steve Kondik <shade@chemlab.org> |
Fix an NPE in InputMethodService when mExtractAction is null. This happens with certain third-party IMEs. Fixes: http://code.google.com/p/cyanogenmod/issues/detail?id=231 Change-Id: Idf4349ee9c7c8f73c255745bc65b49ba9b593874
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
a8b00c8801be8e7bd21ddab64a3cde9b5ff2984a |
|
06-Mar-2010 |
Amith Yamasani <yamasani@google.com> |
Logging to track down an elusive bug with Messaging app losing IME focus in landscape. bug: 2200728
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
a77f93f76a40128ecc3d017ead6d1105f96b282a |
|
13-Jan-2010 |
Leon Scroggins <scroggo@google.com> |
am ace8addc: am 2edd6826: Create a new ImeOption that disables fullscreen in landscape, and use it. Merge commit 'ace8addce47efc03be5038eef48d7fb066b14aae' * commit 'ace8addce47efc03be5038eef48d7fb066b14aae': Create a new ImeOption that disables fullscreen in landscape, and use it.
|
2edd68260f26cbd6eddd0df16404bb6bcb22b3b6 |
|
12-Jan-2010 |
Leon Scroggins <scroggo@google.com> |
Create a new ImeOption that disables fullscreen in landscape, and use it. EditorInfo: Add a flag to tell the InputMethodService to never go into fullscreen mode. InputMethodService: When the new flag is set, onEvaluateFullscreenMode always returns false. WebTextView: Use the new flag, along with IME_FLAG_NO_EXTRACT_UI. Fixes http://b/issue?id=2358360
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 |
|
09-Jan-2010 |
Romain Guy <romainguy@android.com> |
Deprecate fill_parent and introduce match_parent. Bug: #2361749.
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
83fe3f559249451706957b1a5f660b2b8272f114 |
|
13-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Last big work on #1991910: Make swipes work with capacitive keys This takes care of allowing us to cancel the back button. The back button is a bear because it is strewn all over the place -- everywhere you can close something, there is some code looking for the back button that now needs to deal with being canceled. The main things changed are activity (of course), dialog, input method, search dialog. There are some other misc places in the framework (and some I missed here that I will get in a second pass). To facility all of this, the key dispatching APIs now provide a lot more support for dealing with looking for cancelled keys, and incidentally also provide an actual API for catching long key presses. This also helped clean up the code in PhoneWindow where it deals with all of the combinations of key pressed and releases. (And also allows people to override Activity.onKeyLongPress() to provide a different long press action for a standard key like search.) And while I was doing this, I reworked how we detect long presses by having this be part of the key event delivered by the window manager. This should greatly reduce (hopefully outright eliminate) the problems with long presses being mis-detected when an application is being slow. Change-Id: Ia19066b8d588d573df3eee6d96e1c90fdc19f57d
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
ba4d93fcd76fdd7c8368e23c7faf9a20684e51a0 |
|
20-Aug-2009 |
Amith Yamasani <yamasani@google.com> |
Potential fix for NPE at startExtractingText. This is not easy to reproduce. Adding a simple null check to see if the monkeys continue to hit the NPE.
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
105925376f8d0f6b318c9938c7b83ef7fef094da |
|
19-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake_rel/...@140373
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
c39a6e0c51e182338deb8b63d07933b585134929 |
|
11-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@137873
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54 |
|
09-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@137197
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
4df2423a947bcd3f024cc3d3a1a315a8dc428598 |
|
05-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@136594
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.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/inputmethodservice/InputMethodService.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/inputmethodservice/InputMethodService.java
|
076357b8567458d4b6dfdcf839ef751634cd2bfb |
|
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@132589
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
3dec7d563a2f3e1eb967ce2054a00b6620e3558c |
|
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@137055
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
3001a035439d8134a7d70d796376d1dfbff3cdcd |
|
19-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@132276
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
da996f390e17e16f2dfa60e972e7ebc4f868f37e |
|
13-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@131421
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
d24b8183b93e781080b2c16c487e60d51c12da31 |
|
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
f1e484acb594a726fb57ad0ae4cfe902c7f35858 |
|
22-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127436
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
22f7dfd23490a3de2f21ff96949ba47003aac8f8 |
|
20-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127101
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
9266c558bf1d21ff647525ff99f7dadbca417309 |
|
16-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@126645
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.java
|
b798689749c64baba81f02e10cf2157c747d6b46 |
|
10-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@125939
/frameworks/base/core/java/android/inputmethodservice/InputMethodService.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/inputmethodservice/InputMethodService.java
|