diff --git a/app/src/main/java/io/github/sspanak/tt9/preferences/screens/setup/ItemSpellCheck.java b/app/src/main/java/io/github/sspanak/tt9/preferences/screens/setup/ItemSpellCheck.java
new file mode 100644
index 00000000..e32013ef
--- /dev/null
+++ b/app/src/main/java/io/github/sspanak/tt9/preferences/screens/setup/ItemSpellCheck.java
@@ -0,0 +1,67 @@
+package io.github.sspanak.tt9.preferences.screens.setup;
+
+import android.content.Intent;
+import android.content.pm.ResolveInfo;
+import android.provider.Settings;
+import android.service.textservice.SpellCheckerService;
+
+import androidx.preference.Preference;
+
+import io.github.sspanak.tt9.R;
+import io.github.sspanak.tt9.hacks.DeviceInfo;
+import io.github.sspanak.tt9.preferences.PreferencesActivity;
+import io.github.sspanak.tt9.preferences.items.ItemClickable;
+import io.github.sspanak.tt9.ui.UI;
+
+public class ItemSpellCheck extends ItemClickable {
+ public ItemSpellCheck(PreferencesActivity activity, Preference item) {
+ super(item);
+
+ if (DeviceInfo.noTouchScreen(activity)) {
+ disable();
+ item.setVisible(false);
+ } else if (isSpellCheckEnabled(activity)) {
+ enable();
+ } else {
+ disable();
+ }
+ }
+
+ private boolean isSpellCheckEnabled(PreferencesActivity activity) {
+ if (activity == null) {
+ return false;
+ }
+
+ Intent spellCheckIntent = new Intent(SpellCheckerService.SERVICE_INTERFACE);
+ return activity.getPackageManager().resolveService(spellCheckIntent, 0) != null;
+ }
+
+ @Override
+ public void enable() {
+ if (item != null) {
+ super.enable();
+ enableClickHandler();
+ item.setSummary(R.string.setup_spell_checker_on);
+ }
+ }
+
+ @Override
+ public void disable() {
+ if (item != null) {
+ super.disable();
+ item.setSummary(R.string.setup_spell_checker_off);
+ }
+ }
+
+ @Override
+ public void enableClickHandler() {
+ if (item != null && item.isEnabled()) {
+ super.enableClickHandler();
+ }
+ }
+
+ @Override
+ protected boolean onClick(Preference p) {
+ return UI.showSystemSpellCheckerSettings(p.getContext());
+ }
+}
diff --git a/app/src/main/java/io/github/sspanak/tt9/preferences/screens/setup/SetupScreen.java b/app/src/main/java/io/github/sspanak/tt9/preferences/screens/setup/SetupScreen.java
index 07eb3f2e..70da9717 100644
--- a/app/src/main/java/io/github/sspanak/tt9/preferences/screens/setup/SetupScreen.java
+++ b/app/src/main/java/io/github/sspanak/tt9/preferences/screens/setup/SetupScreen.java
@@ -45,6 +45,8 @@ public class SetupScreen extends BaseScreenFragment {
if (defaultKeyboardItem != null) {
new ItemSetDefaultGlobalKeyboard(defaultKeyboardItem, activity).enableClickHandler();
}
+
+ new ItemSpellCheck(activity, findPreference("global_spellchecker")).enableClickHandler();
}
private void createHacksSection(boolean isEnabled) {
diff --git a/app/src/main/java/io/github/sspanak/tt9/ui/UI.java b/app/src/main/java/io/github/sspanak/tt9/ui/UI.java
index f703bd7e..08ff731c 100644
--- a/app/src/main/java/io/github/sspanak/tt9/ui/UI.java
+++ b/app/src/main/java/io/github/sspanak/tt9/ui/UI.java
@@ -1,6 +1,7 @@
package io.github.sspanak.tt9.ui;
import android.app.AlertDialog;
+import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.inputmethodservice.InputMethodService;
@@ -22,6 +23,25 @@ public class UI {
((InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE)).showInputMethodPicker();
}
+ public static boolean showSystemSpellCheckerSettings(Context context) {
+ ComponentName component = new ComponentName(
+ "com.android.settings",
+ "com.android.settings.Settings$SpellCheckersSettingsActivity"
+ );
+
+ Intent intent = new Intent();
+ intent.addCategory(Intent.CATEGORY_LAUNCHER);
+ intent.setComponent(component);
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+
+ try {
+ context.startActivity(intent);
+ return true;
+ } catch (Exception e) {
+ return false;
+ }
+ }
+
public static void showSettingsScreen(InputMethodService ims) {
Intent prefIntent = new Intent(ims, PreferencesActivity.class);
diff --git a/app/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml
index c8483770..780ed97a 100644
--- a/app/src/main/res/values-bg/strings.xml
+++ b/app/src/main/res/values-bg/strings.xml
@@ -96,6 +96,9 @@
%1$s е активен
%1$s е изключен
Натиснете тук, за да включите TT9 от настройките на Андроид.
+ Системна проверка на правописа
+ Системната проверка на правописа може да попречи на добавянето на думи. Натиснете тук, за да я изключите.
+ Изключена
(задръж)
Зареждане на речник
Неуспешно изтегляне на речника за език „%1$s“. Проверете връзката с интернет.
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 6afd84f0..f121917a 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -73,6 +73,9 @@
%1$s ist aktiviert
%1$s ist deaktiviert
Klicken Sie hier, um TT9 in den Android-Einstellungen zu aktivieren.
+ Systemrechtschreibprüfung
+ Die Systemrechtschreibprüfung kann das Hinzufügen von Wörtern beeinträchtigen. Klicken Sie hier, um sie zu deaktivieren.
+ Deaktiviert
Zurück
Vorheriger Kanal
Nächster Kanal
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index eeaee553..7d0e9c90 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -93,6 +93,9 @@
%1$s está habilitado
%1$s está deshabilitado
Pulse aquí para habilitar TT9 en la configuración de Android
+ Corrector ortográfico del sistema
+ El corrector ortográfico del sistema puede interferir con la adición de palabras. Haga clic aquí para desactivarlo.
+ Desactivado
(еspera)
Volver
Llamar
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 5430fe28..0b0d896e 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -89,6 +89,9 @@
%1$s est activé
%1$s est désactivé
Cliquez ici pour activer TT9 dans les paramètres Android.
+ Correcteur orthographique du système
+ Le correcteur orthographique du système peut interférer avec l\'ajout de mots. Cliquez ici pour le désactiver.
+ Désactivé
Retour
Chaîne précédente
Chaîne suivante
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index 69d69b28..cad4f253 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -74,6 +74,9 @@
%1$s è abilitato
%1$s è disabilitato
Clicca qui per abilitare TT9 dalle impostazioni di Android.
+ Controllo ortografico di sistema
+ Il controllo ortografico di sistema può interferire con l\'aggiunta di parole. Clicca qui per disabilitarlo.
+ Disabilitato
Indietro
Canale precedente
Prossimo canale
diff --git a/app/src/main/res/values-iw/strings.xml b/app/src/main/res/values-iw/strings.xml
index 520ee388..ce56a286 100644
--- a/app/src/main/res/values-iw/strings.xml
+++ b/app/src/main/res/values-iw/strings.xml
@@ -89,6 +89,9 @@
%1$s מופעל
%1$s מושבת
לחץ כאן כדי להפעיל את TT9 מהגדרות Android.
+ בודק איות מערכת
+ בודק האיות של המערכת עלול להפריע להוספת מילים. לחץ כאן כדי להשבית.
+ מנוטרל
(החזק)
חזור
חיוג
diff --git a/app/src/main/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml
index 193ae2ac..7fb9d955 100644
--- a/app/src/main/res/values-lt/strings.xml
+++ b/app/src/main/res/values-lt/strings.xml
@@ -100,6 +100,9 @@
„%1$s“ yra išjungtas
Spauskite čia norėdami įjungti „TT9“ per „Android“ nustatymus.
+ Sistemos rašybos tikrintuvas
+ Sistemos rašybos tikrintuvas gali trukdyti pridėti žodžius. Spustelėkite čia, kad išjungtumėte.
+ Išjungtas
(laikyti nusp.)
Atgal mygtukas
Skambinti mygtukas
diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml
index b83c1690..5d621faf 100644
--- a/app/src/main/res/values-nl/strings.xml
+++ b/app/src/main/res/values-nl/strings.xml
@@ -75,6 +75,9 @@
%1$s is ingeschakeld
%1$s is uitgeschakeld
Klik hier om TT9 in te schakelen vanuit de Android-instellingen.
+ Systeemspellingscontrole
+ De systeemspellingscontrole kan het toevoegen van woorden verstoren. Klik hier om uit te schakelen.
+ Uitgeschakeld
Terug
Vorige kanaal
Volgende kanaal
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index beed5b7a..cb312b2f 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -86,6 +86,9 @@
%1$s está ativado
%1$s está desativado
Clique aqui para ativar TT9 nas configurações do Android.
+ Verificador ortográfico do sistema
+ O verificador ortográfico do sistema pode interferir na adição de palavras. Clique aqui para desativá-lo.
+ Desativado
(segurar)
Voltar
Chamada
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index 792b5820..85d040c8 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -88,6 +88,9 @@
%1$s активен
%1$s отключен
Нажмите здесь, чтобы включить TT9 в настройках Android.
+ Системная проверка орфографии
+ Системная проверка орфографии может мешать добавлению слов. Нажмите здесь, чтобы отключить.
+ Отключена
(зажать)
Назад
Позвонить
diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml
index 9813261d..e6255171 100644
--- a/app/src/main/res/values-tr/strings.xml
+++ b/app/src/main/res/values-tr/strings.xml
@@ -72,6 +72,9 @@
%1$s devrede
%1$s devre dışı
Android ayarlarında TT9 uygulamasını etkinleştirmek için burayı tıklayın.
+ Sistem Yazım Denetleyicisi
+ Sistem yazım denetleyicisi kelime eklemeye müdahale edebilir. Devre dışı bırakmak için buraya tıklayın.
+ Devre dışı
Geri
Önceki Seçim
Sonraki Seçim
diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml
index ec84dbf6..0d43a79c 100644
--- a/app/src/main/res/values-uk/strings.xml
+++ b/app/src/main/res/values-uk/strings.xml
@@ -134,6 +134,9 @@
%1$s вимкнуто
Нажміть тут, щоб увімкнути TT9 в налаштуваннях Android.
+ Системна перевірка орфографії
+ Системна перевірка орфографії може заважати додаванню слів. Натисніть тут, щоб вимкнути.
+ Вимкнена
(тримати)
Назад
Подзвонити
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index abb46156..62580521 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -172,6 +172,9 @@
%1$s is enabled
%1$s is disabled
Click here to enable TT9 from Android Settings.
+ System Spell Checker
+ System spell checker may interfere with adding words. Click here to disable.
+ Disabled
(hold)
--
diff --git a/app/src/main/res/xml/prefs_screen_setup.xml b/app/src/main/res/xml/prefs_screen_setup.xml
index 295e9c91..17610334 100644
--- a/app/src/main/res/xml/prefs_screen_setup.xml
+++ b/app/src/main/res/xml/prefs_screen_setup.xml
@@ -9,6 +9,10 @@
app:key="global_default_keyboard"
app:title="@string/setup_default_keyboard" />
+
+