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:
@@ -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();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user