Merge "Fix OHM H/W key shortcut dosn't work appropriately" into sc-qpr1-dev am: 9a57cd553b
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15581982 Change-Id: I14c637fdd36d220711c24a5c4d75097c98a5da3d
This commit is contained in:
@@ -445,6 +445,9 @@ public class OneHandedController implements RemoteCallable<OneHandedController>
|
||||
mOneHandedSettingsUtil.registerSettingsKeyObserver(
|
||||
Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS,
|
||||
mContext.getContentResolver(), mShortcutEnabledObserver, newUserId);
|
||||
mOneHandedSettingsUtil.registerSettingsKeyObserver(
|
||||
Settings.Secure.ACCESSIBILITY_SHORTCUT_TARGET_SERVICE,
|
||||
mContext.getContentResolver(), mShortcutEnabledObserver, newUserId);
|
||||
}
|
||||
|
||||
private void unregisterSettingObservers() {
|
||||
|
||||
@@ -171,9 +171,22 @@ public final class OneHandedSettingsUtil {
|
||||
* @return true if user enabled one-handed shortcut in settings, false otherwise.
|
||||
*/
|
||||
public boolean getShortcutEnabled(ContentResolver resolver, int userId) {
|
||||
final String targets = Settings.Secure.getStringForUser(resolver,
|
||||
// Checks SOFTWARE_SHORTCUT_KEY
|
||||
final String targetsSwKey = Settings.Secure.getStringForUser(resolver,
|
||||
Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, userId);
|
||||
return TextUtils.isEmpty(targets) ? false : targets.contains(ONE_HANDED_MODE_TARGET_NAME);
|
||||
if (!TextUtils.isEmpty(targetsSwKey) && targetsSwKey.contains(
|
||||
ONE_HANDED_MODE_TARGET_NAME)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Checks HARDWARE_SHORTCUT_KEY
|
||||
final String targetsHwKey = Settings.Secure.getStringForUser(resolver,
|
||||
Settings.Secure.ACCESSIBILITY_SHORTCUT_TARGET_SERVICE, userId);
|
||||
if (!TextUtils.isEmpty(targetsHwKey) && targetsHwKey.contains(
|
||||
ONE_HANDED_MODE_TARGET_NAME)) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user