b1e2f4fc3a7b6676aa2c19f470338d6d57ff0ce6 |
|
11-Apr-2016 |
Yohei Yukawa <yukawa@google.com> |
Shift+Meta+Space should reverse-rotate subtypes part 2. This CL adds JavaDoc to clarify what previous CL [1] wanted to do. No behavior change is intended in this CL. [1]: I3694edd80be6dfe18b90360e24ae4d451b331928 d39ae854820edebe3f1cb8580117c451ffa5c4ec Bug: 25753404 Bug: 28103839 Change-Id: I246223c0856382d68323f22987b998cd1613e98c
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
d39ae854820edebe3f1cb8580117c451ffa5c4ec |
|
11-Apr-2016 |
Yohei Yukawa <yukawa@google.com> |
Shift+Meta+Space should reverse-rotate subtypes. This is a follow up CL to my previous CL [1], which added a new key binding Meta+Space to rotate enabled IME subtypes. With this CL, Shift+Meta+Space starts reverse-rotating enabled IME subtypes as originally planed. [1]: I4005692215edfcf8bed3e86b1e07000148f986f5 ae61f7118a92e097e854c840d5726c0920f5db0e Bug: 25753404 Bug: 28103839 Change-Id: I3694edd80be6dfe18b90360e24ae4d451b331928
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
7025964d1230e4fc064658e1911fea9aab3def68 |
|
10-Dec-2015 |
Yohei Yukawa <yukawa@google.com> |
Apply Java 7 diamond operator. This is a mechanical refactoring to apply Java 7 diamond operators in InputMethodSubtypeSwitchingController.java. Bug: 22859862 Change-Id: If80df0bcf0b1485c43d55ff51cab69c8ae211eb2
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
e512f85002379c5949f65daeffdcae3198964dad |
|
10-Dec-2015 |
Yohei Yukawa <yukawa@google.com> |
Remove a redundant method overload. Bug: 22859862 Change-Id: I4e91b2d7f2da7716ae5a34125a29db5e1ad5a983
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
5f8e731f18c5cbfd345236c691db0b09aceb7c5d |
|
10-Dec-2015 |
Yohei Yukawa <yukawa@google.com> |
Remove unnecessary parameter that is always true. This is a mechanical refactoring that removes an unnecessary parameter that is always specified to 'true'. No behavior change is intended. Bug: 22859862 Change-Id: If3aef8209a355af1432ca2600bcc3a0027a6c24c
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
d724886cc13990ebcf55134455ef0fa223054ae8 |
|
04-Jun-2015 |
Yohei Yukawa <yukawa@google.com> |
Include InputMethodSubtypeSwitchingController in state dump. In order to diagnose IME issues in multi-user / multi-profile environment, internal state of InputMethodSubtypeSwitchingController needs to be included in the bugreport. Bug: 19340792 Bug: 19587437 Bug: 21612582 Change-Id: I34aca2c1a4330ec08b5e40441e631809a8bb844e
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
14e139179be7daab6ed452105387a3922752c219 |
|
07-May-2015 |
Seigo Nonaka <nona@gogole.com> |
Retry "Always show auxiliary subtypes from NavBar keyboard icon." This CL relands I1e50ee42838a1bf64a612da4904aa93458d44ea4, which was reverted by I3decaf37198e5864a1763a059df4a36ebc70c5a7 due to the build breakage in 'layoutlib' target, with a proper fix. Hereafter the original CL description is repeated. The auxiliary subtypes should be listed if the input method picker is opened from NavBar keyboard icon. However there is only IMM#showInputMethodPicker() API to open input method picker and this is also used from LockScreen or Settings UI. Auxiliary subtypes should not be listed there(Id7cf5d122). Thus framework shows auxiliary subtypes based on IMMS#mInputShown and LockScreen state, but it is not a perfect solution. If a physical keyboard is connected, the soft input may be gone. As the result, auxiliary subtypes won't be listed even if it is opened from NavBar keyboard icon. To fix this issue, this CL introduces IMM#showInputMethodPicker(boolean) to be able to decide showing auxiliary subtypes by caller. Note that IMM#showInputMethodPicker(boolean) is still hidden with @hide. There is no public API change in this CL. Bug: 20763994 Change-Id: Id156c85535a221235737ea6dcc15a67f1c4b9f71
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
d130bdc462b163f9afcaf144b477be80959e04d6 |
|
07-May-2015 |
Bart Sears <bsears@google.com> |
Revert "Always show auxiliary subtypes from NavBar keyboard icon." CL is breaking the build. Discussed with Seigo and verting until he can take a look at it. This reverts commit 80ff4ed6bb8dbdad7192d679a01096aa888e090b. Change-Id: I3decaf37198e5864a1763a059df4a36ebc70c5a7
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
80ff4ed6bb8dbdad7192d679a01096aa888e090b |
|
04-May-2015 |
Seigo Nonaka <nona@google.com> |
Always show auxiliary subtypes from NavBar keyboard icon. The auxiliary subtypes should be listed if the input method picker is opened from NavBar keyboard icon. However there is only IMM#showInputMethodPicker() API to open input method picker and this is also used from LockScreen or Settings UI. Auxiliary subtypes should not be listed there(Id7cf5d122). Thus framework shows auxiliary subtypes based on IMMS#mInputShown and LockScreen state, but it is not a perfect solution. If a physical keyboard is connected, the soft input may be gone. As the result, auxiliary subtypes won't be listed even if it is opened from NavBar keyboard icon. To fix this issue, this CL introduces IMM#showInputMethodPicker(boolean) to be able to decide showing auxiliary subtypes by caller. Note that IMM#showInputMethodPicker(boolean) is still hidden with @hide. There is no public API change in this CL. Bug: 20763994 Change-Id: I1e50ee42838a1bf64a612da4904aa93458d44ea4
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
71cf0a32d0d9a45653704a671154f26a8bc3132b |
|
24-Jul-2014 |
Yohei Yukawa <yukawa@google.com> |
Stop assuming language part in locale string is up to 2-letter With this CL, InputMethodSubtypeSwitchingController stop assuming that language part in locale string is up to 2-letter. this CL is not so risky because InputMethodSubtypeSwitchingController have used language part for nothing but sorting subtypes to determine the initial rotation order of IME switching. BUG: 16502987 Change-Id: Ib159ece0b7aa04f8fd7abc96c9a6e0832a4b7cd2
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
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/inputmethod/InputMethodSubtypeSwitchingController.java
|
07bd732034fbf4ce0e51b99c7199edf20dff1565 |
|
02-Jun-2014 |
Yohei Yukawa <yukawa@google.com> |
Reenable DynamicRotationList for language-switching-aware IMEs In order to reenable DynamicRotationList for language-switching-aware IMEs, this CL reverts I84291fd4a7d6192b3bd0c366c49 with fixing a bug that the dynamic rotation state is reset even when the list of input methods is not changed. With this CL, the dynamic rotation state is preserved when the enabled input methods is not changed actually. BUG: 7043015 Change-Id: I506828c7a363e79f1c767eeb28f0d3746ff1cb0d
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
529001f06761205bcaae1570d81556be397f56fb |
|
27-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Switch back to StaticRotationList from DynamicRotationList Ic005b94379f9d847ea, which introduced DynamicRotationList for smarter input method rotation, is suspected to be causing a strange behavior that InputMethodManager#switchToNextInputMethod is choosing unexected/disabled IME/subtype. With this CL, we switch back to StaticRotationList until the root cause is addressed. BUG: 7043015 Change-Id: I95fc8b28536cea6d09ea325e0caee14007cfc0a7
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
a9bda774276f1c5a1fc6fd67a7782a06e696be8f |
|
23-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Implement dynamic IME rotation based on user action With this CL, the IME rotation order will be updated dynamically based on user actions on IMEs. Currently only onCommitText is took into considered. Imagine that we have the following rotation order. [A, B, C, D, E] If a user action for C is observed, the rotation order will be updated as follows: [C, A, B, D, E] Then another user action for D updates the rotation order as follows: [D, C, A, B, E] BUG: 7043015 Change-Id: Ic005b94379f9d847ea87046473ed77d8018d930e
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
9b29d04565e1faf0a49054f538ed1881cb24fe12 |
|
22-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Consolidate the language-switching logic This CL does not change the existing behavior. In I84291fd4a7d6192b, the IME rotation group is logically devided into two groups, one is for IMEs that are declared as supportsSwitchingToNextInputMethod == true, and the other is IMEs that are not declared so. The problem is that the logic was implemented with a single ime/subtype list where these two kinds of IMEs are completely mixed. This makes the code unnecessarily complex. With this CL, these two rotation groups are actually managed as two different collections separately. This allows us to simplify the rotation logic as well as its test cases. This CL is also a groundwork to implement smarter language-switching logic that is applied to language-switching-aware IMEs only. BUG: 7043015 Change-Id: I7f08ec299ec41d614e2cd3912320687db1576e80
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
4fae8e165b3e10d8365ab9c08b13704d57e119c7 |
|
22-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Merge "Remove unnecessary internal lock"
|
5a647b69be8ac8d40c33ed9abe63e41514699e5b |
|
21-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Remove unnecessary internal lock Previously, InputMethodSubtypeSwitchingController has relied on its own internal lock for #getNextInputMethod and class has to be invalidated whenever InputMethodManagerService#mMethodMap is updated, any method of InputMethodSubtypeSwitchingController should be called under the global lock of InputMethodManagerService#mMethodMap. As a consequence, we can conclude that InputMethodSubtypeSwitchingController does not need its own internal lock. This CL also adds additional synchronization blocks into the constructor of InputMethodManagerService to address the existing inconsistency that methods with *Locked suffix are called without the lock actually. BUG: 7043015 Change-Id: I9d4d3d7232c984432185c10c13fb726a6158cac8
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
1c63079b55cbb161ec6bed731a751943e6ac5736 |
|
22-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Overrides ImeSubtypeListItem#toString This makes it easy to debug. BUG: 7043015 Change-Id: Ic389fc20d417c01196e06046f5259ad56a7aca6c
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
4013940b62ae2227c9b30d8761d7533ee6190a9f |
|
21-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Style fix and dead code removal This CL does not change the existing behavior. Smarter language switching will be coverted by subsequent CLs. BUG: 7043015 Change-Id: I281a33191d44be448492c2b74760cb8680719124
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
a1223cfe6f2e04da1ab6e0ad781068687446ee56 |
|
01-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Take supportsSwitchingToNextInputMethod into considertaion With this CL, InputMethodManager#switchToNextInputMethod starts behaving as if there are two rotation groups: one is for the new input methods that are declared with supportsSwitchingToNextInputMethod set to true to indicate they have some language switching UI, and the other is for the other input methods to preserve the existing behavior. In addition to the above change, this CL also fixes the behavior of InputMethodManager#shouldOfferSwitchingToNextInputMethod() so as to return true if and only if the former rotation group consists of two or more input methods, as originally designed. BUG: 12981505 Change-Id: I84291fd4a7d6192b3bd0c366c49586e79135584f
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
d1da11529813f6d3f51518b5fe028e0b8084f5cc |
|
01-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Add unit tests for InputMethodSubtypeSwitchingController This CL adds unit tests for InputMethodSubtypeSwitchingController as a ground work to make it aware of supportsSwitchingToNextInputMethod in a subsequent CL. This CL never changes existing behavior. BUG: 12981505 Change-Id: I3b2c46c47c7686b811fa248ad549f20875367425
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
f03ba0cacea9f05d60e7b36058efa291b616fc8c |
|
29-Oct-2013 |
Satoshi Kataoka <satok@google.com> |
Ignore IME subtype switching support flag until it's ready Bug: 7043015 Change-Id: Id55f4e23eb0931975c0f80fbd9cb28c2d29ac005
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
d787f6953371c4520bd51d6bf8eccc59f1d0f945 |
|
25-Oct-2013 |
Satoshi Kataoka <satok@google.com> |
Refactor InputMethodAndSubtypeCircularList Change-Id: I452bb01d4af7097d214f2c2e7ed58bf1ca9fa219
/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodSubtypeSwitchingController.java
|
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/inputmethod/InputMethodSubtypeSwitchingController.java
|