From 6541054cce964b7243d8779b54b168cda6741aff Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Thu, 27 Mar 2025 23:25:32 +0100 Subject: Remove symbols from the number row by default (#964) The number row option is changed into a ListPreference and controls whether the number row contains symbols or not. Co-authored-by: Joey Schaff --- res/values-cs/strings.xml | 3 +++ res/values-de/strings.xml | 3 +++ res/values-es/strings.xml | 3 +++ res/values-fa/strings.xml | 3 +++ res/values-fr/strings.xml | 3 +++ res/values-it/strings.xml | 3 +++ res/values-ja/strings.xml | 3 +++ res/values-ko/strings.xml | 3 +++ res/values-lv/strings.xml | 3 +++ res/values-pl/strings.xml | 3 +++ res/values-pt/strings.xml | 3 +++ res/values-ro/strings.xml | 3 +++ res/values-ru/strings.xml | 3 +++ res/values-tr/strings.xml | 3 +++ res/values-uk/strings.xml | 3 +++ res/values-vi/strings.xml | 3 +++ res/values-zh-rCN/strings.xml | 3 +++ res/values/arrays.xml | 10 ++++++++++ res/values/strings.xml | 3 +++ res/xml/number_row.xml | 21 +++++++++++---------- res/xml/number_row_no_symbols.xml | 13 +++++++++++++ res/xml/settings.xml | 2 +- srcs/juloo.keyboard2/Config.java | 14 +++++++++++--- srcs/juloo.keyboard2/KeyboardData.java | 9 ++------- srcs/juloo.keyboard2/LayoutModifier.java | 10 ++++++---- 25 files changed, 108 insertions(+), 25 deletions(-) create mode 100644 res/xml/number_row_no_symbols.xml diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml index 3c673e6..049a431 100644 --- a/res/values-cs/strings.xml +++ b/res/values-cs/strings.xml @@ -18,6 +18,9 @@ Rozložení %1$d: %2$s Odebrat rozložení Vlastní rozložení + + + Zobrazit NumPad Nikdy Pouze v režimu na šířku diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index a14135e..2880667 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -18,6 +18,9 @@ Layout %1$d: %2$s Layout entfernen Eigenes Layout + + + Ziffernblock anzeigen Nie Nur im Querformat diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml index cb3a4a6..2ac33c0 100644 --- a/res/values-es/strings.xml +++ b/res/values-es/strings.xml @@ -18,6 +18,9 @@ Diseño %1$d: %2$s Quitar diseño Diseño personalizado + + + Mostrar teclado numérico Nunca Solo en modo horizontal diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml index 10422fa..8df006e 100644 --- a/res/values-fa/strings.xml +++ b/res/values-fa/strings.xml @@ -18,6 +18,9 @@ طرح شخصی + + + نمایش پد شماره‌ها هرگز فقط در حالت افقی diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index cf263d3..7952316 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -18,6 +18,9 @@ Disposition %1$d: %2$s Supprimer Disposition personnalisée + + + Afficher le pavé numérique Jamais Seulement en mode paysage diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml index 2a553ff..c64ae4b 100644 --- a/res/values-it/strings.xml +++ b/res/values-it/strings.xml @@ -18,6 +18,9 @@ + + + diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml index e935308..a707fbe 100644 --- a/res/values-ja/strings.xml +++ b/res/values-ja/strings.xml @@ -18,6 +18,9 @@ レイアウト %1$d: %2$s レイアウトを削除 カスタムレイアウト + + + テンキーを表示 表示しない 横向きの時は表示 diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml index fae3e6c..48985ad 100644 --- a/res/values-ko/strings.xml +++ b/res/values-ko/strings.xml @@ -18,6 +18,9 @@ 레이아웃 %1$d: %2$s 레이아웃 제거 사용자 정의 레이아웃 + + + NumPad 표시 안 함 가로 모드에서만 diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml index 8d1ca38..a9677b4 100644 --- a/res/values-lv/strings.xml +++ b/res/values-lv/strings.xml @@ -18,6 +18,9 @@ Izkārtojums %1$d: %2$s Noņemt izkārtojumu Pielāgots izkārtojums + + + Rādīt ciparnīcu Nekad Tikai guleniskajā skatā diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index 039ca40..f181423 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -18,6 +18,9 @@ Układ %1$d: %2$s Usuń układ Własny układ + + + Pokaż klawiaturę numeryczną Nigdy Tylko w orientacji poziomej diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml index acee1fc..3d75d0d 100644 --- a/res/values-pt/strings.xml +++ b/res/values-pt/strings.xml @@ -18,6 +18,9 @@ Layout %1$d: %2$s Remover layout Layout personalizado + + + Mostrar Teclado Numérico Nunca Somente no modo paisagem diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml index fc5a53c..d39c4c5 100644 --- a/res/values-ro/strings.xml +++ b/res/values-ro/strings.xml @@ -18,6 +18,9 @@ Aranjament personalizat + + + Arată NumPad Niciodată Doar în mod panoramă diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index b3f0b7e..97366fd 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -18,6 +18,9 @@ Раскладка %1$d: %2$s Удалить раскладку Пользовательская раскладка + + + Показывать цифровой блок Никогда Только в ландшафтном режиме diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml index 20f5ee2..7fdd356 100644 --- a/res/values-tr/strings.xml +++ b/res/values-tr/strings.xml @@ -18,6 +18,9 @@ Tuş düzeni %1$d: %2$s Tuş düzenini kaldır Özel tuş düzeni + + + NumPadi göster Asla Sadece manzara modunda diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml index 6a94cb4..8f23c0e 100644 --- a/res/values-uk/strings.xml +++ b/res/values-uk/strings.xml @@ -18,6 +18,9 @@ Макет %1$d: %2$s Видалити макет Власний макет + + + Показувати числову клавіатуру Ніколи Тільки в альбомному режимі diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml index 1ddcc93..7e5a173 100644 --- a/res/values-vi/strings.xml +++ b/res/values-vi/strings.xml @@ -18,6 +18,9 @@ Tùy chỉnh bố cục + + + Hiện NumPad Không bao giờ Chỉ trong chế độ phong cảnh diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index f397e8f..4bc2894 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -18,6 +18,9 @@ 布局 %1$d:%2$s 移除布局 自定义布局 + + + 显示数字小键盘 从不 只在横屏显示 diff --git a/res/values/arrays.xml b/res/values/arrays.xml index a89c718..95e62df 100644 --- a/res/values/arrays.xml +++ b/res/values/arrays.xml @@ -1,5 +1,15 @@ + + no_number_row + no_symbols + symbols + + + @string/pref_show_number_row_no_number_row + @string/pref_show_number_row_no_symbols + @string/pref_show_number_row_symbols + never landscape diff --git a/res/values/strings.xml b/res/values/strings.xml index 50dc0ec..89cc6e1 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -18,6 +18,9 @@ Layout %1$d: %2$s Remove layout Custom layout + No number row + Number row without symbols + Number row with symbols Show NumPad Never Only in landscape mode diff --git a/res/xml/number_row.xml b/res/xml/number_row.xml index 2320ade..459a730 100644 --- a/res/xml/number_row.xml +++ b/res/xml/number_row.xml @@ -1,13 +1,14 @@ + - - - - - - - - - - + + + + + + + + + + diff --git a/res/xml/number_row_no_symbols.xml b/res/xml/number_row_no_symbols.xml new file mode 100644 index 0000000..3e207af --- /dev/null +++ b/res/xml/number_row_no_symbols.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/res/xml/settings.xml b/res/xml/settings.xml index c6a0c51..d13a101 100644 --- a/res/xml/settings.xml +++ b/res/xml/settings.xml @@ -8,7 +8,7 @@ - + diff --git a/srcs/juloo.keyboard2/Config.java b/srcs/juloo.keyboard2/Config.java index 7adbe60..206c12a 100644 --- a/srcs/juloo.keyboard2/Config.java +++ b/srcs/juloo.keyboard2/Config.java @@ -30,6 +30,7 @@ public final class Config // From the 'numpad_layout' option, also apply to the numeric pane. public boolean inverse_numpad = false; public boolean add_number_row; + public boolean number_row_symbols; public float swipe_dist_px; public float slide_step_px; // Let the system handle vibration when false. @@ -122,7 +123,9 @@ public final class Config } layouts = LayoutsPreference.load_from_preferences(res, _prefs); inverse_numpad = _prefs.getString("numpad_layout", "default").equals("low_first"); - add_number_row = _prefs.getBoolean("number_row", false); + String number_row = _prefs.getString("number_row", "no_number_row"); + add_number_row = !number_row.equals("no_number_row"); + number_row_symbols = number_row.equals("symbols"); // The baseline for the swipe distance correspond to approximately the // width of a key in portrait mode, as most layouts have 10 columns. // Multipled by the DPI ratio because most swipes are made in the diagonals. @@ -272,7 +275,7 @@ public final class Config /** Config migrations. */ - private static int CONFIG_VERSION = 1; + private static int CONFIG_VERSION = 2; public static void migrate(SharedPreferences prefs) { @@ -284,7 +287,7 @@ public final class Config e.putInt("version", CONFIG_VERSION); // Migrations might run on an empty [prefs] for new installs, in this case // they set the default values of complex options. - switch (saved_version) // Fallback switch + switch (saved_version) { case 0: // Primary, secondary and custom layout options are merged into the new @@ -298,7 +301,12 @@ public final class Config if (custom_layout != null && !custom_layout.equals("")) l.add(LayoutsPreference.CustomLayout.parse(custom_layout)); LayoutsPreference.save_to_preferences(e, l); + // Fallthrough case 1: + boolean add_number_row = prefs.getBoolean("number_row", false); + e.putString("number_row", add_number_row ? "no_symbols" : "no_number_row"); + // Fallthrough + case 2: default: break; } e.apply(); diff --git a/srcs/juloo.keyboard2/KeyboardData.java b/srcs/juloo.keyboard2/KeyboardData.java index fd111bf..e4a7506 100644 --- a/srcs/juloo.keyboard2/KeyboardData.java +++ b/srcs/juloo.keyboard2/KeyboardData.java @@ -177,14 +177,9 @@ public final class KeyboardData private static Map _layoutCache = new HashMap(); - public static Row load_bottom_row(Resources res) throws Exception + public static Row load_row(Resources res, int res_id) throws Exception { - return parse_row(res.getXml(R.xml.bottom_row)); - } - - public static Row load_number_row(Resources res) throws Exception - { - return parse_row(res.getXml(R.xml.number_row)); + return parse_row(res.getXml(res_id)); } public static KeyboardData load_num_pad(Resources res) throws Exception diff --git a/srcs/juloo.keyboard2/LayoutModifier.java b/srcs/juloo.keyboard2/LayoutModifier.java index 7be3fb6..22f15ec 100644 --- a/srcs/juloo.keyboard2/LayoutModifier.java +++ b/srcs/juloo.keyboard2/LayoutModifier.java @@ -11,7 +11,8 @@ public final class LayoutModifier { static Config globalConfig; static KeyboardData.Row bottom_row; - static KeyboardData.Row number_row; + static KeyboardData.Row number_row_no_symbols; + static KeyboardData.Row number_row_symbols; static KeyboardData num_pad; /** Update the layout according to the configuration. @@ -44,7 +45,7 @@ public final class LayoutModifier } else if (globalConfig.add_number_row && !kw.embedded_number_row) // The numpad removes the number row { - added_number_row = modify_number_row(number_row, kw); + added_number_row = modify_number_row(globalConfig.number_row_symbols ? number_row_symbols : number_row_no_symbols, kw); remove_keys.addAll(added_number_row.getKeys(0).keySet()); } // Add the bottom row before computing the extra keys @@ -204,8 +205,9 @@ public final class LayoutModifier globalConfig = globalConfig_; try { - number_row = KeyboardData.load_number_row(res); - bottom_row = KeyboardData.load_bottom_row(res); + number_row_no_symbols = KeyboardData.load_row(res, R.xml.number_row_no_symbols); + number_row_symbols = KeyboardData.load_row(res, R.xml.number_row); + bottom_row = KeyboardData.load_row(res, R.xml.bottom_row); num_pad = KeyboardData.load_num_pad(res); } catch (Exception e) -- cgit v1.2.3