diff options
| author | Jules Aguillon | 2023-08-06 19:54:38 +0200 |
|---|---|---|
| committer | Jules Aguillon | 2023-08-06 19:54:38 +0200 |
| commit | 8d7b3efeb1f1685aac37c59145e0752e6b13e59b (patch) | |
| tree | a3b58456a4c6a4ca8b5ade4b975c5beab914a3cd | |
| parent | ddc4ff13784754179448967ba1e1a028a85e6a4a (diff) | |
| download | unexpected-keyboard-8d7b3efeb1f1685aac37c59145e0752e6b13e59b.tar.gz unexpected-keyboard-8d7b3efeb1f1685aac37c59145e0752e6b13e59b.zip | |
LayoutsPreference: Show layout display names
The internal name of layouts was rendered.
| -rw-r--r-- | srcs/juloo.keyboard2/LayoutsPreference.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/srcs/juloo.keyboard2/LayoutsPreference.java b/srcs/juloo.keyboard2/LayoutsPreference.java index 5d1d566..4ce8dfa 100644 --- a/srcs/juloo.keyboard2/LayoutsPreference.java +++ b/srcs/juloo.keyboard2/LayoutsPreference.java @@ -9,6 +9,7 @@ import android.util.AttributeSet; import android.widget.ArrayAdapter; import android.widget.EditText; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -18,7 +19,7 @@ public class LayoutsPreference extends ListGroupPreference static final List<String> DEFAULT = Collections.singletonList("system"); /** Layout names as stored in the preferences. */ - String[] _layout_names; + List<String> _layout_names; /** Text displayed for each layout in the dialog list. */ String[] _layout_display_names; @@ -27,7 +28,7 @@ public class LayoutsPreference extends ListGroupPreference super(ctx, attrs); setKey(KEY); Resources res = ctx.getResources(); - _layout_names = res.getStringArray(R.array.pref_layout_values); + _layout_names = Arrays.asList(res.getStringArray(R.array.pref_layout_values)); _layout_display_names = res.getStringArray(R.array.pref_layout_entries); } @@ -47,7 +48,9 @@ public class LayoutsPreference extends ListGroupPreference @Override String label_of_value(String value, int i) { - return getContext().getString(R.string.pref_layouts_item, i + 1, value); + int value_i = _layout_names.indexOf(value); + String lname = value_i < 0 ? value : _layout_display_names[value_i]; + return getContext().getString(R.string.pref_layouts_item, i + 1, lname); } @Override @@ -72,7 +75,7 @@ public class LayoutsPreference extends ListGroupPreference .setAdapter(layouts, new DialogInterface.OnClickListener(){ public void onClick(DialogInterface dialog, int which) { - callback.select(_layout_names[which]); + callback.select(_layout_names.get(which)); } }) .show(); |
