OSDN Git Service

Select only preinstalled Spell Checker Services
authorGuliz Tuncay <gulizseray@google.com>
Wed, 16 Aug 2017 19:02:31 +0000 (12:02 -0700)
committerAtanas Kirilov <akirilov@google.com>
Wed, 14 Nov 2018 20:07:09 +0000 (20:07 +0000)
commitfa265ed97026e3b8675a2ccbf4035cad6dc1523f
tree54d4ddf1f5d5f2dbeb092112a54808a22a734c9e
parent301d17e4dd0420463b4201731366c1a64572940b
Select only preinstalled Spell Checker Services

When we are setting a new spell checker as the default one in
Secure.Settings, TSMS#findAvailSpellCheckerLocked can pick up
any available spell checker service. This violates the principle
that user should be warned whenever we are setting an untrusted
spell checker service as the default service, since the warning
dialog is never shown.

Fixes: 64764051
Bug: 118694079
Test: Manually as follows:
0. Make sure AOSP keyboard is pre-installed.
1. adb shell settings put --user 0 secure selected_spell_checker com.android.inputmethod.latin/.spellcheck.AndroidSpellCheckerService
2. tapas SampleSpellCheckerService
3. make -j
4. adb install --user 0  -r out/target/product/generic/system/app/SampleSpellCheckerService/SampleSpellCheckerService.apk
5. adb shell pm disable com.android.inputmethod.latin
6. adb shell settings get --user 0 secure selected_spell_checker
    -> com.android.inputmethod.latin/.spellcheck.AndroidSpellCheckerService
7. adb reboot
8. adb shell settings get --user 0 secure selected_spell_checker
    -> com.android.inputmethod.latin/.spellcheck.AndroidSpellCheckerService
Change-Id: I298ffbcfa5e32f43753f54fbebc40a414a5c0f9e
Merged-In: I298ffbcfa5e32f43753f54fbebc40a414a5c0f9e
services/core/java/com/android/server/TextServicesManagerService.java