diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml index 51d8ca03d4af9..978ca9466ff11 100644 --- a/packages/SettingsProvider/res/values/defaults.xml +++ b/packages/SettingsProvider/res/values/defaults.xml @@ -155,6 +155,9 @@ 500 + + false + 0 diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java index 83974db876252..987b5ea2db092 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java @@ -1940,7 +1940,7 @@ public class SettingsProvider extends ContentProvider { } private final class UpgradeController { - private static final int SETTINGS_VERSION = 124; + private static final int SETTINGS_VERSION = 125; private final int mUserId; @@ -2120,6 +2120,22 @@ public class SettingsProvider extends ContentProvider { currentVersion = 124; } + if (currentVersion == 124) { + // Version 124: allow OEMs to set a default value for whether IME should be + // shown when a physical keyboard is connected. + final SettingsState secureSettings = getSecureSettingsLocked(userId); + Setting currentSetting = secureSettings.getSettingLocked( + Settings.Secure.SHOW_IME_WITH_HARD_KEYBOARD); + if (currentSetting == null) { + secureSettings.insertSettingLocked( + Settings.Secure.SHOW_IME_WITH_HARD_KEYBOARD, + getContext().getResources().getBoolean( + R.bool.def_show_ime_with_hard_keyboard) ? "1" : "0", + SettingsState.SYSTEM_PACKAGE_NAME); + } + currentVersion = 125; + } + // vXXX: Add new settings above this point. // Return the current version.