Add label for default keyboard layout.
Bug: 6110399
Change-Id: I2431b99884cbd01de32f8cd6c14a3afbd18b5020
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 3270c19..2f432a3 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -2633,6 +2633,8 @@
<string name="keyboard_layout_picker_title">Choose keyboard layout</string>
<!-- String to show when no keyboard layouts are available. [CHAR LIMIT=60] -->
<string name="keyboard_layout_picker_empty_text">No keyboard layouts are available.</string>
+ <!-- Label of the default keyboard layout. [CHAR LIMIT=35] -->
+ <string name="keyboard_layout_default_label">Default</string>
<!-- User dictionary settings --><skip />
<!-- User dictionary settings, The titlebar text of the User dictionary settings screen. -->
diff --git a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
index e764a73..b48df03 100644
--- a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
+++ b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
@@ -420,6 +420,8 @@
pref.setTitle(device.getName());
if (keyboardLayout != null) {
pref.setSummary(keyboardLayout.getLabel());
+ } else {
+ pref.setSummary(R.string.keyboard_layout_default_label);
}
pref.setIntent(intent);
mHardKeyboardPreferenceList.add(pref);
diff --git a/src/com/android/settings/inputmethod/KeyboardLayoutPicker.java b/src/com/android/settings/inputmethod/KeyboardLayoutPicker.java
index 4cfae56..40b97fc 100644
--- a/src/com/android/settings/inputmethod/KeyboardLayoutPicker.java
+++ b/src/com/android/settings/inputmethod/KeyboardLayoutPicker.java
@@ -110,8 +110,12 @@
public KeyboardLayout[] loadInBackground() {
InputManager im = (InputManager)getContext().getSystemService(Context.INPUT_SERVICE);
KeyboardLayout[] list = im.getKeyboardLayouts();
- Arrays.sort(list);
- return list;
+ KeyboardLayout[] listWithDefault = new KeyboardLayout[list.length + 1];
+ listWithDefault[0] = new KeyboardLayout(null,
+ getContext().getString(R.string.keyboard_layout_default_label));
+ System.arraycopy(list, 0, listWithDefault, 1, list.length);
+ Arrays.sort(listWithDefault);
+ return listWithDefault;
}
@Override