1
0
Fork 0

space and newline are no longer automatically added when editing the special character order

This commit is contained in:
sspanak 2025-05-09 12:24:30 +03:00 committed by Dimo Karaivanov
parent fb90217610
commit 2463e9283c
17 changed files with 16 additions and 19 deletions

View file

@ -25,7 +25,7 @@ public class PreferenceSentencePunctuationList extends AbstractPreferenceCharLis
@NonNull @NonNull
@Override @Override
protected char[] getForbiddenChars() { protected char[] getForbiddenChars() {
return SettingsStore.MANDATORY_SPECIAL_CHARS; return SettingsStore.FORBIDDEN_SPECIAL_CHARS;
} }
/** /**

View file

@ -10,6 +10,7 @@ import io.github.sspanak.tt9.preferences.settings.SettingsStore;
public class PreferenceSpecialCharList extends AbstractPreferenceCharList { public class PreferenceSpecialCharList extends AbstractPreferenceCharList {
public static final String NAME = "punctuation_order_special_chars"; public static final String NAME = "punctuation_order_special_chars";
private char[] forbiddenChars;
public PreferenceSpecialCharList(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); } public PreferenceSpecialCharList(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); }
public PreferenceSpecialCharList(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } public PreferenceSpecialCharList(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); }
@ -27,14 +28,24 @@ public class PreferenceSpecialCharList extends AbstractPreferenceCharList {
@NonNull @NonNull
@Override @Override
protected char[] getForbiddenChars() { protected char[] getForbiddenChars() {
return SettingsStore.MANDATORY_PUNCTUATION; if (forbiddenChars == null) {
forbiddenChars = new char[SettingsStore.MANDATORY_PUNCTUATION.length + SettingsStore.FORBIDDEN_SPECIAL_CHARS.length];
for (char i = 0; i < SettingsStore.MANDATORY_PUNCTUATION.length; i++) {
forbiddenChars[i] = SettingsStore.MANDATORY_PUNCTUATION[i];
}
for (char i = 0; i < SettingsStore.FORBIDDEN_SPECIAL_CHARS.length; i++) {
forbiddenChars[i + SettingsStore.MANDATORY_PUNCTUATION.length] = SettingsStore.FORBIDDEN_SPECIAL_CHARS[i];
}
}
return forbiddenChars;
} }
@NonNull @NonNull
@Override @Override
protected char[] getMandatoryChars() { protected char[] getMandatoryChars() {
return SettingsStore.MANDATORY_SPECIAL_CHARS; return new char[0];
} }

View file

@ -13,7 +13,7 @@ class SettingsPunctuation extends SettingsInput {
private final static String KEY_PREFIX_PUNCTUATION = "pref_punctuation_"; private final static String KEY_PREFIX_PUNCTUATION = "pref_punctuation_";
private final static String KEY_PREFIX_SPECIAL = "pref_special_chars_"; private final static String KEY_PREFIX_SPECIAL = "pref_special_chars_";
public final static char[] MANDATORY_PUNCTUATION = new char[] {'\'', '"', '-'}; public final static char[] MANDATORY_PUNCTUATION = new char[] {'\'', '"', '-'};
public final static char[] MANDATORY_SPECIAL_CHARS = new char[] {' ', '\n'}; public final static char[] FORBIDDEN_SPECIAL_CHARS = new char[] {' ', '\n', '\t'};
SettingsPunctuation(Context context) { SettingsPunctuation(Context context) {

View file

@ -197,7 +197,6 @@
<string name="pref_backspace_acceleration_summary">Изтривай цели думи при задържане или плъзване на Backspace. (Не работи в някои приложения.)</string> <string name="pref_backspace_acceleration_summary">Изтривай цели думи при задържане или плъзване на Backspace. (Не работи в някои приложения.)</string>
<string name="pref_category_punctuation_order">Ред на пунктуацията</string> <string name="pref_category_punctuation_order">Ред на пунктуацията</string>
<string name="language_popup_title">Изберете език</string> <string name="language_popup_title">Изберете език</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Интервал и нов ред ще бъдат автоматично добавени в началото на списъка.</string>
<string name="punctuation_order_mandatory_char_missing">Липсва задължителен символ:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Липсва задължителен символ:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Липсват задължителни символи:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Липсват задължителни символи:%1$s</string>
<string name="punctuation_order_save_error">Неуспешно запазване на реда на знаците.</string> <string name="punctuation_order_save_error">Неуспешно запазване на реда на знаците.</string>

View file

@ -185,7 +185,6 @@
<string name="pref_backspace_acceleration_summary">Ganze Wörter löschen, indem Sie die Rücktaste gedrückt halten oder wischen. (Nicht in allen Apps unterstützt)</string> <string name="pref_backspace_acceleration_summary">Ganze Wörter löschen, indem Sie die Rücktaste gedrückt halten oder wischen. (Nicht in allen Apps unterstützt)</string>
<string name="pref_category_punctuation_order">Interpunktionsreihenfolge</string> <string name="pref_category_punctuation_order">Interpunktionsreihenfolge</string>
<string name="language_popup_title">Sprache auswählen</string> <string name="language_popup_title">Sprache auswählen</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Leer- und Zeilenumbruchzeichen werden automatisch am Anfang der Liste hinzugefügt.</string>
<string name="punctuation_order_mandatory_char_missing">Fehlendes erforderliches Zeichen:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Fehlendes erforderliches Zeichen:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Fehlende erforderliche Zeichen:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Fehlende erforderliche Zeichen:%1$s</string>
<string name="punctuation_order_save_error">Zeichenreihenfolge konnte nicht gespeichert werden.</string> <string name="punctuation_order_save_error">Zeichenreihenfolge konnte nicht gespeichert werden.</string>

View file

@ -196,7 +196,6 @@
<string name="pref_backspace_acceleration_summary">Borrar palabras completas manteniendo pulsado o deslizando Retroceso. (No compatible con algunas aplicaciones)</string> <string name="pref_backspace_acceleration_summary">Borrar palabras completas manteniendo pulsado o deslizando Retroceso. (No compatible con algunas aplicaciones)</string>
<string name="pref_category_punctuation_order">Orden de puntuación</string> <string name="pref_category_punctuation_order">Orden de puntuación</string>
<string name="language_popup_title">Seleccionar idioma</string> <string name="language_popup_title">Seleccionar idioma</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Los caracteres Espacio y Nueva línea se añadirán automáticamente al principio de la lista.</string>
<string name="punctuation_order_mandatory_char_missing">Falta carácter obligatorio:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Falta carácter obligatorio:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Faltan caracteres obligatorios:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Faltan caracteres obligatorios:%1$s</string>
<string name="punctuation_order_save_error">Error al guardar el orden de los caracteres.</string> <string name="punctuation_order_save_error">Error al guardar el orden de los caracteres.</string>

View file

@ -194,7 +194,6 @@
<string name="pref_backspace_acceleration_summary">Effacer des mots entiers en maintenant ou en glissant sur Retour arrière. (Non pris en charge dans certaines applications)</string> <string name="pref_backspace_acceleration_summary">Effacer des mots entiers en maintenant ou en glissant sur Retour arrière. (Non pris en charge dans certaines applications)</string>
<string name="pref_category_punctuation_order">Ordre de ponctuation</string> <string name="pref_category_punctuation_order">Ordre de ponctuation</string>
<string name="language_popup_title">Sélectionner la langue</string> <string name="language_popup_title">Sélectionner la langue</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Les caractères Espace et Retour à la ligne seront automatiquement ajoutés au début de la liste.</string>
<string name="punctuation_order_mandatory_char_missing">Caractère obligatoire manquant :%1$s</string> <string name="punctuation_order_mandatory_char_missing">Caractère obligatoire manquant :%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Caractères obligatoires manquants :%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Caractères obligatoires manquants :%1$s</string>
<string name="punctuation_order_save_error">Échec de lenregistrement de lordre des caractères.</string> <string name="punctuation_order_save_error">Échec de lenregistrement de lordre des caractères.</string>

View file

@ -183,7 +183,6 @@
<string name="pref_backspace_acceleration_summary">Cancellare intere parole tenendo premuto o scorrendo Backspace. (Non supportato in alcune app)</string> <string name="pref_backspace_acceleration_summary">Cancellare intere parole tenendo premuto o scorrendo Backspace. (Non supportato in alcune app)</string>
<string name="pref_category_punctuation_order">Ordine di punteggiatura</string> <string name="pref_category_punctuation_order">Ordine di punteggiatura</string>
<string name="language_popup_title">Seleziona la lingua</string> <string name="language_popup_title">Seleziona la lingua</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">I caratteri Spazio e Nuova linea verranno automaticamente aggiunti all\'inizio dell\'elenco.</string>
<string name="punctuation_order_mandatory_char_missing">Carattere obbligatorio mancante:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Carattere obbligatorio mancante:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Caratteri obbligatori mancanti:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Caratteri obbligatori mancanti:%1$s</string>
<string name="punctuation_order_save_error">Salvataggio dellordine dei caratteri non riuscito.</string> <string name="punctuation_order_save_error">Salvataggio dellordine dei caratteri non riuscito.</string>

View file

@ -197,7 +197,6 @@
<string name="pref_backspace_acceleration_summary">למחוק מילים שלמות על ידי החזקת Backspace או החלקה עליו. (לא נתמך בחלק מהאפליקציות)</string> <string name="pref_backspace_acceleration_summary">למחוק מילים שלמות על ידי החזקת Backspace או החלקה עליו. (לא נתמך בחלק מהאפליקציות)</string>
<string name="pref_category_punctuation_order">סדר סימני פיסוק</string> <string name="pref_category_punctuation_order">סדר סימני פיסוק</string>
<string name="language_popup_title">בחר שפה</string> <string name="language_popup_title">בחר שפה</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">תווי רווח ושורה חדשה יתווספו אוטומטית בתחילת הרשימה.</string>
<string name="punctuation_order_mandatory_char_missing">תו חובה חסר: %1$s</string> <string name="punctuation_order_mandatory_char_missing">תו חובה חסר: %1$s</string>
<string name="punctuation_order_mandatory_chars_missing">תווי חובה חסרים:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">תווי חובה חסרים:%1$s</string>
<string name="punctuation_order_save_error">שמירת סדר התווים נכשלה.</string> <string name="punctuation_order_save_error">שמירת סדר התווים נכשלה.</string>

View file

@ -205,7 +205,6 @@
<string name="pref_backspace_acceleration_summary">Ištrinti visus žodžius laikant arba perbraukiant Backspace. (Nepalaikoma kai kuriose programėlėse)</string> <string name="pref_backspace_acceleration_summary">Ištrinti visus žodžius laikant arba perbraukiant Backspace. (Nepalaikoma kai kuriose programėlėse)</string>
<string name="pref_category_punctuation_order">Skyrybos ženklų tvarka</string> <string name="pref_category_punctuation_order">Skyrybos ženklų tvarka</string>
<string name="language_popup_title">Pasirinkite kalbą</string> <string name="language_popup_title">Pasirinkite kalbą</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Tarpas ir naujos eilutės simboliai bus automatiškai pridėti sąrašo pradžioje.</string>
<string name="punctuation_order_mandatory_char_missing">Trūksta privalomo simbolio:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Trūksta privalomo simbolio:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Trūksta privalomų simbolių:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Trūksta privalomų simbolių:%1$s</string>
<string name="punctuation_order_save_error">Nepavyko išsaugoti simbolių tvarkos.</string> <string name="punctuation_order_save_error">Nepavyko išsaugoti simbolių tvarkos.</string>

View file

@ -185,7 +185,6 @@
<string name="pref_backspace_acceleration_summary">Hele woorden wissen door Backspace ingedrukt te houden of te vegen. (Niet ondersteund in sommige apps)</string> <string name="pref_backspace_acceleration_summary">Hele woorden wissen door Backspace ingedrukt te houden of te vegen. (Niet ondersteund in sommige apps)</string>
<string name="pref_category_punctuation_order">Interpunctievolgorde</string> <string name="pref_category_punctuation_order">Interpunctievolgorde</string>
<string name="language_popup_title">Selecteer taal</string> <string name="language_popup_title">Selecteer taal</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Spatie- en nieuwe regeltekens worden automatisch aan het begin van de lijst toegevoegd.</string>
<string name="punctuation_order_mandatory_char_missing">Ontbrekend verplicht teken:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Ontbrekend verplicht teken:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Ontbrekende verplichte tekens:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Ontbrekende verplichte tekens:%1$s</string>
<string name="punctuation_order_save_error">Opslaan van de tekenvolgorde mislukt.</string> <string name="punctuation_order_save_error">Opslaan van de tekenvolgorde mislukt.</string>

View file

@ -198,7 +198,6 @@
<string name="pref_backspace_acceleration_summary">Apagar palavras inteiras mantendo pressionado ou deslizando o Backspace. (Não suportado em alguns aplicativos)</string> <string name="pref_backspace_acceleration_summary">Apagar palavras inteiras mantendo pressionado ou deslizando o Backspace. (Não suportado em alguns aplicativos)</string>
<string name="pref_category_punctuation_order">Ordem de pontuação</string> <string name="pref_category_punctuation_order">Ordem de pontuação</string>
<string name="language_popup_title">Selecione o idioma</string> <string name="language_popup_title">Selecione o idioma</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Os caracteres de Espaço e Nova linha serão automaticamente adicionados no início da lista.</string>
<string name="punctuation_order_mandatory_char_missing">Caractere obrigatório ausente:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Caractere obrigatório ausente:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Caracteres obrigatórios ausentes:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Caracteres obrigatórios ausentes:%1$s</string>
<string name="punctuation_order_save_error">Falha ao salvar a ordem dos caracteres.</string> <string name="punctuation_order_save_error">Falha ao salvar a ordem dos caracteres.</string>

View file

@ -196,7 +196,6 @@
<string name="pref_backspace_acceleration_summary">Стереть целые слова, удерживая или проведя по клавише Backspace. (Не поддерживается в некоторых приложениях)</string> <string name="pref_backspace_acceleration_summary">Стереть целые слова, удерживая или проведя по клавише Backspace. (Не поддерживается в некоторых приложениях)</string>
<string name="pref_category_punctuation_order">Порядок пунктуации</string> <string name="pref_category_punctuation_order">Порядок пунктуации</string>
<string name="language_popup_title">Выберите язык</string> <string name="language_popup_title">Выберите язык</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Пробел и символ новой строки будут автоматически добавлены в начало списка.</string>
<string name="punctuation_order_mandatory_char_missing">Отсутствует обязательный символ:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Отсутствует обязательный символ:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Отсутствуют обязательные символы:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Отсутствуют обязательные символы:%1$s</string>
<string name="punctuation_order_save_error">е удалось сохранить порядок символов.</string> <string name="punctuation_order_save_error">е удалось сохранить порядок символов.</string>

View file

@ -198,7 +198,6 @@
<string name="pref_backspace_acceleration_summary">Geri tuşunu basılı tutarak veya kaydırarak tüm kelimeleri sil. (Bazı uygulamalarda desteklenmez)</string> <string name="pref_backspace_acceleration_summary">Geri tuşunu basılı tutarak veya kaydırarak tüm kelimeleri sil. (Bazı uygulamalarda desteklenmez)</string>
<string name="pref_category_punctuation_order">Noktalama sırası</string> <string name="pref_category_punctuation_order">Noktalama sırası</string>
<string name="language_popup_title">Dil Seçin</string> <string name="language_popup_title">Dil Seçin</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Boşluk ve Yeni Satır karakterleri listenin başına otomatik olarak eklenecektir.</string>
<string name="punctuation_order_mandatory_char_missing">Zorunlu karakter eksik:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Zorunlu karakter eksik:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Zorunlu karakterler eksik:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Zorunlu karakterler eksik:%1$s</string>
<string name="punctuation_order_save_error">Karakter sırası kaydedilemedi.</string> <string name="punctuation_order_save_error">Karakter sırası kaydedilemedi.</string>

View file

@ -207,7 +207,6 @@
<string name="pref_backspace_acceleration_summary">Видалити цілі слова, утримуючи або провівши клавішею Backspace. (Не підтримується в деяких додатках)</string> <string name="pref_backspace_acceleration_summary">Видалити цілі слова, утримуючи або провівши клавішею Backspace. (Не підтримується в деяких додатках)</string>
<string name="pref_category_punctuation_order">Порядок пунктуації</string> <string name="pref_category_punctuation_order">Порядок пунктуації</string>
<string name="language_popup_title">Виберіть мову</string> <string name="language_popup_title">Виберіть мову</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Пробіл і символ нового рядка буде автоматично додано на початок списку.</string>
<string name="punctuation_order_mandatory_char_missing">Відсутній обов’язковий символ:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Відсутній обов’язковий символ:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Відсутні обов’язкові символи:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Відсутні обов’язкові символи:%1$s</string>
<string name="punctuation_order_save_error">Не вдалося зберегти порядок символів.</string> <string name="punctuation_order_save_error">Не вдалося зберегти порядок символів.</string>

View file

@ -205,7 +205,6 @@
<string name="language_popup_title">Select Language</string> <string name="language_popup_title">Select Language</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Space and Newline characters will be automatically added at the beginning of the list.</string>
<string name="punctuation_order_mandatory_char_missing">Missing mandatory character:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Missing mandatory character:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Missing mandatory characters:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Missing mandatory characters:%1$s</string>
<string name="punctuation_order_forbidden_char">Forbidden character:%1$s</string> <string name="punctuation_order_forbidden_char">Forbidden character:%1$s</string>

View file

@ -11,8 +11,7 @@
<io.github.sspanak.tt9.preferences.screens.punctuation.PreferenceSpecialCharList <io.github.sspanak.tt9.preferences.screens.punctuation.PreferenceSpecialCharList
android:key="punctuation_order_special_chars" android:key="punctuation_order_special_chars"
android:title="@string/punctuation_order_special" android:title="@string/punctuation_order_special"/>
android:summary="@string/punctuation_order_whitespace_will_be_added_automatically"/>
<Preference <Preference
android:key="punctuation_order_reset_defaults" android:key="punctuation_order_reset_defaults"