Initial code cleanup (#34)
* slightly optimized candidate scrolling animation * added missing Russian translations * the soft keys fit properly on the screen * central soft key is now always 'OK', because users do not care about the exact functions it performs in the code * removed 'mode notify'; it wasn't working on Android 11 anyway * removed 'space on 0' option; 0 is always 'space' now * disallowed global key remapping and removed the app setting
This commit is contained in:
parent
24ec816681
commit
b5e44e2a51
16 changed files with 90 additions and 229 deletions
|
|
@ -13,11 +13,11 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_vertical|center_horizontal"
|
android:layout_gravity="center_vertical|center_horizontal"
|
||||||
android:layout_marginBottom="2dp"
|
|
||||||
android:layout_marginTop="0dp"
|
android:layout_marginTop="0dp"
|
||||||
|
android:layout_marginBottom="2dp"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:padding="2dp"
|
android:padding="2dp"
|
||||||
android:paddingTop="5dp"
|
android:paddingTop="4dp"
|
||||||
android:text="@string/main_left_insert"
|
android:text="@string/main_left_insert"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="@color/button_text"
|
android:textColor="@color/button_text"
|
||||||
|
|
@ -29,9 +29,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_vertical|center_horizontal"
|
android:layout_gravity="center_vertical|center_horizontal"
|
||||||
android:drawableLeft="@drawable/holdicon"
|
android:drawableLeft="@drawable/holdicon"
|
||||||
android:drawablePadding="5dp"
|
android:drawablePadding="3dp"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:padding="2dp"
|
android:padding="0dp"
|
||||||
android:text="@string/main_left_addword"
|
android:text="@string/main_left_addword"
|
||||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||||
android:textColor="@color/button_text"
|
android:textColor="@color/button_text"
|
||||||
|
|
|
||||||
|
|
@ -1,61 +1,77 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="58dp"
|
||||||
android:layout_marginLeft="0dp"
|
android:layout_marginLeft="0dp"
|
||||||
android:layout_marginRight="0dp"
|
|
||||||
android:layout_marginTop="0dp"
|
android:layout_marginTop="0dp"
|
||||||
|
android:layout_marginRight="0dp"
|
||||||
android:background="@drawable/bggradient"
|
android:background="@drawable/bggradient"
|
||||||
android:baselineAligned="true"
|
android:baselineAligned="true"
|
||||||
android:gravity="bottom"
|
android:gravity="bottom"
|
||||||
android:orientation="horizontal" >
|
android:orientation="horizontal">
|
||||||
|
|
||||||
<ViewSwitcher
|
<ViewSwitcher
|
||||||
android:id="@+id/main_left"
|
android:id="@+id/main_left"
|
||||||
android:layout_width="190px"
|
android:layout_width="0dp"
|
||||||
android:layout_height="58dp"
|
android:layout_height="match_parent"
|
||||||
android:layout_marginLeft="1px"
|
android:layout_marginLeft="1px"
|
||||||
android:layout_marginRight="1px"
|
android:layout_marginRight="1px"
|
||||||
|
android:layout_weight="5"
|
||||||
android:background="@drawable/button_custom"
|
android:background="@drawable/button_custom"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
android:longClickable="true" >
|
android:longClickable="true">
|
||||||
|
|
||||||
<include android:id="@+id/main_left_nohold" layout="@layout/lbuttonnohold" />
|
<include
|
||||||
<include android:id="@+id/main_left_hold" layout="@layout/lbuttonhold" />
|
android:id="@+id/main_left_nohold"
|
||||||
|
layout="@layout/lbuttonnohold"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
|
||||||
|
<include
|
||||||
|
android:id="@+id/main_left_hold"
|
||||||
|
layout="@layout/lbuttonhold"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
|
||||||
</ViewSwitcher>
|
</ViewSwitcher>
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/main_mid"
|
android:id="@+id/main_mid"
|
||||||
android:layout_width="94px"
|
android:layout_width="0dp"
|
||||||
android:layout_height="58dp"
|
android:layout_height="58dp"
|
||||||
android:layout_marginLeft="1px"
|
android:layout_marginLeft="1px"
|
||||||
android:layout_marginRight="1px"
|
android:layout_marginRight="1px"
|
||||||
|
android:layout_weight="2"
|
||||||
android:background="@drawable/button_custom"
|
android:background="@drawable/button_custom"
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
android:longClickable="true"
|
android:longClickable="true"
|
||||||
|
android:paddingLeft="2dp"
|
||||||
|
android:paddingRight="2dp"
|
||||||
android:text="@string/main_mid"
|
android:text="@string/main_mid"
|
||||||
android:textColor="@color/button_text" />
|
android:textColor="@color/button_text" />
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:id="@+id/main_right"
|
android:id="@+id/main_right"
|
||||||
android:layout_width="190px"
|
android:layout_width="0dp"
|
||||||
android:layout_height="58dp"
|
android:layout_height="match_parent"
|
||||||
android:layout_marginLeft="1px"
|
android:layout_marginLeft="1px"
|
||||||
android:layout_marginTop="0dp"
|
android:layout_marginTop="0dp"
|
||||||
|
android:layout_weight="5"
|
||||||
android:background="@drawable/button_custom"
|
android:background="@drawable/button_custom"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
android:longClickable="true"
|
android:longClickable="true"
|
||||||
android:paddingLeft="2dp"
|
android:paddingLeft="2dp"
|
||||||
android:paddingTop="1dp" >
|
android:paddingTop="1dp">
|
||||||
|
|
||||||
<include
|
<include
|
||||||
android:layout_width="wrap_content"
|
layout="@layout/rbutton"
|
||||||
android:layout_height="wrap_content"
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_alignParentEnd="true"
|
||||||
android:layout_marginTop="0dp"
|
android:layout_marginTop="0dp"
|
||||||
layout="@layout/rbutton" />
|
android:layout_marginEnd="0dp" />
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
|
||||||
|
|
@ -13,13 +13,13 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_vertical|center_horizontal"
|
android:layout_gravity="center_vertical|center_horizontal"
|
||||||
android:layout_marginBottom="2dp"
|
|
||||||
android:layout_marginTop="0dp"
|
android:layout_marginTop="0dp"
|
||||||
|
android:layout_marginBottom="2dp"
|
||||||
android:drawableLeft="@drawable/rcycle"
|
android:drawableLeft="@drawable/rcycle"
|
||||||
android:drawablePadding="5dp"
|
android:drawablePadding="5dp"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:padding="2dp"
|
android:padding="2dp"
|
||||||
android:paddingTop="5dp"
|
android:paddingTop="4dp"
|
||||||
android:text="@string/main_right_upper"
|
android:text="@string/main_right_upper"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="@color/button_text"
|
android:textColor="@color/button_text"
|
||||||
|
|
@ -31,9 +31,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_vertical|center_horizontal"
|
android:layout_gravity="center_vertical|center_horizontal"
|
||||||
android:drawableLeft="@drawable/holdicon"
|
android:drawableLeft="@drawable/holdicon"
|
||||||
android:drawablePadding="5dp"
|
android:drawablePadding="3dp"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:padding="2dp"
|
android:padding="0dp"
|
||||||
android:text="@string/main_right_lower"
|
android:text="@string/main_right_lower"
|
||||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||||
android:textColor="@color/button_text"
|
android:textColor="@color/button_text"
|
||||||
|
|
|
||||||
|
|
@ -7,11 +7,9 @@
|
||||||
<string name="pref_inputmode_desc">Дали да е включено или не подсказването на думи, когато започнете да пишете</string>
|
<string name="pref_inputmode_desc">Дали да е включено или не подсказването на думи, когато започнете да пишете</string>
|
||||||
<string name="traditionalt9_settings">Настройки на Traditional T9</string>
|
<string name="traditionalt9_settings">Настройки на Traditional T9</string>
|
||||||
<string name="main_left_insert">Въведи символ</string>
|
<string name="main_left_insert">Въведи символ</string>
|
||||||
<string name="main_left_addword">Добави дума</string>
|
<string name="main_left_addword">Нова дума</string>
|
||||||
<string name="main_mid">Готово</string>
|
<string name="main_right_upper">Режим</string>
|
||||||
<string name="main_mid_commit">Въведи</string>
|
<string name="main_right_lower">Настройки</string>
|
||||||
<string name="main_right_upper">Следващ режим</string>
|
|
||||||
<string name="main_right_lower">Избор</string>
|
|
||||||
<string name="main_left_notfound">Добавяне на дума?</string>
|
<string name="main_left_notfound">Добавяне на дума?</string>
|
||||||
<string name="ricon_desc">Hold Icon</string>
|
<string name="ricon_desc">Hold Icon</string>
|
||||||
<string name="symbol_next">Следващи</string>
|
<string name="symbol_next">Следващи</string>
|
||||||
|
|
@ -20,7 +18,7 @@
|
||||||
<string name="smiley_insert">Въведи усмивка</string>
|
<string name="smiley_insert">Въведи усмивка</string>
|
||||||
<string name="symbol_page">Страница: %1$s/%2$s</string>
|
<string name="symbol_page">Страница: %1$s/%2$s</string>
|
||||||
|
|
||||||
<string name="add_word">Добави дума</string>
|
<string name="add_word">Добави</string>
|
||||||
<string name="close">Затвори</string>
|
<string name="close">Затвори</string>
|
||||||
<string name="add_word_blank">Не може да се въведе никаква дума.</string>
|
<string name="add_word_blank">Не може да се въведе никаква дума.</string>
|
||||||
<string name="add_word_badchar">Не може да се въведе дума с непозволени символи за %1$s (%2$s).</string>
|
<string name="add_word_badchar">Не може да се въведе дума с непозволени символи за %1$s (%2$s).</string>
|
||||||
|
|
@ -46,9 +44,6 @@
|
||||||
<string name="pref_querytest">Query test</string>
|
<string name="pref_querytest">Query test</string>
|
||||||
<string name="pref_testfunc">Test func</string>
|
<string name="pref_testfunc">Test func</string>
|
||||||
|
|
||||||
<string name="pref_mode_notify">Показвай режима</string>
|
|
||||||
<string name="pref_mode_notify_subtitle">Ще се показва икона с текущият режим на писане</string>
|
|
||||||
|
|
||||||
<string name="pref_loadingdict">Зареждане на речник…</string>
|
<string name="pref_loadingdict">Зареждане на речник…</string>
|
||||||
<string name="pref_loadinguserdict">Зареждане на вашия речник…</string>
|
<string name="pref_loadinguserdict">Зареждане на вашия речник…</string>
|
||||||
<string name="pref_load_title">Зареди речник</string>
|
<string name="pref_load_title">Зареди речник</string>
|
||||||
|
|
@ -71,10 +66,6 @@
|
||||||
<string name="pref_reloadKeysDone">Упешно зареждане.</string>
|
<string name="pref_reloadKeysDone">Упешно зареждане.</string>
|
||||||
<string name="pref_reloadKeysDoneWE">Имаше грешки при зареждане (виж logcat.)</string>
|
<string name="pref_reloadKeysDoneWE">Имаше грешки при зареждане (виж logcat.)</string>
|
||||||
<string name="pref_reloadKeysNoFile">Няма файл keymap.txt.</string>
|
<string name="pref_reloadKeysNoFile">Няма файл keymap.txt.</string>
|
||||||
<string name="pref_keyRemap">Смени клавиши</string>
|
|
||||||
<string name="pref_keyRemapSum">Ако е избрано, сменените клавиши ще важат не само при писане, но и във всички приложения.</string>
|
|
||||||
<string name="pref_spaceOnZero">Интервал с 0</string>
|
|
||||||
<string name="pref_spaceOnZeroSum" tools:ignore="MissingTranslation">Ако е избрано, ще пишете интервал с 0, вместо с #.</string>
|
|
||||||
|
|
||||||
<string name="hello_world">Работи!</string>
|
<string name="hello_world">Работи!</string>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,6 @@
|
||||||
<string name="traditionalt9_settings">Traditional T9 Einstellungen</string>
|
<string name="traditionalt9_settings">Traditional T9 Einstellungen</string>
|
||||||
<string name="main_left_insert">Symbole</string>
|
<string name="main_left_insert">Symbole</string>
|
||||||
<string name="main_left_addword">Wort hinzu</string>
|
<string name="main_left_addword">Wort hinzu</string>
|
||||||
<string name="main_mid">Fertig</string>
|
|
||||||
<string name="main_mid_commit">Eingabe</string>
|
|
||||||
<string name="main_right_upper">Modus</string>
|
<string name="main_right_upper">Modus</string>
|
||||||
<string name="main_right_lower">Optionen</string>
|
<string name="main_right_lower">Optionen</string>
|
||||||
<string name="main_left_notfound">Wort hinzu?</string>
|
<string name="main_left_notfound">Wort hinzu?</string>
|
||||||
|
|
@ -46,9 +44,6 @@
|
||||||
<string name="pref_querytest">Query test</string>
|
<string name="pref_querytest">Query test</string>
|
||||||
<string name="pref_testfunc">Test func</string>
|
<string name="pref_testfunc">Test func</string>
|
||||||
|
|
||||||
<string name="pref_mode_notify">Modus-Benachrichtigungen</string>
|
|
||||||
<string name="pref_mode_notify_subtitle">Genutzt für die Vokalisierung von Modusänderungen</string>
|
|
||||||
|
|
||||||
<string name="pref_loadingdict">Lade Wörterbuch…</string>
|
<string name="pref_loadingdict">Lade Wörterbuch…</string>
|
||||||
<string name="pref_loadinguserdict">Lade Benutzerwörterbuch…</string>
|
<string name="pref_loadinguserdict">Lade Benutzerwörterbuch…</string>
|
||||||
<string name="pref_load_title">IME-Wörterbuch laden</string>
|
<string name="pref_load_title">IME-Wörterbuch laden</string>
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,6 @@
|
||||||
<string name="traditionalt9_settings">Configuration Traditional T9 </string>
|
<string name="traditionalt9_settings">Configuration Traditional T9 </string>
|
||||||
<string name="main_left_insert">Ins. symbole</string>
|
<string name="main_left_insert">Ins. symbole</string>
|
||||||
<string name="main_left_addword">Aj. mot</string>
|
<string name="main_left_addword">Aj. mot</string>
|
||||||
<string name="main_mid">Terminer</string>
|
|
||||||
<string name="main_mid_commit">Accepter</string>
|
|
||||||
<string name="main_right_upper">Changer de mode</string>
|
<string name="main_right_upper">Changer de mode</string>
|
||||||
<string name="main_right_lower">Options</string>
|
<string name="main_right_lower">Options</string>
|
||||||
<string name="main_left_notfound">Aj. mot?</string>
|
<string name="main_left_notfound">Aj. mot?</string>
|
||||||
|
|
@ -46,9 +44,6 @@
|
||||||
<string name="pref_querytest">Tester le clavier</string>
|
<string name="pref_querytest">Tester le clavier</string>
|
||||||
<string name="pref_testfunc">Teste fonc</string>
|
<string name="pref_testfunc">Teste fonc</string>
|
||||||
|
|
||||||
<string name="pref_mode_notify">Mode notifications</string>
|
|
||||||
<string name="pref_mode_notify_subtitle">Utilisé pour la vocalisation de changement de mode</string>
|
|
||||||
|
|
||||||
<string name="pref_loadingdict">Chargement du dictionnaire…</string>
|
<string name="pref_loadingdict">Chargement du dictionnaire…</string>
|
||||||
<string name="pref_loadinguserdict">Chargement du dictionnaire utilisateur…</string>
|
<string name="pref_loadinguserdict">Chargement du dictionnaire utilisateur…</string>
|
||||||
<string name="pref_load_title">Charger le dictionnaire IME</string>
|
<string name="pref_load_title">Charger le dictionnaire IME</string>
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,6 @@
|
||||||
<string name="traditionalt9_settings">Traditional T9 Impostazioni</string>
|
<string name="traditionalt9_settings">Traditional T9 Impostazioni</string>
|
||||||
<string name="main_left_insert">Ins. simbolo</string>
|
<string name="main_left_insert">Ins. simbolo</string>
|
||||||
<string name="main_left_addword">Agg. parola</string>
|
<string name="main_left_addword">Agg. parola</string>
|
||||||
<string name="main_mid">Fatto</string>
|
|
||||||
<string name="main_mid_commit">Accettare</string>
|
|
||||||
<string name="main_right_upper">Cambia modalità</string>
|
<string name="main_right_upper">Cambia modalità</string>
|
||||||
<string name="main_right_lower">Opzioni</string>
|
<string name="main_right_lower">Opzioni</string>
|
||||||
<string name="main_left_notfound">Agg. parola?</string>
|
<string name="main_left_notfound">Agg. parola?</string>
|
||||||
|
|
@ -46,9 +44,6 @@
|
||||||
<string name="pref_querytest">Test ricerca</string>
|
<string name="pref_querytest">Test ricerca</string>
|
||||||
<string name="pref_testfunc">Test func</string>
|
<string name="pref_testfunc">Test func</string>
|
||||||
|
|
||||||
<string name="pref_mode_notify">Modalità notifiche</string>
|
|
||||||
<string name="pref_mode_notify_subtitle">Usato per la vocalizzazione del cambio modalità</string>
|
|
||||||
|
|
||||||
<string name="pref_loadingdict">Caricamento dizionario…</string>
|
<string name="pref_loadingdict">Caricamento dizionario…</string>
|
||||||
<string name="pref_loadinguserdict">Caricamento dizionario utente…</string>
|
<string name="pref_loadinguserdict">Caricamento dizionario utente…</string>
|
||||||
<string name="pref_load_title">Caricamento dizionario IME</string>
|
<string name="pref_load_title">Caricamento dizionario IME</string>
|
||||||
|
|
|
||||||
|
|
@ -11,10 +11,8 @@
|
||||||
<string name="ime_name">Клавиатура T9</string>
|
<string name="ime_name">Клавиатура T9</string>
|
||||||
<string name="ime_number">Цифры</string>
|
<string name="ime_number">Цифры</string>
|
||||||
<string name="main_left_addword">Добавить слово</string>
|
<string name="main_left_addword">Добавить слово</string>
|
||||||
<string name="main_left_insert">вставить символ</string>
|
<string name="main_left_insert">Вставить символ</string>
|
||||||
<string name="main_left_notfound">Добавить слово?</string>
|
<string name="main_left_notfound">Добавить слово?</string>
|
||||||
<string name="main_mid">Готово</string>
|
|
||||||
<string name="main_mid_commit">Commit</string>
|
|
||||||
<string name="main_right_lower">Изменить IME</string>
|
<string name="main_right_lower">Изменить IME</string>
|
||||||
<string name="main_right_upper">Режим ввода</string>
|
<string name="main_right_upper">Режим ввода</string>
|
||||||
<string name="pref_backup_noext">Ошибка: Внешняя память недоступна. Резервное копирование невозможно невозможно.</string>
|
<string name="pref_backup_noext">Ошибка: Внешняя память недоступна. Резервное копирование невозможно невозможно.</string>
|
||||||
|
|
@ -58,12 +56,11 @@
|
||||||
<string name="updating_database_done">Обновление базы данных словаря выполнено успешно.</string>
|
<string name="updating_database_done">Обновление базы данных словаря выполнено успешно.</string>
|
||||||
<string name="updating_database_unavailable">Обновление базы данных словаря недоступно.</string>
|
<string name="updating_database_unavailable">Обновление базы данных словаря недоступно.</string>
|
||||||
<string name="pref_loaduser_notfound"> Ошибка. \n Словарь %1$s не найден. </string>
|
<string name="pref_loaduser_notfound"> Ошибка. \n Словарь %1$s не найден. </string>
|
||||||
<string name="pref_mode_notify_subtitle">Используется для озвучивания изменения режима ввода.</string>
|
<string name="database_settings_notready">База данных недоступна. Используем значения по умолчанию.</string>
|
||||||
<string name="pref_mode_notify">Режим уведомления</string>
|
<string name="pref_reloadKeys">>Перезагрузить кеймап</string>
|
||||||
<string name="database_settings_notready">Database unavailable. Using default settings.</string>
|
|
||||||
<string name="pref_reloadKeys">Force reload of key overrides</string>
|
|
||||||
|
|
||||||
<string name="title_activity_add_word">Добавить слово</string>
|
<string name="title_activity_add_word">Добавить слово</string>
|
||||||
<string name="traditionalt9_settings">Traditional T9 настройки</string>
|
<string name="traditionalt9_settings">Traditional T9 настройки</string>
|
||||||
|
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
||||||
|
|
@ -13,8 +13,6 @@
|
||||||
<string name="main_left_addword">Додати слово</string>
|
<string name="main_left_addword">Додати слово</string>
|
||||||
<string name="main_left_insert">Вставити символ</string>
|
<string name="main_left_insert">Вставити символ</string>
|
||||||
<string name="main_left_notfound">Додати слово?</string>
|
<string name="main_left_notfound">Додати слово?</string>
|
||||||
<string name="main_mid">Готово</string>
|
|
||||||
<string name="main_mid_commit">Застосувати</string>
|
|
||||||
<string name="main_right_lower">Змінити IME</string>
|
<string name="main_right_lower">Змінити IME</string>
|
||||||
<string name="main_right_upper">Режим введення</string>
|
<string name="main_right_upper">Режим введення</string>
|
||||||
<string name="pref_backup_noext">Помилка: Зовнішня пам\'ять недоступна. Резервне копіювання неможливе.</string>
|
<string name="pref_backup_noext">Помилка: Зовнішня пам\'ять недоступна. Резервне копіювання неможливе.</string>
|
||||||
|
|
@ -58,8 +56,6 @@
|
||||||
<string name="updating_database_done">Оновлення бази даних словника виконано успішно.</string>
|
<string name="updating_database_done">Оновлення бази даних словника виконано успішно.</string>
|
||||||
<string name="updating_database_unavailable">Оновлення бізи даних словника недоступне.</string>
|
<string name="updating_database_unavailable">Оновлення бізи даних словника недоступне.</string>
|
||||||
<string name="pref_loaduser_notfound"> Помилка. \n Словник %1$s не знайдено. </string>
|
<string name="pref_loaduser_notfound"> Помилка. \n Словник %1$s не знайдено. </string>
|
||||||
<string name="pref_mode_notify_subtitle">Використовується для індикації зміни режима введення.</string>
|
|
||||||
<string name="pref_mode_notify">Режим індикації</string>
|
|
||||||
<string name="database_settings_notready">База даних недоступна. Використовуюься значення за замовчуванням.</string>
|
<string name="database_settings_notready">База даних недоступна. Використовуюься значення за замовчуванням.</string>
|
||||||
<string name="pref_reloadKeys">Перезавантажити значення клавіш</string>
|
<string name="pref_reloadKeys">Перезавантажити значення клавіш</string>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,7 @@
|
||||||
<string name="traditionalt9_settings">Traditional T9 Settings</string>
|
<string name="traditionalt9_settings">Traditional T9 Settings</string>
|
||||||
<string name="main_left_insert">Insert symbol</string>
|
<string name="main_left_insert">Insert symbol</string>
|
||||||
<string name="main_left_addword">Add word</string>
|
<string name="main_left_addword">Add word</string>
|
||||||
<string name="main_mid">Done</string>
|
<string name="main_mid" translatable="false">OK</string>
|
||||||
<string name="main_mid_commit">Commit</string>
|
|
||||||
<string name="main_right_upper">Cycle Mode</string>
|
<string name="main_right_upper">Cycle Mode</string>
|
||||||
<string name="main_right_lower">Options</string>
|
<string name="main_right_lower">Options</string>
|
||||||
<string name="main_left_notfound">Add word?</string>
|
<string name="main_left_notfound">Add word?</string>
|
||||||
|
|
@ -48,9 +47,6 @@
|
||||||
<string name="pref_querytest">Query test</string>
|
<string name="pref_querytest">Query test</string>
|
||||||
<string name="pref_testfunc">Test func</string>
|
<string name="pref_testfunc">Test func</string>
|
||||||
|
|
||||||
<string name="pref_mode_notify">Mode notifications</string>
|
|
||||||
<string name="pref_mode_notify_subtitle">Used for vocalization of mode changes</string>
|
|
||||||
|
|
||||||
<string name="pref_loadingdict">Loading dictionary…</string>
|
<string name="pref_loadingdict">Loading dictionary…</string>
|
||||||
<string name="pref_loadinguserdict">Loading user dictionary…</string>
|
<string name="pref_loadinguserdict">Loading user dictionary…</string>
|
||||||
<string name="pref_load_title">Load IME dictionary</string>
|
<string name="pref_load_title">Load IME dictionary</string>
|
||||||
|
|
@ -73,10 +69,6 @@
|
||||||
<string name="pref_reloadKeysDone" translatable="false">Reload complete.</string>
|
<string name="pref_reloadKeysDone" translatable="false">Reload complete.</string>
|
||||||
<string name="pref_reloadKeysDoneWE" translatable="false">Reload complete with errors (check logcat.)</string>
|
<string name="pref_reloadKeysDoneWE" translatable="false">Reload complete with errors (check logcat.)</string>
|
||||||
<string name="pref_reloadKeysNoFile" translatable="false">No keymap.txt file found.</string>
|
<string name="pref_reloadKeysNoFile" translatable="false">No keymap.txt file found.</string>
|
||||||
<string name="pref_keyRemap" translatable="false">Translate keys</string>
|
|
||||||
<string name="pref_keyRemapSum" translatable="false">Enable to send translated keys to apps, otherwise keymap is for IME only.</string>
|
|
||||||
<string name="pref_spaceOnZero" translatable="false">Space on 0 key</string>
|
|
||||||
<string name="pref_spaceOnZeroSum" tools:ignore="MissingTranslation">Map space to 0 key if checked, otherwise to # key.</string>
|
|
||||||
|
|
||||||
<string name="hello_world">Hello world!</string>
|
<string name="hello_world">Hello world!</string>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- WHEN ADDING NEW SETTING KEY THAT STORES VALUE, ADD KEY AND QUERY TO T9DB -->
|
|
||||||
<Settings>
|
<Settings>
|
||||||
<Setting title="@string/pref_help" id="help" />
|
<Setting title="@string/pref_help" id="help" />
|
||||||
<SettingList
|
<SettingList
|
||||||
|
|
@ -15,28 +14,10 @@
|
||||||
entries="@array/pref_lang_titles"
|
entries="@array/pref_lang_titles"
|
||||||
entryValues="@array/pref_lang_values"
|
entryValues="@array/pref_lang_values"
|
||||||
title="@string/pref_lang_title" />
|
title="@string/pref_lang_title" />
|
||||||
<SettingCheck
|
|
||||||
id="pref_spaceOnZero"
|
|
||||||
title="@string/pref_spaceOnZero"
|
|
||||||
summary="@string/pref_spaceOnZeroSum"
|
|
||||||
defaultValue="false"
|
|
||||||
/>
|
|
||||||
<SettingCheck
|
|
||||||
id="pref_mode_notify"
|
|
||||||
title="@string/pref_mode_notify"
|
|
||||||
summary="@string/pref_mode_notify_subtitle"
|
|
||||||
defaultValue="false"
|
|
||||||
/>
|
|
||||||
<Setting title="@string/pref_loaddict" id="loaddict"/>
|
<Setting title="@string/pref_loaddict" id="loaddict"/>
|
||||||
<Setting title="@string/pref_loaduserdict" summary="@string/pref_loaduserdictdesc" id="loaduserdict"/>
|
<Setting title="@string/pref_loaduserdict" summary="@string/pref_loaduserdictdesc" id="loaduserdict"/>
|
||||||
<Setting title="@string/pref_nukedict" id="nukedict"/>
|
<Setting title="@string/pref_nukedict" id="nukedict"/>
|
||||||
<Setting title="@string/pref_backupdict" id="backupdict"/>
|
<Setting title="@string/pref_backupdict" id="backupdict"/>
|
||||||
<Setting title="@string/pref_restoredict" id="restoredict"/>
|
<Setting title="@string/pref_restoredict" id="restoredict"/>
|
||||||
<Setting title="@string/pref_reloadKeys" summary="@string/pref_reloadKeysSum" id="reloadKeys"/>
|
<Setting title="@string/pref_reloadKeys" summary="@string/pref_reloadKeysSum" id="reloadKeys"/>
|
||||||
<SettingCheck
|
|
||||||
id="pref_keyMap"
|
|
||||||
title="@string/pref_keyRemap"
|
|
||||||
summary="@string/pref_keyRemapSum"
|
|
||||||
defaultValue="false"
|
|
||||||
/>
|
|
||||||
</Settings>
|
</Settings>
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ public class CandidateView extends View {
|
||||||
private Rect mBgPadding;
|
private Rect mBgPadding;
|
||||||
|
|
||||||
private static final int MAX_SUGGESTIONS = 32;
|
private static final int MAX_SUGGESTIONS = 32;
|
||||||
private static final int SCROLL_PIXELS = 20;
|
private static final int CANDIDATE_SCROLL_STEP = 20; // px
|
||||||
|
|
||||||
private int[] mWordWidth = new int[MAX_SUGGESTIONS];
|
private int[] mWordWidth = new int[MAX_SUGGESTIONS];
|
||||||
private int[] mWordX = new int[MAX_SUGGESTIONS];
|
private int[] mWordX = new int[MAX_SUGGESTIONS];
|
||||||
|
|
@ -152,27 +152,21 @@ public class CandidateView extends View {
|
||||||
x += wordWidth;
|
x += wordWidth;
|
||||||
}
|
}
|
||||||
mTotalWidth = x;
|
mTotalWidth = x;
|
||||||
if (mTargetScrollX != getScrollX()) {
|
scrollTargetIntoView();
|
||||||
scrollToTarget();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void scrollToTarget() {
|
private void scrollTargetIntoView() {
|
||||||
int sx = getScrollX();
|
int currentX = getScrollX();
|
||||||
if (mTargetScrollX > sx) {
|
int scrollDistance = mTargetScrollX - currentX;
|
||||||
sx += SCROLL_PIXELS;
|
|
||||||
if (sx >= mTargetScrollX) {
|
if (scrollDistance == 0) {
|
||||||
sx = mTargetScrollX;
|
return;
|
||||||
requestLayout();
|
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
sx -= SCROLL_PIXELS;
|
int maxStepX = (Math.abs(scrollDistance) > getWidth() * 0.5) ? (int)(CANDIDATE_SCROLL_STEP * 2.25) : CANDIDATE_SCROLL_STEP;
|
||||||
if (sx <= mTargetScrollX) {
|
int stepX = Integer.signum(scrollDistance) * Math.min(Math.abs(scrollDistance), maxStepX);
|
||||||
sx = mTargetScrollX;
|
|
||||||
requestLayout();
|
scrollTo(currentX + stepX, getScrollY());
|
||||||
}
|
|
||||||
}
|
|
||||||
scrollTo(sx, getScrollY());
|
|
||||||
invalidate();
|
invalidate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -196,7 +190,7 @@ public class CandidateView extends View {
|
||||||
invalidate();
|
invalidate();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void scrollSuggestion(int increment) {
|
protected void scrollToSuggestion(int increment) {
|
||||||
if (mSuggestions != null && mSuggestions.size() > 1) {
|
if (mSuggestions != null && mSuggestions.size() > 1) {
|
||||||
mSelectedIndex = mSelectedIndex + increment;
|
mSelectedIndex = mSelectedIndex + increment;
|
||||||
if (mSelectedIndex == mSuggestions.size()) {
|
if (mSelectedIndex == mSuggestions.size()) {
|
||||||
|
|
|
||||||
|
|
@ -70,14 +70,6 @@ public class InterfaceHandler implements View.OnClickListener, View.OnLongClickL
|
||||||
((Button) mainview.findViewById(R.id.main_mid)).performClick();
|
((Button) mainview.findViewById(R.id.main_mid)).performClick();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void midButtonUpdate(boolean composing) {
|
|
||||||
if (composing) {
|
|
||||||
((TextView) mainview.findViewById(R.id.main_mid)).setText(R.string.main_mid_commit);
|
|
||||||
} else {
|
|
||||||
((TextView) mainview.findViewById(R.id.main_mid)).setText(R.string.main_mid);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
switch (v.getId()) {
|
switch (v.getId()) {
|
||||||
|
|
|
||||||
|
|
@ -68,11 +68,11 @@ public class T9DB {
|
||||||
public enum SETTING {
|
public enum SETTING {
|
||||||
INPUT_MODE("pref_inputmode", 0, 0),
|
INPUT_MODE("pref_inputmode", 0, 0),
|
||||||
LANG_SUPPORT("pref_lang_support", 1, 1),
|
LANG_SUPPORT("pref_lang_support", 1, 1),
|
||||||
MODE_NOTIFY("pref_mode_notify", 0, 2),
|
MODE_NOTIFY("pref_mode_notify", 0, 2), // no longer in use; delete in #7
|
||||||
LAST_LANG("set_last_lang", 1, 5),
|
LAST_LANG("set_last_lang", 1, 5),
|
||||||
LAST_WORD("set_last_word", null, 6),
|
LAST_WORD("set_last_word", null, 6),
|
||||||
SPACE_ZERO("pref_spaceOnZero", 0, 4),
|
SPACE_ZERO("pref_spaceOnZero", 0, 4), // no longer in use; delete in #7
|
||||||
KEY_REMAP("pref_keyMap", 0, 3);
|
KEY_REMAP("pref_keyMap", 0, 3); // no longer in use; delete in #7
|
||||||
|
|
||||||
public final String id;
|
public final String id;
|
||||||
public final Integer defvalue;
|
public final Integer defvalue;
|
||||||
|
|
@ -515,10 +515,10 @@ public class T9DB {
|
||||||
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
|
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
|
||||||
DBSettings.SETTING.INPUT_MODE.id + " INTEGER, " +
|
DBSettings.SETTING.INPUT_MODE.id + " INTEGER, " +
|
||||||
DBSettings.SETTING.LANG_SUPPORT.id + " INTEGER, " +
|
DBSettings.SETTING.LANG_SUPPORT.id + " INTEGER, " +
|
||||||
DBSettings.SETTING.MODE_NOTIFY.id + " INTEGER, " +
|
DBSettings.SETTING.MODE_NOTIFY.id + " INTEGER, " + // no longer in use; delete in #7
|
||||||
DBSettings.SETTING.LAST_LANG.id + " INTEGER, " +
|
DBSettings.SETTING.LAST_LANG.id + " INTEGER, " +
|
||||||
DBSettings.SETTING.KEY_REMAP.id + " INTEGER, " +
|
DBSettings.SETTING.KEY_REMAP.id + " INTEGER, " + // no longer in use; delete in #7
|
||||||
DBSettings.SETTING.SPACE_ZERO.id + " INTEGER, " +
|
DBSettings.SETTING.SPACE_ZERO.id + " INTEGER, " + // no longer in use; delete in #7
|
||||||
DBSettings.SETTING.LAST_WORD.id + " TEXT )");
|
DBSettings.SETTING.LAST_WORD.id + " TEXT )");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package io.github.sspanak.tt9;
|
package io.github.sspanak.tt9;
|
||||||
|
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.res.Resources;
|
|
||||||
import android.inputmethodservice.InputMethodService;
|
import android.inputmethodservice.InputMethodService;
|
||||||
import android.inputmethodservice.KeyboardView;
|
import android.inputmethodservice.KeyboardView;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
|
|
@ -47,9 +46,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
private boolean mGaveUpdateWarn = false;
|
private boolean mGaveUpdateWarn = false;
|
||||||
|
|
||||||
private boolean mFirstPress = false;
|
private boolean mFirstPress = false;
|
||||||
private boolean keyRemap = false;
|
|
||||||
|
|
||||||
private boolean spaceOnZero = false;
|
|
||||||
|
|
||||||
private boolean mIgnoreDPADKeyUp = false;
|
private boolean mIgnoreDPADKeyUp = false;
|
||||||
private KeyEvent mDPADkeyEvent = null;
|
private KeyEvent mDPADkeyEvent = null;
|
||||||
|
|
@ -95,8 +91,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
|
|
||||||
private InputConnection currentInputConnection = null;
|
private InputConnection currentInputConnection = null;
|
||||||
|
|
||||||
private Toast modeNotification = null;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Main initialization of the input method component. Be sure to call to
|
* Main initialization of the input method component. Be sure to call to
|
||||||
* super class.
|
* super class.
|
||||||
|
|
@ -268,9 +262,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
// if (interfacehandler != null) {
|
// if (interfacehandler != null) {
|
||||||
// interfacehandler.hideView();
|
// interfacehandler.hideView();
|
||||||
// }
|
// }
|
||||||
// Get keyMap setting:
|
|
||||||
Object[] setting = db.getSettings(new SETTING[] {SETTING.KEY_REMAP} );
|
|
||||||
keyRemap = setting[0].equals(1);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -284,12 +275,13 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
// get settings
|
// get settings
|
||||||
Object[] settings = db.getSettings(new SETTING[] {
|
Object[] settings = db.getSettings(new SETTING[] {
|
||||||
// 0, 1, 2,
|
// 0, 1, 2,
|
||||||
|
// "2" is no longer in use; delete in #7
|
||||||
SETTING.LANG_SUPPORT, SETTING.LAST_LANG, SETTING.MODE_NOTIFY,
|
SETTING.LANG_SUPPORT, SETTING.LAST_LANG, SETTING.MODE_NOTIFY,
|
||||||
// 3, 4, 5
|
// 3, 4, 5
|
||||||
|
// "5" is no longer in use; delete in #7
|
||||||
SETTING.INPUT_MODE, SETTING.LAST_WORD, SETTING.SPACE_ZERO
|
SETTING.INPUT_MODE, SETTING.LAST_WORD, SETTING.SPACE_ZERO
|
||||||
});
|
});
|
||||||
|
|
||||||
spaceOnZero = settings[5].equals(1);
|
|
||||||
mLangsAvailable = LangHelper.buildLangs((Integer)settings[0]);
|
mLangsAvailable = LangHelper.buildLangs((Integer)settings[0]);
|
||||||
mLang = sanitizeLang(LANGUAGE.get((Integer)settings[1]));
|
mLang = sanitizeLang(LANGUAGE.get((Integer)settings[1]));
|
||||||
|
|
||||||
|
|
@ -299,14 +291,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
|
|
||||||
mKeyMode = MODE_TEXT;
|
mKeyMode = MODE_TEXT;
|
||||||
|
|
||||||
boolean modenotify = settings[2].equals(1);
|
|
||||||
|
|
||||||
if (!modenotify && modeNotification != null) {
|
|
||||||
modeNotification = null;
|
|
||||||
} else if (modenotify && modeNotification == null){
|
|
||||||
modeNotification = Toast.makeText(this, "", Toast.LENGTH_SHORT);
|
|
||||||
}
|
|
||||||
|
|
||||||
// We are now going to initialize our state based on the type of
|
// We are now going to initialize our state based on the type of
|
||||||
// text being edited.
|
// text being edited.
|
||||||
switch (inputField.inputType & InputType.TYPE_MASK_CLASS) {
|
switch (inputField.inputType & InputType.TYPE_MASK_CLASS) {
|
||||||
|
|
@ -394,15 +378,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
onText(prevword);
|
onText(prevword);
|
||||||
db.storeSettingString(SETTING.LAST_WORD, null);
|
db.storeSettingString(SETTING.LAST_WORD, null);
|
||||||
}
|
}
|
||||||
if (modenotify) {
|
|
||||||
Resources r = getResources();
|
|
||||||
if (mKeyMode != MODE_NUM)
|
|
||||||
modeNotify(String.format("%s %s %s", r.getStringArray(R.array.pref_lang_titles)[mLang.index],
|
|
||||||
r.getStringArray(R.array.keyMode)[mKeyMode], r.getStringArray(R.array.capsMode)[mCapsMode]));
|
|
||||||
else
|
|
||||||
modeNotify(String.format("%s %s", r.getStringArray(R.array.pref_lang_titles)[mLang.index],
|
|
||||||
r.getStringArray(R.array.keyMode)[mKeyMode]));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update the label on the enter key, depending on what the application
|
// Update the label on the enter key, depending on what the application
|
||||||
|
|
@ -413,9 +388,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
mSuggestionStrings.clear();
|
mSuggestionStrings.clear();
|
||||||
mSuggestionInts.clear();
|
mSuggestionInts.clear();
|
||||||
mSuggestionSym.clear();
|
mSuggestionSym.clear();
|
||||||
if (interfacehandler != null) {
|
|
||||||
interfacehandler.midButtonUpdate(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
updateKeyMode();
|
updateKeyMode();
|
||||||
// show Window()?
|
// show Window()?
|
||||||
|
|
@ -598,28 +570,13 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
* the app.
|
* the app.
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean onKeyDown(int keyCode, KeyEvent event) {
|
public boolean onKeyDown(int inputKeyCode, KeyEvent inputEvent) {
|
||||||
// Translate key
|
KeyEvent event = TranslateKey(inputKeyCode, inputEvent);
|
||||||
KeyEvent key = TranslateKey(keyCode, event);
|
if (event != null) {
|
||||||
if (key != null) {
|
return onKeyDown_(event.getKeyCode(), event);
|
||||||
keyCode = key.getKeyCode();
|
|
||||||
event = key;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!onKeyDown_(keyCode, event)) {
|
return onKeyDown_(inputKeyCode, inputEvent);
|
||||||
if (key == null || !keyRemap) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// push key to lower level
|
|
||||||
// dumb handling of null for edge weird timing cases.
|
|
||||||
if (currentInputConnection == null)
|
|
||||||
currentInputConnection = getCurrentInputConnection();
|
|
||||||
if (currentInputConnection != null)
|
|
||||||
currentInputConnection.sendKeyEvent(event);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void launchOptions() {
|
protected void launchOptions() {
|
||||||
|
|
@ -792,28 +749,13 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
* the app.
|
* the app.
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean onKeyUp(int keyCode, KeyEvent event) {
|
public boolean onKeyUp(int inputKeyCode, KeyEvent inputEvent) {
|
||||||
// Translate key
|
KeyEvent event = TranslateKey(inputKeyCode, inputEvent);
|
||||||
KeyEvent key = TranslateKey(keyCode, event);
|
if (event != null) {
|
||||||
if (key != null) {
|
return onKeyUp_(event.getKeyCode(), event);
|
||||||
keyCode = key.getKeyCode();
|
|
||||||
event = key;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!onKeyUp_(keyCode, event)) {
|
return onKeyUp_(inputKeyCode, inputEvent);
|
||||||
if (key == null || !keyRemap) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// push key to lower level
|
|
||||||
// dumb handling of null for edge weird timing cases.
|
|
||||||
if (currentInputConnection == null)
|
|
||||||
currentInputConnection = getCurrentInputConnection();
|
|
||||||
if (currentInputConnection != null)
|
|
||||||
currentInputConnection.sendKeyEvent(event);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -822,7 +764,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
// private void commitTyped() { commitTyped(getCurrentInputConnection()); }
|
// private void commitTyped() { commitTyped(getCurrentInputConnection()); }
|
||||||
private void commitTyped() {
|
private void commitTyped() {
|
||||||
if (interfacehandler != null) {
|
if (interfacehandler != null) {
|
||||||
interfacehandler.midButtonUpdate(false);
|
|
||||||
interfacehandler.showNotFound(false);
|
interfacehandler.showNotFound(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1054,9 +995,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
final int length2 = mComposingI.length();
|
final int length2 = mComposingI.length();
|
||||||
if (mKeyMode == MODE_TEXT) {
|
if (mKeyMode == MODE_TEXT) {
|
||||||
charReset();
|
charReset();
|
||||||
if (interfacehandler != null) {
|
|
||||||
interfacehandler.midButtonUpdate(false);
|
|
||||||
}
|
|
||||||
setCandidatesViewShown(false);
|
setCandidatesViewShown(false);
|
||||||
}
|
}
|
||||||
//Log.d("handleBS", "Stage1: (" + length + "," + length2 + ")");
|
//Log.d("handleBS", "Stage1: (" + length + "," + length2 + ")");
|
||||||
|
|
@ -1083,7 +1021,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
//Log.d("handleBS", "resetting thing");
|
//Log.d("handleBS", "resetting thing");
|
||||||
mComposing.setLength(0);
|
mComposing.setLength(0);
|
||||||
mComposingI.setLength(0);
|
mComposingI.setLength(0);
|
||||||
interfacehandler.midButtonUpdate(false);
|
|
||||||
interfacehandler.showNotFound(false);
|
interfacehandler.showNotFound(false);
|
||||||
mSuggestionStrings.clear();
|
mSuggestionStrings.clear();
|
||||||
mPreviousWord = "";
|
mPreviousWord = "";
|
||||||
|
|
@ -1112,8 +1049,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
currentInputConnection.setComposingText(mComposing, 1);
|
currentInputConnection.setComposingText(mComposing, 1);
|
||||||
}
|
}
|
||||||
updateKeyMode();
|
updateKeyMode();
|
||||||
if (modeNotification != null)
|
|
||||||
modeNotify(getResources().getStringArray(R.array.capsMode)[mCapsMode]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -1125,18 +1060,13 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
switch (mKeyMode) {
|
switch (mKeyMode) {
|
||||||
case MODE_LANG:
|
case MODE_LANG:
|
||||||
// it begins
|
// it begins
|
||||||
// take note of spaceOnZero
|
if (keyCode == KeyEvent.KEYCODE_POUND || keyCode == KeyEvent.KEYCODE_0) {
|
||||||
if (keyCode == KeyEvent.KEYCODE_POUND ||
|
|
||||||
( spaceOnZero && (keyCode == KeyEvent.KEYCODE_0) )) {
|
|
||||||
if (mComposing.length() > 0) {
|
if (mComposing.length() > 0) {
|
||||||
commitTyped();
|
commitTyped();
|
||||||
}
|
}
|
||||||
onText(" ");
|
onText(" ");
|
||||||
} else {
|
} else {
|
||||||
// do things
|
// do things
|
||||||
if (interfacehandler != null) {
|
|
||||||
interfacehandler.midButtonUpdate(true);
|
|
||||||
}
|
|
||||||
keyCode = keyCode - KeyEvent.KEYCODE_0;
|
keyCode = keyCode - KeyEvent.KEYCODE_0;
|
||||||
mComposingI.append(keyCode);
|
mComposingI.append(keyCode);
|
||||||
updateCandidates();
|
updateCandidates();
|
||||||
|
|
@ -1152,12 +1082,10 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
keyCode = keyCode - KeyEvent.KEYCODE_0;
|
keyCode = keyCode - KeyEvent.KEYCODE_0;
|
||||||
}
|
}
|
||||||
// special translation of that keyCode (which is now T9TABLE index
|
// special translation of that keyCode (which is now T9TABLE index
|
||||||
if (spaceOnZero) {
|
|
||||||
if (keyCode == 0)
|
if (keyCode == 0)
|
||||||
keyCode = 11;
|
keyCode = 11;
|
||||||
if (keyCode == 10)
|
if (keyCode == 10)
|
||||||
keyCode = 12;
|
keyCode = 12;
|
||||||
}
|
|
||||||
//Log.d("handleChar", "Key: " + keyCode + "Previous Key: " + mPrevious + " Index:" + mCharIndex);
|
//Log.d("handleChar", "Key: " + keyCode + "Previous Key: " + mPrevious + " Index:" + mCharIndex);
|
||||||
|
|
||||||
boolean newChar = false;
|
boolean newChar = false;
|
||||||
|
|
@ -1247,12 +1175,12 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
} else {
|
} else {
|
||||||
if (mKeyMode != MODE_NUM && mComposing.length() > 0) {
|
if (mKeyMode != MODE_NUM && mComposing.length() > 0) {
|
||||||
if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN) {
|
if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN) {
|
||||||
mCandidateView.scrollSuggestion(1);
|
mCandidateView.scrollToSuggestion(1);
|
||||||
if (mSuggestionStrings.size() > mCandidateView.mSelectedIndex)
|
if (mSuggestionStrings.size() > mCandidateView.mSelectedIndex)
|
||||||
currentInputConnection.setComposingText(mSuggestionStrings.get(mCandidateView.mSelectedIndex), 1);
|
currentInputConnection.setComposingText(mSuggestionStrings.get(mCandidateView.mSelectedIndex), 1);
|
||||||
return true;
|
return true;
|
||||||
} else if (keyCode == KeyEvent.KEYCODE_DPAD_UP) {
|
} else if (keyCode == KeyEvent.KEYCODE_DPAD_UP) {
|
||||||
mCandidateView.scrollSuggestion(-1);
|
mCandidateView.scrollToSuggestion(-1);
|
||||||
if (mSuggestionStrings.size() > mCandidateView.mSelectedIndex)
|
if (mSuggestionStrings.size() > mCandidateView.mSelectedIndex)
|
||||||
currentInputConnection.setComposingText(mSuggestionStrings.get(mCandidateView.mSelectedIndex), 1);
|
currentInputConnection.setComposingText(mSuggestionStrings.get(mCandidateView.mSelectedIndex), 1);
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -1319,15 +1247,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
}
|
}
|
||||||
updateKeyMode();
|
updateKeyMode();
|
||||||
resetKeyMode();
|
resetKeyMode();
|
||||||
if (modeNotification != null)
|
|
||||||
modeNotify(getResources().getStringArray(R.array.keyMode)[mKeyMode]);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void modeNotify(String s) {
|
|
||||||
modeNotification.setText(s);
|
|
||||||
modeNotification.show();
|
|
||||||
modeNotification.cancel(); // TODO: This will not always hide the Toast.
|
|
||||||
// will probably need to implement custom view
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void nextLang() {
|
private void nextLang() {
|
||||||
|
|
@ -1337,9 +1256,6 @@ public class TraditionalT9 extends InputMethodService implements
|
||||||
}
|
}
|
||||||
mLang = mLangsAvailable[mLangIndex];
|
mLang = mLangsAvailable[mLangIndex];
|
||||||
updateKeyMode();
|
updateKeyMode();
|
||||||
if (modeNotification != null) {
|
|
||||||
modeNotify(getResources().getStringArray(R.array.pref_lang_titles)[mLang.index]);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void resetKeyMode() {
|
private void resetKeyMode() {
|
||||||
|
|
|
||||||
|
|
@ -686,6 +686,7 @@ public class TraditionalT9Settings extends ListActivity implements
|
||||||
// get settings
|
// get settings
|
||||||
Object[] settings = T9DB.getInstance(this).getSettings(new SETTING[]
|
Object[] settings = T9DB.getInstance(this).getSettings(new SETTING[]
|
||||||
// Order should be based on SETTING.sqOrder
|
// Order should be based on SETTING.sqOrder
|
||||||
|
// "MODE_NOTIFY", "SPACE_ZERO" and "KEY_REMAP" are no longer in use; delete in #7
|
||||||
{SETTING.INPUT_MODE, SETTING.LANG_SUPPORT, SETTING.MODE_NOTIFY, SETTING.KEY_REMAP, SETTING.SPACE_ZERO});
|
{SETTING.INPUT_MODE, SETTING.LANG_SUPPORT, SETTING.MODE_NOTIFY, SETTING.KEY_REMAP, SETTING.SPACE_ZERO});
|
||||||
ListAdapter settingitems;
|
ListAdapter settingitems;
|
||||||
try {
|
try {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue