diff options
| author | Jules Aguillon | 2021-04-13 01:58:25 +0200 |
|---|---|---|
| committer | Jules Aguillon | 2021-04-13 01:58:25 +0200 |
| commit | 0b1befcc8802331b15389509e77f723d992861ee (patch) | |
| tree | a8e1235f0643c5ddb783fbbf008d6bb4445b1844 /srcs/juloo.keyboard2/Keyboard2.java | |
| parent | 5f5efe31579110c3d91e9c4dad84e2deec70ec36 (diff) | |
| download | unexpected-keyboard-0b1befcc8802331b15389509e77f723d992861ee.tar.gz unexpected-keyboard-0b1befcc8802331b15389509e77f723d992861ee.zip | |
Fix layout pref under debug builds
Remove the use of [getIdentifier] because it requires the current
package name to be passed, which can't be found reliably since the
change in build system.
Diffstat (limited to 'srcs/juloo.keyboard2/Keyboard2.java')
| -rw-r--r-- | srcs/juloo.keyboard2/Keyboard2.java | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/srcs/juloo.keyboard2/Keyboard2.java b/srcs/juloo.keyboard2/Keyboard2.java index 6123093..e036a96 100644 --- a/srcs/juloo.keyboard2/Keyboard2.java +++ b/srcs/juloo.keyboard2/Keyboard2.java @@ -82,20 +82,30 @@ public class Keyboard2 extends InputMethodService _keyboardView.reset(); } + private int _getKeyboardLayoutRes(SharedPreferences prefs) + { + // Not looking up using [getIdentifier] as it was intended because the + // [packageName] argument can't be passed reliably (eg. debug builds) + switch (prefs.getString("keyboard_layout", null)) + { + case "azerty": + return R.xml.azerty; + default: + case "qwerty": + return R.xml.qwerty; + } + } + /* ** TODO: move this to Config object */ private void updateConfig() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); - String keyboardLayout = prefs.getString("keyboard_layout", null); - int xmlRes = 0; - - if (keyboardLayout != null) - xmlRes = getResources().getIdentifier(keyboardLayout, "xml", getPackageName()); - if (xmlRes == 0) - xmlRes = R.xml.azerty; - _textKeyboard = new KeyboardData(getResources().getXml(xmlRes)); + + _textKeyboard = new KeyboardData(getResources().getXml(_getKeyboardLayoutRes(prefs))); + if (_config.disableAccentKeys) + _textKeyboard.removeKeysByFlag(KeyValue.FLAGS_ACCENTS); _numericKeyboard = new KeyboardData(getResources().getXml(R.xml.numeric)); _emojiPane = null; } |
