As CL[1] removed InputMethodService#onToggleSoftInput since framework
side changed internal protocal to simplify the toggle logic without
this method callback.
Also remove ClientCallbackImpl#onToggleSoftInput for
MultiClientInputMethod sample app part to sync this change.
[1]: I390dc029e7bcc30c200926a9bfbbbd0268a1f714
Bug: 182071625
Test: build MultiClientInputMethod
Change-Id: I25568d9d0a963562fdc1d4a021f7016689b9ca54
Test script:
Step 1: Patch this CL, ag/11800786 and ag/11802630 on rvc-dev repo
Step 2: Build and flash Hawk
Step 3: Build and install a sample multi-client IME
make -j MultiClientInputMethod
adb install -r $OUT/system/priv-app/MultiClientInputMethod/MultiClientInputMethod.apk
Step 4: Enable multi-client IME for the side-loaded sample multi-client IME
adb root
adb shell setprop persist.debug.multi_client_ime com.example.android.multiclientinputmethod/.MultiClientInputMethod
adb reboot
Step 5: Open KitchenSync app, select carboard, enter text on Plain Text
tab (sample multi-session keyboard doesn't support numeric keyboard yet)
Bug: 158663354
Test: manual (see test script above)
Change-Id: I11cf467acb1091b1d417e5039519e09fa7be2bf8
Since this flag does not do any check during start input,
CL[1] removes this flag and the related parameter for IMM#onPostWindowFocus
to keep the logic simpler (included removing
ViewRootImpl#mHasHadWindowFocus).
Also remove this flag's debug string for For MultiClientInputMethod.
This is refector CL and does not impact any behavior change.
CL[1]: I9119f4846cbbd2b15246dea9a3b1fc5845dce951
Bug: 141738570
Test: Refector CL, make sure all existing test passed.
Change-Id: I9c8c9ac0ce5d0e4a803842d4cefb9119ec51024d
Introduce per-display active client. Also, deactivate previous client
when window loses focus so that connection can be restarted on next
focus gain.
Test: Manually using the steps in bug.
Bug: 131619304
Change-Id: Iefad3f018ef0cc1b3729af4a140afa1b52139ce0
Merged-In: Iefad3f018ef0cc1b3729af4a140afa1b52139ce0
- Uses the regular expression to match the display unique id.
- Changes the config separator from comma to slash, since comma is used in
virtual display unique id.
- Adds the example config for ActivityView.
Bug: 136039906
Test: manually with the example configs.
Change-Id: I51917d39c5cb11666dcb4fea69545f3075a024a7
Introduce per-display active client. Also, deactivate previous client
when window loses focus so that connection can be restarted on next
focus gain.
Test: Manually using the steps in bug.
Bug: 131619304
Change-Id: Iefad3f018ef0cc1b3729af4a140afa1b52139ce0
- Add a symbol shift keylayout.
- Apply a shifted state (upper case) on the next key input.
Bug: 132636760
Test: test manually.
Change-Id: I7447b9df47a953dad7216977e0b75ab801d863e4
- Add a symbol layout.
- Let it change the layout between qwerty and symbol on KEYCODE_MODE_CHANGE.
- Adjust key-sizes of the last row in the qwerty keyboard to make it 100%
Bug: 132636760
Test: test manually
Change-Id: I33bd70dc47498ad3f6d255641c9edf48113c053d
This is a followup for comment in I77bf8c844838f32888004611975cfa316255961b
lastClientId doesn't need to be static as MultiClientInputMethod is single instance.
Bug: 128751901
Test: Manually verified using steps in bug.
Change-Id: I049a5e9966408b1d304e23713fae2c3597d89a5c
MSIME sample can now set connection active/inactive.
Bug: 128751901
Test: Manually verified using steps in bug.
Change-Id: I77bf8c844838f32888004611975cfa316255961b
This CL adds a sample multi-client IME. Ahthough there are still many
limitations and missing features in this sample IME, this CL
demonstrates how a multi-client IME can be implemented.
Fix: 115784148
Test: prebuilts/checkstyle/checkstyle.py -f \
development/samples/MultiClientInputMethod/
Test: Manually verified as follows:
1. make -j MultiClientInputMethod
2. adb install -r $OUT/system/priv-app/MultiClientInputMethod/MultiClientInputMethod.apk
3. adb root
4. adb shell setprop persist.debug.multi_client_ime \
com.example.android.multiclientinputmethod/.MultiClientInputMethod
5. adb reboot
6. Try multiple text input scenario
Change-Id: Ide43e16448fa00355a2c08bc45ae94d98553da50