diff --git a/app/src/main/java/io/github/sspanak/tt9/ime/modes/helpers/AutoTextCase.java b/app/src/main/java/io/github/sspanak/tt9/ime/modes/helpers/AutoTextCase.java
index 5898fc4f..2ed630b7 100644
--- a/app/src/main/java/io/github/sspanak/tt9/ime/modes/helpers/AutoTextCase.java
+++ b/app/src/main/java/io/github/sspanak/tt9/ime/modes/helpers/AutoTextCase.java
@@ -41,7 +41,7 @@ public class AutoTextCase {
* For example, this function will return CASE_LOWER by default, but CASE_UPPER at the beginning
* of a sentence.
*/
- public int determineNextWordTextCase(int currentTextCase, int textFieldTextCase, String textBeforeCursor) {
+ public int determineNextWordTextCase(int currentTextCase, int textFieldTextCase, String beforeCursor) {
if (
// When the setting is off, don't do any changes.
!settings.getAutoTextCase()
@@ -57,17 +57,23 @@ public class AutoTextCase {
}
// start of text
- if (textBeforeCursor != null && textBeforeCursor.isEmpty()) {
+ if (
+ beforeCursor != null
+ && (
+ beforeCursor.isEmpty()
+ || (settings.getAutoCapitalsAfterNewline() && beforeCursor.endsWith("\n"))
+ )
+ ) {
return InputMode.CASE_CAPITALIZE;
}
// start of sentence, excluding after "..."
- if (Text.isStartOfSentence(textBeforeCursor)) {
+ if (Text.isStartOfSentence(beforeCursor)) {
return InputMode.CASE_CAPITALIZE;
}
// this is mostly for English "I"
- if (Text.isNextToWord(textBeforeCursor)) {
+ if (Text.isNextToWord(beforeCursor)) {
return InputMode.CASE_LOWER;
}
diff --git a/app/src/main/java/io/github/sspanak/tt9/preferences/settings/SettingsTyping.java b/app/src/main/java/io/github/sspanak/tt9/preferences/settings/SettingsTyping.java
index de9b51a7..92850187 100644
--- a/app/src/main/java/io/github/sspanak/tt9/preferences/settings/SettingsTyping.java
+++ b/app/src/main/java/io/github/sspanak/tt9/preferences/settings/SettingsTyping.java
@@ -11,6 +11,10 @@ class SettingsTyping extends SettingsInput {
}
public boolean getAutoSpace() { return prefs.getBoolean("auto_space", true); }
public boolean getAutoTextCase() { return prefs.getBoolean("auto_text_case", true); }
+ public boolean getAutoCapitalsAfterNewline() {
+ return getAutoTextCase() && prefs.getBoolean("auto_capitals_after_newline", false);
+ }
+
public String getDoubleZeroChar() {
String character = prefs.getString("pref_double_zero_char", ".");
diff --git a/app/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml
index 03deeacf..5e2ebee0 100644
--- a/app/src/main/res/values-bg/strings.xml
+++ b/app/src/main/res/values-bg/strings.xml
@@ -19,6 +19,8 @@
Само списък с думи
Помощ
Тъмен облик
+ Автоматични главни букви на всеки ред
+ Започвай всеки ред с главна буква, дори и да е в средата на изречение.
Езици
Изтрий всички
Икона за режима на писане
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 84d806b1..34f87426 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -27,6 +27,10 @@
Schnell
Mäßig
Langsam
+ Automatische Großbuchstaben
+ Automatisch Sätze mit einem Großbuchstaben beginnen.
+ Automatische Großbuchstaben auf jeder Zeile
+ Jede Zeile mit einem Großbuchstaben beginnen, auch wenn es mitten im Satz ist.
Sprachen
Icon für den Schreibmodus
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index cc86167e..2b9ab5d7 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -26,6 +26,8 @@
Teclas de acceso rápido
Texto predictivo
Teclado
+ Mayúsculas automáticas en cada línea
+ Comenzar cada línea con una letra mayúscula, incluso si está en medio de una oración.
Idiomas
Tema oscuro
Espacio
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 7534100c..cf3c65a2 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -19,6 +19,8 @@
Seulement liste de mots
Aide
Thème sombre
+ Majuscules automatiques sur chaque ligne
+ Commencer chaque ligne avec une majuscule, même si elle est au milieu d\'une phrase.
Langues
Supprimer tous
Icône du mode de saisie
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index 480cba3e..075ac899 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -28,6 +28,10 @@
Veloce
Moderata
Lenta
+ Maiuscole automatiche
+ Iniziare automaticamente le frasi con una lettera maiuscola.
+ Maiuscole automatiche su ogni riga
+ Iniziare ogni riga con una lettera maiuscola, anche se è nel mezzo di una frase.
Lingue
Icona modalità di digitazione
diff --git a/app/src/main/res/values-iw/strings.xml b/app/src/main/res/values-iw/strings.xml
index 81773238..1656614e 100644
--- a/app/src/main/res/values-iw/strings.xml
+++ b/app/src/main/res/values-iw/strings.xml
@@ -35,6 +35,8 @@
הוסף רווח אוטומטית לאחר סימני פיסוק או מילים.
שימוש אוטומטי באותיות רישיות
התחל אוטומטית משפטים באות גדולה.
+ רישיות אוטומטיות בכל שורה
+ להתחיל כל שורה באות ראשונה גדולה, גם אם היא באמצע משפט.
שפות
ערכת נושא שחורה
תו ללחיצה מרובה על מקש 0
diff --git a/app/src/main/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml
index a1cb5868..daac60fc 100644
--- a/app/src/main/res/values-lt/strings.xml
+++ b/app/src/main/res/values-lt/strings.xml
@@ -38,6 +38,8 @@
Po žodžių ir skyrybos ženklų automatiškai pridėti tarpą.
Automatinis didžiųjų raidžių rašymas
Automatiškai pradėti sakinius didžiąja raide.
+ Automatiniai didžiosios raidės kiekvienoje eilutėje
+ Pradėti kiekvieną eilutę didžiąja raide, net jei ji yra sakinio viduryje.
Kalbos
Tamsi išvaizda
Taip
diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml
index fecf0957..8fbe5364 100644
--- a/app/src/main/res/values-nl/strings.xml
+++ b/app/src/main/res/values-nl/strings.xml
@@ -26,6 +26,10 @@
Snel
Gematigd
Langzaam
+ Automatische hoofdletters
+ Automatisch zinnen beginnen met een hoofdletter.
+ Automatische hoofdletters op elke regel
+ Elke regel beginnen met een hoofdletter, zelfs als het midden van een zin is.
Talen
Typemodus-icoon
Geef de huidige typmodus aan met een icoon.
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index 4530b995..d0bd342f 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -35,7 +35,9 @@
Espaçamento Automático
Insere um espaçamento após ponto final.
Maiúsculas Automáticas
- Inicia automaticamente com letras maiúsculas.
+ Iniciar automaticamente as frases com letras maiúsculas.
+ etras maiúsculas automáticas em cada linha
+ Começar cada linha com uma letra maiúscula, mesmo que esteja no meio de uma frase.
Idiomas
Modo Escuro
Caractere para toque duplo na tecla 0
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index b4dd5894..9845c921 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -19,6 +19,8 @@
Только список слов
Помощь
Темная тема
+ Автоматические заглавные буквы на каждой строке
+ Начинать каждую строку с заглавной буквы, даже если она в середине предложения.
Языки
Удалить все
Иконка режима ввода
diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml
index e866e05c..926427fd 100644
--- a/app/src/main/res/values-uk/strings.xml
+++ b/app/src/main/res/values-uk/strings.xml
@@ -40,6 +40,8 @@
Автоматично додавати пробіл після розділових знаків або слів.
Автоматична велика літера
Автоматично починати речення з великої букви
+ Автоматичні великі літери на кожному рядку
+ Починати кожен рядок з великої літери, навіть якщо він у середині речення.
Мови
Темна тема
Так
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index d7acf6a1..1b9729d1 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -46,6 +46,8 @@
Automatically add a space after punctuation or words.
Automatic Capitalization
Automatically start sentences with a capital letter.
+ Automatically Capitalize Every Line
+ Start every line with a capital letter, even it is in the middle of a sentence.
Languages
Dark Theme
Yes
diff --git a/app/src/main/res/xml/prefs_screen_keypad.xml b/app/src/main/res/xml/prefs_screen_keypad.xml
index a7ceaf6f..402a1ac8 100644
--- a/app/src/main/res/xml/prefs_screen_keypad.xml
+++ b/app/src/main/res/xml/prefs_screen_keypad.xml
@@ -36,6 +36,15 @@
app:summary="@string/pref_auto_text_case_summary"
app:title="@string/pref_auto_text_case" />
+
+
+