diff --git a/app/src/main/java/app/fedilab/android/BaseMainActivity.java b/app/src/main/java/app/fedilab/android/BaseMainActivity.java index 690a3059..e70df640 100644 --- a/app/src/main/java/app/fedilab/android/BaseMainActivity.java +++ b/app/src/main/java/app/fedilab/android/BaseMainActivity.java @@ -1132,6 +1132,19 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt } String software = sharedpreferences.getString(PREF_USER_SOFTWARE, null); + if (sharedpreferences.getString(getString(R.string.SET_TRANSLATE_BUTTON) + currentUserID + currentInstance, null) == null) { + boolean oldTranslateButtonPrefValue = + sharedpreferences.getBoolean(getString(R.string.SET_DISPLAY_TRANSLATE) + currentUserID + currentInstance, false); + String[] translateButtonEntryValues = getResources().getStringArray(R.array.set_translate_button_entry_values); + String newTranslateButtonValue; + if (oldTranslateButtonPrefValue) + newTranslateButtonValue = translateButtonEntryValues[1]; + else + newTranslateButtonValue = translateButtonEntryValues[2]; + sharedpreferences.edit() + .putString(getString(R.string.SET_TRANSLATE_BUTTON) + currentUserID + currentInstance, newTranslateButtonValue) + .apply(); + } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { ActivityResultLauncher permissionLauncher = registerForActivityResult(new ActivityResultContracts.RequestPermission(), isGranted -> { diff --git a/app/src/main/java/app/fedilab/android/mastodon/client/entities/api/Account.java b/app/src/main/java/app/fedilab/android/mastodon/client/entities/api/Account.java index c93d3927..c1296dc8 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/client/entities/api/Account.java +++ b/app/src/main/java/app/fedilab/android/mastodon/client/entities/api/Account.java @@ -95,7 +95,7 @@ public class Account implements Serializable { if (display_name == null || display_name.isEmpty()) { display_name = username; } - return SpannableHelper.convert(context, display_name, null, this, null, viewWeakReference, null, true, false); + return SpannableHelper.convert(context, display_name, null, this, null, viewWeakReference, null, false, false); } public synchronized Spannable getSpanDisplayNameEmoji(Activity activity, WeakReference viewWeakReference) { diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java index 172b847c..3a5a41ec 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java +++ b/app/src/main/java/app/fedilab/android/mastodon/helper/SpannableHelper.java @@ -1011,14 +1011,11 @@ public class SpannableHelper { public static Spannable convertEmoji(Activity activity, String text, Account account, WeakReference viewWeakReference) { - SpannableString initialContent; if (text == null) { return null; } - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) - initialContent = new SpannableString(Html.fromHtml(text, Html.FROM_HTML_MODE_LEGACY)); - else - initialContent = new SpannableString(Html.fromHtml(text)); + + SpannableString initialContent = new SpannableString(text); SpannableStringBuilder content = new SpannableStringBuilder(initialContent); List emojiList = account.emojis; diff --git a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java index 2c030949..416be0dd 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java +++ b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java @@ -1709,15 +1709,15 @@ public class ComposeAdapter extends RecyclerView.Adapter { - holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_compose_visibility_public); + holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_quote_policy_public); statusDraft.quote_approval_policy = MastodonHelper.quote_visibility.PUBLIC.name(); } case "followers" -> { - holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_baseline_people_alt_24); + holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_quote_policy_followers); statusDraft.quote_approval_policy = MastodonHelper.quote_visibility.FOLLOWERS.name(); } case "nobody" -> { - holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_baseline_block_24); + holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_quote_policy_nobody); statusDraft.quote_approval_policy = MastodonHelper.quote_visibility.NOBODY.name(); } } @@ -1770,17 +1770,17 @@ public class ComposeAdapter extends RecyclerView.Adapter { holder.binding.quoteApprovalPolicyPanel.setVisibility(View.GONE); - holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_baseline_block_24); + holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_quote_policy_nobody); statusDraft.quote_approval_policy = MastodonHelper.quote_visibility.NOBODY.name(); }); holder.binding.buttonQuoteApprovalPolicyFollowersOnly.setOnClickListener(v -> { holder.binding.quoteApprovalPolicyPanel.setVisibility(View.GONE); - holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_baseline_people_alt_24); + holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_quote_policy_followers); statusDraft.quote_approval_policy = MastodonHelper.quote_visibility.FOLLOWERS.name(); }); holder.binding.buttonQuoteApprovalPolicyAnyone.setOnClickListener(v -> { holder.binding.quoteApprovalPolicyPanel.setVisibility(View.GONE); - holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_compose_visibility_public); + holder.binding.buttonQuoteApprovalPolicy.setIconResource(R.drawable.ic_quote_policy_public); statusDraft.quote_approval_policy = MastodonHelper.quote_visibility.PUBLIC.name(); }); diff --git a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ReorderBottomMenuAdapter.java b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ReorderBottomMenuAdapter.java index 5c1278c6..5f7e54b2 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ReorderBottomMenuAdapter.java +++ b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ReorderBottomMenuAdapter.java @@ -21,6 +21,7 @@ import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.ViewGroup; +import androidx.core.view.ViewCompat; import androidx.recyclerview.widget.RecyclerView; import org.jetbrains.annotations.NotNull; @@ -126,7 +127,16 @@ public class ReorderBottomMenuAdapter extends RecyclerView.Adapter { + int bindingAdapterPosition = viewHolder.getBindingAdapterPosition(); + if (bindingAdapterPosition > 0) onItemMove(bindingAdapterPosition, bindingAdapterPosition - 1); + return true; + }); + ViewCompat.addAccessibilityAction(holder.binding.getRoot(), context.getString(R.string.move_timeline_down), (view, arguments) -> { + int bindingAdapterPosition = viewHolder.getBindingAdapterPosition(); + if (bindingAdapterPosition < bottomMenu.bottom_menu.size() - 1) onItemMove(bindingAdapterPosition, bindingAdapterPosition + 1); + return true; + }); } @Override diff --git a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ReorderTabAdapter.java b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ReorderTabAdapter.java index 51bee2e1..e6f99cfc 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ReorderTabAdapter.java +++ b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ReorderTabAdapter.java @@ -23,6 +23,7 @@ import android.view.View; import android.view.ViewGroup; import androidx.appcompat.app.AlertDialog; +import androidx.core.view.ViewCompat; import androidx.lifecycle.ViewModelProvider; import androidx.lifecycle.ViewModelStoreOwner; import androidx.recyclerview.widget.RecyclerView; @@ -191,6 +192,16 @@ public class ReorderTabAdapter extends RecyclerView.Adapter { + int bindingAdapterPosition = viewHolder.getBindingAdapterPosition(); + if (bindingAdapterPosition > 0) onItemMove(bindingAdapterPosition, bindingAdapterPosition - 1); + return true; + }); + ViewCompat.addAccessibilityAction(holder.binding.getRoot(), context.getString(R.string.move_timeline_down), (view, arguments) -> { + int bindingAdapterPosition = viewHolder.getBindingAdapterPosition(); + if (bindingAdapterPosition < pinned.pinnedTimelines.size() - 1) onItemMove(bindingAdapterPosition, bindingAdapterPosition + 1); + return true; + }); PinnedTimeline item = pinned.pinnedTimelines.get(position); if (item.type == Timeline.TimeLineEnum.TAG || item.type == Timeline.TimeLineEnum.REMOTE || item.type == Timeline.TimeLineEnum.LIST) { holder.binding.delete.setVisibility(View.VISIBLE); diff --git a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java index e45bab6c..30ab9ba1 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java +++ b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java @@ -579,7 +579,8 @@ public class StatusAdapter extends RecyclerView.Adapter boolean fullAttachement = sharedpreferences.getBoolean(context.getString(R.string.SET_FULL_PREVIEW), false); boolean expand_media = sharedpreferences.getBoolean(context.getString(R.string.SET_EXPAND_MEDIA), false); boolean displayBookmark = sharedpreferences.getBoolean(context.getString(R.string.SET_DISPLAY_BOOKMARK) + MainActivity.currentUserID + MainActivity.currentInstance, true); - boolean displayTranslate = sharedpreferences.getBoolean(context.getString(R.string.SET_DISPLAY_TRANSLATE) + MainActivity.currentUserID + MainActivity.currentInstance, false); + String translateButton = sharedpreferences.getString(context.getString(R.string.SET_TRANSLATE_BUTTON) + MainActivity.currentUserID + MainActivity.currentInstance, "auto"); + String[] translateButtonEntryValues = context.getResources().getStringArray(R.array.set_translate_button_entry_values); boolean displayCounters = sharedpreferences.getBoolean(context.getString(R.string.SET_DISPLAY_COUNTER_FAV_BOOST), false); boolean removeLeftMargin = sharedpreferences.getBoolean(context.getString(R.string.SET_REMOVE_LEFT_MARGIN), false); boolean extraFeatures = sharedpreferences.getBoolean(context.getString(R.string.SET_EXTAND_EXTRA_FEATURES) + MainActivity.currentUserID + MainActivity.currentInstance, false); @@ -969,8 +970,13 @@ public class StatusAdapter extends RecyclerView.Adapter holder.binding.actionButtonFavorite.setInactiveImage(R.drawable.ic_round_star_border_24); holder.binding.actionButtonBookmark.setActiveImage(R.drawable.ic_round_bookmark_24); holder.binding.actionButtonBookmark.setInactiveImage(R.drawable.ic_round_bookmark_border_24); - holder.binding.actionButtonBoost.setActiveImage(R.drawable.ic_round_repeat_active_24); - holder.binding.actionButtonBoost.setInactiveImage(R.drawable.ic_round_repeat_24); + if (displayQuote) { + holder.binding.actionButtonBoost.setActiveImage(R.drawable.ic_quote_or_boost_active); + holder.binding.actionButtonBoost.setInactiveImage(R.drawable.ic_quote_or_boost); + } else { + holder.binding.actionButtonBoost.setActiveImage(R.drawable.ic_round_repeat_active_24); + holder.binding.actionButtonBoost.setInactiveImage(R.drawable.ic_round_repeat_24); + } holder.binding.actionButtonFavorite.setActiveImageTint(R.color.marked_icon); holder.binding.actionButtonBoost.setActiveImageTint(R.color.boost_icon); holder.binding.actionButtonBookmark.setActiveImageTint(R.color.marked_icon); @@ -1071,13 +1077,15 @@ public class StatusAdapter extends RecyclerView.Adapter } else { holder.binding.actionButtonBookmark.setVisibility(View.GONE); } - if (displayTranslate) { - if (statusToDeal.language != null && statusToDeal.language.trim().length() > 0 && statusToDeal.language.equalsIgnoreCase(MyTransL.getLocale())) { + if (translateButton.equals(translateButtonEntryValues[0])) { // Show + holder.binding.actionButtonTranslate.setVisibility(View.VISIBLE); + } else if (translateButton.equals(translateButtonEntryValues[1])) { // Auto + if (statusToDeal.language != null && !statusToDeal.language.trim().isEmpty() && statusToDeal.language.equalsIgnoreCase(MyTransL.getLocale())) { holder.binding.actionButtonTranslate.setVisibility(View.GONE); } else { holder.binding.actionButtonTranslate.setVisibility(View.VISIBLE); } - } else { + } else if (translateButton.equals(translateButtonEntryValues[2])) { // Hide holder.binding.actionButtonTranslate.setVisibility(View.GONE); } //--- ACTIONS --- diff --git a/app/src/main/java/app/fedilab/android/mastodon/ui/fragment/settings/FragmentTimelinesSettings.java b/app/src/main/java/app/fedilab/android/mastodon/ui/fragment/settings/FragmentTimelinesSettings.java index 33445a32..0edc65a8 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/ui/fragment/settings/FragmentTimelinesSettings.java +++ b/app/src/main/java/app/fedilab/android/mastodon/ui/fragment/settings/FragmentTimelinesSettings.java @@ -88,10 +88,10 @@ public class FragmentTimelinesSettings extends PreferenceFragmentCompat implemen boolean checked = sharedpreferences.getBoolean(getString(R.string.SET_DISPLAY_BOOKMARK) + MainActivity.currentUserID + MainActivity.currentInstance, true); SET_DISPLAY_BOOKMARK.setChecked(checked); } - SwitchPreferenceCompat SET_DISPLAY_TRANSLATE = findPreference(getString(R.string.SET_DISPLAY_TRANSLATE)); - if (SET_DISPLAY_TRANSLATE != null) { - boolean checked = sharedpreferences.getBoolean(getString(R.string.SET_DISPLAY_TRANSLATE) + MainActivity.currentUserID + MainActivity.currentInstance, false); - SET_DISPLAY_TRANSLATE.setChecked(checked); + ListPreference SET_TRANSLATE_BUTTON = findPreference(getString(R.string.SET_TRANSLATE_BUTTON)); + if (SET_TRANSLATE_BUTTON != null) { + String value = sharedpreferences.getString(getString(R.string.SET_TRANSLATE_BUTTON) + MainActivity.currentUserID + MainActivity.currentInstance, null); + SET_TRANSLATE_BUTTON.setValue(value); } SwitchPreferenceCompat SET_DISPLAY_QUOTE = findPreference(getString(R.string.SET_DISPLAY_QUOTE)); @@ -125,10 +125,10 @@ public class FragmentTimelinesSettings extends PreferenceFragmentCompat implemen editor.putBoolean(getString(R.string.SET_DISPLAY_BOOKMARK) + MainActivity.currentUserID + MainActivity.currentInstance, SET_DISPLAY_BOOKMARK.isChecked()); } } - if (key.compareToIgnoreCase(getString(R.string.SET_DISPLAY_TRANSLATE)) == 0) { - SwitchPreferenceCompat SET_DISPLAY_TRANSLATE = findPreference(getString(R.string.SET_DISPLAY_TRANSLATE)); - if (SET_DISPLAY_TRANSLATE != null) { - editor.putBoolean(getString(R.string.SET_DISPLAY_TRANSLATE) + MainActivity.currentUserID + MainActivity.currentInstance, SET_DISPLAY_TRANSLATE.isChecked()); + if (key.compareToIgnoreCase(getString(R.string.SET_TRANSLATE_BUTTON)) == 0) { + ListPreference SET_TRANSLATE_BUTTON = findPreference(getString(R.string.SET_TRANSLATE_BUTTON)); + if (SET_TRANSLATE_BUTTON != null) { + editor.putString(getString(R.string.SET_TRANSLATE_BUTTON) + MainActivity.currentUserID + MainActivity.currentInstance, SET_TRANSLATE_BUTTON.getValue()); } } if (key.compareToIgnoreCase(getString(R.string.SET_DISPLAY_QUOTE)) == 0) { diff --git a/app/src/main/res/drawables/mastodon/drawable/ic_quote_or_boost.xml b/app/src/main/res/drawables/mastodon/drawable/ic_quote_or_boost.xml new file mode 100644 index 00000000..0659305a --- /dev/null +++ b/app/src/main/res/drawables/mastodon/drawable/ic_quote_or_boost.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawables/mastodon/drawable/ic_quote_or_boost_active.xml b/app/src/main/res/drawables/mastodon/drawable/ic_quote_or_boost_active.xml new file mode 100644 index 00000000..07539d8d --- /dev/null +++ b/app/src/main/res/drawables/mastodon/drawable/ic_quote_or_boost_active.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_followers.xml b/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_followers.xml new file mode 100644 index 00000000..530a95c8 --- /dev/null +++ b/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_followers.xml @@ -0,0 +1,22 @@ + + + + + + + diff --git a/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_nobody.xml b/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_nobody.xml new file mode 100644 index 00000000..62d82dfd --- /dev/null +++ b/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_nobody.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_public.xml b/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_public.xml new file mode 100644 index 00000000..31cea45e --- /dev/null +++ b/app/src/main/res/drawables/mastodon/drawable/ic_quote_policy_public.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/layouts/mastodon/layout/activity_edit_profile.xml b/app/src/main/res/layouts/mastodon/layout/activity_edit_profile.xml index 3fa841c2..1a52d0bf 100644 --- a/app/src/main/res/layouts/mastodon/layout/activity_edit_profile.xml +++ b/app/src/main/res/layouts/mastodon/layout/activity_edit_profile.xml @@ -395,7 +395,7 @@ android:layout_height="wrap_content" android:text="@string/no_one" android:textAlignment="textStart" - app:icon="@drawable/ic_baseline_block_24" /> + app:icon="@drawable/ic_quote_policy_nobody" /> + app:icon="@drawable/ic_quote_policy_followers" /> + app:icon="@drawable/ic_quote_policy_public" /> diff --git a/app/src/main/res/layouts/mastodon/layout/drawer_status.xml b/app/src/main/res/layouts/mastodon/layout/drawer_status.xml index 86997f1c..c6545df2 100644 --- a/app/src/main/res/layouts/mastodon/layout/drawer_status.xml +++ b/app/src/main/res/layouts/mastodon/layout/drawer_status.xml @@ -257,6 +257,7 @@ android:layout_marginStart="48dp" android:layout_marginTop="6dp" android:layout_marginEnd="6dp" + android:textIsSelectable="true" tools:text="Warning: Lorem Ipsum below" /> + app:icon="@drawable/ic_quote_policy_followers" /> @@ -475,7 +475,7 @@ android:minHeight="36dp" android:text="@string/no_one" android:textAlignment="textStart" - app:icon="@drawable/ic_baseline_block_24" /> + app:icon="@drawable/ic_quote_policy_nobody" /> + app:icon="@drawable/ic_quote_policy_followers" /> + app:icon="@drawable/ic_quote_policy_public" /> diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml index 960b77f7..2a511430 100644 --- a/app/src/main/res/values-ca/strings.xml +++ b/app/src/main/res/values-ca/strings.xml @@ -1129,4 +1129,5 @@ Qui pot citar Ningú Tothom + Botó de traducció diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index b15c83d1..19a979ad 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -21,7 +21,7 @@ Tagy Uložit Instance - Instance: mastodon.social + Např.: mastodon.social Nyní používáte účet %1$s Přidat účet Obsah zprávy byl zkopírován do schránky @@ -1149,4 +1149,6 @@ Při odpovídání na boost bude v odpovědi zmíněna osoba, která boostovala původní zprávu Zvýraznit spodní hashtagy …a dalších %d + Výchozí výběr pro toho, kdo může citovat + Tlačítko překladu diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 08af0388..9ecee81b 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -21,7 +21,7 @@ Etiquetas Guardar Instancia - Instancia: mastodon.social + P.ej.: mastodon.social Ahora funciona con la cuenta %1$s Agregar una cuenta El contenido del mensaje ha sido copiado al portapapeles @@ -1012,7 +1012,7 @@ Imagen de tarjeta Impulsos Cuando respondas las menciones serán añadidas al principio del mensaje - Mostrar contenido > + ]]> Mostrar auto respuestas Mostrar auto impulsos Mostrar mis mensajes diff --git a/app/src/main/res/values-et/strings.xml b/app/src/main/res/values-et/strings.xml index c6d80245..266a5574 100644 --- a/app/src/main/res/values-et/strings.xml +++ b/app/src/main/res/values-et/strings.xml @@ -21,7 +21,7 @@ Sildid Salvesta Teenuse server - Koduserver: mastodon.social + Näiteks: mastodon.social Vastused Kasutajanimi Kavandid @@ -155,4 +155,28 @@ Sõnum eemaldati sinu järjehoidjate seast! Sõnumite arv ühel laadimiskorral Otsesõnum + Peida meedium + Näita meediumi + Vali kasutajakonto + Vali mõned kasutajakontod + Kas kustutad kavandi? + Kirjelda seda nägemispuudega inimeste jaoks + Kirjeldust pole saadaval! + mainis sind + andis sinu olekule hoogu + lisas sinu oleku lemmikuks + hakkas sind jälgima + küsis, kas ta võib sind jälgida + Kas kustutad kõik teavitused? + Kõik teavitused on kustutatud! + Jälgijad + Kliendi tunnust pole võimalik tuvastada! + See kasutajakonto on blokeeritud! + See kasutajakonto enam pole blokeeritud! + See kasutajakonto on summutatud! + See kasutajakonto enam pole summutatud! + See kasutajakonto on nüüd jälgimisel! + See kasutajakonto enam pole jälgimisel! + Vaat, kus lops! Tekkis üks viga! + Internetiühendus puudub! diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 1d3afdf5..dd8b42c9 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -21,7 +21,7 @@ Étiquettes Sauvegarder Instance - Instance : mastodon.social + Ex. : mastodon.social Utilisation du compte %1$s Ajouter un compte Le contenu du message a été copié dans le presse-papier @@ -127,7 +127,7 @@ Une erreur s’est produite lors de la sélection du média ! Supprimer le média ? Votre message est vide ! - Le message a été envoyé ! + Le message a été envoyé ! Contenu sensible ? Aucun brouillon ! Choisissez un compte @@ -626,7 +626,7 @@ Autres actions Types de notifications à afficher Confirmer les désabonnements - Le message a été envoyé ! + Le message a été envoyé ! Type de sondage : Durée du sondage : Nombre de comptes par chargement diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml index 57b7ac29..45aba6d9 100644 --- a/app/src/main/res/values-gl/strings.xml +++ b/app/src/main/res/values-gl/strings.xml @@ -1125,4 +1125,5 @@ Quen pode citar Ninguén Calquera + Botón para traducir diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index b502e6ab..e6bac335 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -1130,4 +1130,5 @@ 見積可能者 誰も 誰か + 翻訳ボタン diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index 51d80073..0cd4bcd2 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -1138,4 +1138,7 @@ Ніхто Будь-хто Вибір за замовчуванням для тих, хто може котирувати + Кнопка перекладу + Перемістити часову шкалу вгору + Перемістити часову шкалу вниз diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 192cbc12..7686fbab 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -1128,4 +1128,7 @@ 无人 任何人 谁可以引用的默认选择 + 翻译按钮 + 上移时间轴 + 下移时间轴 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 85817149..08d2095d 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -483,6 +483,8 @@ List permanently deleted Followed instance removed Pinned tag removed + Move timeline up + Move timeline down Undo Main timelines can only be hidden! Always mark media as sensitive @@ -772,6 +774,16 @@ No accounts found for this list! Scheduled + + Show + Auto (depending on post language) + Hide + + + show + auto + hide + Ask @@ -1268,6 +1280,7 @@ SET_DISPLAY_REACTIONS SET_DISPLAY_TRANSLATE + SET_TRANSLATE_BUTTON SET_POST_FORMAT SET_COMPOSE_LOCAL_ONLY @@ -1383,6 +1396,7 @@ Poll duration: Always display bookmark button Always display translate button + Translate button Display Bottom menu Top bar menu diff --git a/app/src/main/res/xml/pref_timelines.xml b/app/src/main/res/xml/pref_timelines.xml index cd3e4e10..161cba22 100644 --- a/app/src/main/res/xml/pref_timelines.xml +++ b/app/src/main/res/xml/pref_timelines.xml @@ -142,12 +142,13 @@ app:key="@string/SET_PIXELFED_PRESENTATION" app:singleLineTitle="false" app:title="@string/set_pixelfed_presentation" /> - +