Teach hard keyboard settings about correct user ID

Settings.Secure.SHOW_IME_WITH_HARD_KEYBOARD is a per-user settings.
PhysicalKeyboardFragment needs to use the current user's ID rather than
hard-coded user ID 0.

Bug: 29406181
Change-Id: Ie40f729f3c85e9ce9ad8f957caba338786b119d9
This commit is contained in:
Yohei Yukawa
2016-06-16 00:02:01 -07:00
parent 6913b6118f
commit 966476b7dc

View File

@@ -30,6 +30,7 @@ import android.hardware.input.InputManager;
import android.hardware.input.KeyboardLayout; import android.hardware.input.KeyboardLayout;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.os.UserHandle;
import android.provider.Settings.Secure; import android.provider.Settings.Secure;
import android.support.v14.preference.SwitchPreference; import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.Preference; import android.support.v7.preference.Preference;
@@ -60,7 +61,6 @@ import java.util.Objects;
public final class PhysicalKeyboardFragment extends SettingsPreferenceFragment public final class PhysicalKeyboardFragment extends SettingsPreferenceFragment
implements InputManager.InputDeviceListener { implements InputManager.InputDeviceListener {
private static final int USER_SYSTEM = 0;
private static final String KEYBOARD_ASSISTANCE_CATEGORY = "keyboard_assistance_category"; private static final String KEYBOARD_ASSISTANCE_CATEGORY = "keyboard_assistance_category";
private static final String SHOW_VIRTUAL_KEYBOARD_SWITCH = "show_virtual_keyboard_switch"; private static final String SHOW_VIRTUAL_KEYBOARD_SWITCH = "show_virtual_keyboard_switch";
private static final String KEYBOARD_SHORTCUTS_HELPER = "keyboard_shortcuts_helper"; private static final String KEYBOARD_SHORTCUTS_HELPER = "keyboard_shortcuts_helper";
@@ -93,7 +93,7 @@ public final class PhysicalKeyboardFragment extends SettingsPreferenceFragment
getContentResolver(), getContentResolver(),
new HashMap<>(), new HashMap<>(),
new ArrayList<>(), new ArrayList<>(),
USER_SYSTEM, UserHandle.myUserId(),
false /* copyOnWrite */); false /* copyOnWrite */);
mKeyboardAssistanceCategory = Preconditions.checkNotNull( mKeyboardAssistanceCategory = Preconditions.checkNotNull(
(PreferenceCategory) findPreference(KEYBOARD_ASSISTANCE_CATEGORY)); (PreferenceCategory) findPreference(KEYBOARD_ASSISTANCE_CATEGORY));
@@ -245,7 +245,7 @@ public final class PhysicalKeyboardFragment extends SettingsPreferenceFragment
Secure.getUriFor(Secure.SHOW_IME_WITH_HARD_KEYBOARD), Secure.getUriFor(Secure.SHOW_IME_WITH_HARD_KEYBOARD),
false, false,
mContentObserver, mContentObserver,
USER_SYSTEM); UserHandle.myUserId());
updateShowVirtualKeyboardSwitch(); updateShowVirtualKeyboardSwitch();
} }