diff --git a/app/src/main/java/com/keylesspalace/tusky/MainActivity.kt b/app/src/main/java/com/keylesspalace/tusky/MainActivity.kt index 499d080f7..3adb29f2a 100644 --- a/app/src/main/java/com/keylesspalace/tusky/MainActivity.kt +++ b/app/src/main/java/com/keylesspalace/tusky/MainActivity.kt @@ -1066,7 +1066,7 @@ class MainActivity : BottomSheetActivity(), ActionButtonActivity, HasAndroidInje } updateProfiles() - shareShortcutHelper.updateShortcut(accountManager.activeAccount!!) + shareShortcutHelper.updateShortcuts() } @SuppressLint("CheckResult") diff --git a/app/src/main/java/com/keylesspalace/tusky/appstore/Events.kt b/app/src/main/java/com/keylesspalace/tusky/appstore/Events.kt index 6ef67c4c1..cf2046359 100644 --- a/app/src/main/java/com/keylesspalace/tusky/appstore/Events.kt +++ b/app/src/main/java/com/keylesspalace/tusky/appstore/Events.kt @@ -4,6 +4,7 @@ import com.keylesspalace.tusky.TabData import com.keylesspalace.tusky.entity.Account import com.keylesspalace.tusky.entity.Notification import com.keylesspalace.tusky.entity.Poll +import com.keylesspalace.tusky.entity.ScheduledStatus import com.keylesspalace.tusky.entity.Status data class StatusChangedEvent(val status: Status) : Event @@ -13,7 +14,7 @@ data class BlockEvent(val accountId: String) : Event data class MuteEvent(val accountId: String) : Event data class StatusDeletedEvent(val statusId: String) : Event data class StatusComposedEvent(val status: Status) : Event -data class StatusScheduledEvent(val status: Status) : Event +data class StatusScheduledEvent(val scheduledStatus: ScheduledStatus) : Event data class ProfileEditedEvent(val newProfileData: Account) : Event data class PreferenceChangedEvent(val preferenceKey: String) : Event data class MainTabsChangedEvent(val newTabs: List) : Event diff --git a/app/src/main/java/com/keylesspalace/tusky/network/MastodonApi.kt b/app/src/main/java/com/keylesspalace/tusky/network/MastodonApi.kt index 91c5fca2e..5498f5382 100644 --- a/app/src/main/java/com/keylesspalace/tusky/network/MastodonApi.kt +++ b/app/src/main/java/com/keylesspalace/tusky/network/MastodonApi.kt @@ -199,6 +199,14 @@ interface MastodonApi { @Body status: NewStatus ): NetworkResult + @POST("api/v1/statuses") + suspend fun createScheduledStatus( + @Header("Authorization") auth: String, + @Header(DOMAIN_HEADER) domain: String, + @Header("Idempotency-Key") idempotencyKey: String, + @Body status: NewStatus + ): NetworkResult + @GET("api/v1/statuses/{id}") suspend fun status(@Path("id") statusId: String): NetworkResult diff --git a/app/src/main/java/com/keylesspalace/tusky/service/SendStatusService.kt b/app/src/main/java/com/keylesspalace/tusky/service/SendStatusService.kt index e68e7b342..84f5c5981 100644 --- a/app/src/main/java/com/keylesspalace/tusky/service/SendStatusService.kt +++ b/app/src/main/java/com/keylesspalace/tusky/service/SendStatusService.kt @@ -49,6 +49,7 @@ import com.keylesspalace.tusky.entity.Attachment import com.keylesspalace.tusky.entity.MediaAttribute import com.keylesspalace.tusky.entity.NewPoll import com.keylesspalace.tusky.entity.NewStatus +import com.keylesspalace.tusky.entity.ScheduledStatus import com.keylesspalace.tusky.entity.Status import com.keylesspalace.tusky.network.MastodonApi import com.keylesspalace.tusky.util.unsafeLazy @@ -256,13 +257,24 @@ class SendStatusService : Service(), Injectable { } ) + val scheduled = !statusToSend.scheduledAt.isNullOrEmpty() + val sendResult = if (isNew) { - mastodonApi.createStatus( - "Bearer " + account.accessToken, - account.domain, - statusToSend.idempotencyKey, - newStatus - ) + if (!scheduled) { + mastodonApi.createStatus( + "Bearer " + account.accessToken, + account.domain, + statusToSend.idempotencyKey, + newStatus + ) + } else { + mastodonApi.createScheduledStatus( + "Bearer " + account.accessToken, + account.domain, + statusToSend.idempotencyKey, + newStatus + ) + } } else { mastodonApi.editStatus( statusToSend.statusId!!, @@ -282,14 +294,12 @@ class SendStatusService : Service(), Injectable { mediaUploader.cancelUploadScope(*statusToSend.media.map { it.localId }.toIntArray()) - val scheduled = !statusToSend.scheduledAt.isNullOrEmpty() - if (scheduled) { - eventHub.dispatch(StatusScheduledEvent(sentStatus)) + eventHub.dispatch(StatusScheduledEvent(sentStatus as ScheduledStatus)) } else if (!isNew) { - eventHub.dispatch(StatusChangedEvent(sentStatus)) + eventHub.dispatch(StatusChangedEvent(sentStatus as Status)) } else { - eventHub.dispatch(StatusComposedEvent(sentStatus)) + eventHub.dispatch(StatusComposedEvent(sentStatus as Status)) } notificationManager.cancel(statusId) diff --git a/app/src/main/java/com/keylesspalace/tusky/util/ShareShortcutHelper.kt b/app/src/main/java/com/keylesspalace/tusky/util/ShareShortcutHelper.kt index 11f89255e..d35e3af5a 100644 --- a/app/src/main/java/com/keylesspalace/tusky/util/ShareShortcutHelper.kt +++ b/app/src/main/java/com/keylesspalace/tusky/util/ShareShortcutHelper.kt @@ -21,7 +21,6 @@ import android.content.Context import android.content.Intent import android.graphics.Bitmap import android.graphics.Canvas -import android.text.TextUtils import androidx.core.app.Person import androidx.core.content.pm.ShortcutInfoCompat import androidx.core.content.pm.ShortcutManagerCompat @@ -30,70 +29,72 @@ import com.bumptech.glide.Glide import com.keylesspalace.tusky.MainActivity import com.keylesspalace.tusky.R import com.keylesspalace.tusky.db.AccountEntity +import com.keylesspalace.tusky.db.AccountManager import com.keylesspalace.tusky.di.ApplicationScope import javax.inject.Inject import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch class ShareShortcutHelper @Inject constructor( private val context: Context, + private val accountManager: AccountManager, @ApplicationScope private val externalScope: CoroutineScope ) { - fun updateShortcut(account: AccountEntity) { - externalScope.launch { + fun updateShortcuts() { + externalScope.launch(Dispatchers.IO) { val innerSize = context.resources.getDimensionPixelSize(R.dimen.adaptive_bitmap_inner_size) val outerSize = context.resources.getDimensionPixelSize(R.dimen.adaptive_bitmap_outer_size) - val bmp = if (TextUtils.isEmpty(account.profilePictureUrl)) { - Glide.with(context) - .asBitmap() - .load(R.drawable.avatar_default) - .submitAsync(innerSize, innerSize) - } else { - Glide.with(context) + val maxNumberOfShortcuts = ShortcutManagerCompat.getMaxShortcutCountPerActivity(context) + + val shortcuts = accountManager.accounts.take(maxNumberOfShortcuts).map { account -> + + val bmp = Glide.with(context) .asBitmap() .load(account.profilePictureUrl) + .placeholder(R.drawable.avatar_default) .error(R.drawable.avatar_default) .submitAsync(innerSize, innerSize) + + // inset the loaded bitmap inside a 108dp transparent canvas so it looks good as adaptive icon + val outBmp = Bitmap.createBitmap(outerSize, outerSize, Bitmap.Config.ARGB_8888) + + val canvas = Canvas(outBmp) + canvas.drawBitmap( + bmp, + (outerSize - innerSize).toFloat() / 2f, + (outerSize - innerSize).toFloat() / 2f, + null + ) + + val icon = IconCompat.createWithAdaptiveBitmap(outBmp) + + val person = Person.Builder() + .setIcon(icon) + .setName(account.displayName) + .setKey(account.identifier) + .build() + + // This intent will be sent when the user clicks on one of the launcher shortcuts. Intent from share sheet will be different + val intent = Intent(context, MainActivity::class.java).apply { + action = Intent.ACTION_SEND + type = "text/plain" + putExtra(ShortcutManagerCompat.EXTRA_SHORTCUT_ID, account.id.toString()) + } + + ShortcutInfoCompat.Builder(context, account.id.toString()) + .setIntent(intent) + .setCategories(setOf("com.keylesspalace.tusky.Share")) + .setShortLabel(account.displayName) + .setPerson(person) + .setLongLived(true) + .setIcon(icon) + .build() } - // inset the loaded bitmap inside a 108dp transparent canvas so it looks good as adaptive icon - val outBmp = Bitmap.createBitmap(outerSize, outerSize, Bitmap.Config.ARGB_8888) - - val canvas = Canvas(outBmp) - canvas.drawBitmap( - bmp, - (outerSize - innerSize).toFloat() / 2f, - (outerSize - innerSize).toFloat() / 2f, - null - ) - - val icon = IconCompat.createWithAdaptiveBitmap(outBmp) - - val person = Person.Builder() - .setIcon(icon) - .setName(account.displayName) - .setKey(account.identifier) - .build() - - // This intent will be sent when the user clicks on one of the launcher shortcuts. Intent from share sheet will be different - val intent = Intent(context, MainActivity::class.java).apply { - action = Intent.ACTION_SEND - type = "text/plain" - putExtra(ShortcutManagerCompat.EXTRA_SHORTCUT_ID, account.id.toString()) - } - - val shortcutInfo = ShortcutInfoCompat.Builder(context, account.id.toString()) - .setIntent(intent) - .setCategories(setOf("com.keylesspalace.tusky.Share")) - .setShortLabel(account.displayName) - .setPerson(person) - .setLongLived(true) - .setIcon(icon) - .build() - - ShortcutManagerCompat.addDynamicShortcuts(context, listOf(shortcutInfo)) + ShortcutManagerCompat.addDynamicShortcuts(context, shortcuts) } } diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 7bff5fc8a..92083a0fb 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -2,13 +2,13 @@ Bir hata oluştu. Bir ağ hatası oluştu. Lütfen bağlantını kontrol et ve tekrar dene. - Bu alan boş bırakılmaz. + Bu alan boş bırakılamaz. Girilen alan adı geçersiz - Bu sunucu da kimlik doğrulama başarısız oldu. Sorun devam ederse menüde ki Tarayıcı ile Giriş Yap seçeneğini dene. + Bu sunucu da kimlik doğrulama başarısız oldu. Sorun devam ederse menüdeki Tarayıcıyla Giriş Yap seçeneğini deneyiniz. Kullanılabilir web tarayıcısı bulunamadı. - Tanımlanamayan bir yetkilendirme hatası oluştu. Sorun devam ederse menüdeki Tarayıcı ile Giriş Yap seçeneğini dene. + Tanımlanamayan bir yetkilendirme hatası oluştu. Sorun devam ederse menüdeki Tarayıcı ile Giriş Yap seçeneğini deneyiniz. Yetkilendirme reddedildi. Doğru hesap bilgilerini girdiğinizden eminseniz menüdeki Tarayıcı ile Giriş Yap seçeneğini deneyiniz. - Giriş belirteci alınırken hata oluştu. Sorun devam ederse menüdeki Tarayıcı ile Giriş Yap seçeneğini dene. + Giriş belirteci alınırken hata oluştu. Sorun devam ederse menüdeki Tarayıcı ile Giriş Yap seçeneğini deneyiniz. Gönderi çok uzun! Bu tür bir dosya yüklenemez. Dosya açılamadı. @@ -242,7 +242,7 @@ %1$s hesabıyla gönderiliyor İçeriği görme engelliler için açıkla (%1$d karakter limiti) - İçerikleri görme engelliler için açıklamalar (%1$d karakter limitleti) + İçerikleri görme engelliler için açıklamalar (%1$d karakter limitleri) Başlık belirle Kaldır @@ -250,8 +250,8 @@ Takipçileri elle onaylamanız gerekir Taslaklara kaydedilsin mi\? Gönderi gönderiliyor… - Gönderi gönderilirken hata oluştu - Gönderiler Gönderiliyor + Gönderi yayınlanırken hata oluştu + Gönderiler Yayınlanıyor Gönderme iptal edildi Gönderinin bir kopyası taslaklara kaydedildi Oluştur @@ -262,7 +262,7 @@ Araştırılıyor… Tüm durumları Genişlet/Küçült Gönderiyi aç - Uygulamayı yeniden başlatmanız lazım + Uygulamayı yeniden başlatmanız gerekmekte Bu değişiklikleri uygulamak için Tusky\'yi yeniden başlatmanız gerekecek Sonra Yeniden başlat @@ -280,7 +280,7 @@ veri ekle Etiket İçerik - Kesin zaman kullan + Kesin tarih kullan Aşağıdaki bilgiler değişken olabilir. Tüm profili tarayıcıda görmek için tuşlayın. Sabitlemeyi kaldır Sabitle @@ -387,19 +387,19 @@ Ek Yorumlar %1$s adresine ilet Yayınlar getirilemedi - Bildirim sunucu yöneticinize gönderilecektir. Bu hesabı neden bildirdiğinizle ilgili açıklama yapabilirsiniz: + Bildirim sunucu yöneticinize gönderilecektir. Bu hesabı neden raporladığınızla ilgili açıklama yapabilirsiniz: Hesap başka bir sunucudan. Raporun anonim bir kopyasını da oraya gönderilsin mi\? Bahsedenler Gönderi yazanını aç Yeniden paylaşımları göster Bahsedenler #%1$d medyayı aç - Yer imleri + Yerimleri Zamanlanmış yayınlar - Yer imi + Yerimi Düzenle Sil ve düzenle - Yer imleri + Yerimleri Anket ekle Zamanlanmış yayınlar Gönderi tarihini ayarla @@ -429,7 +429,7 @@ Alan adından her şeyi gizle Her zaman içerik uyarılarıyla işaretlenmiş alanları genişlet %1$s içinde sona erecek - Bildirilemedi + Raporlanamadı Seçenek %1$d %1$s gönderisi aranırken hata oluştu Hiç taslağın yok. @@ -471,7 +471,7 @@ Giriş ekranı yüklenemedi. Sessize alma hatası #%1$s Takibi bırak #%1$s\? - Huzur + İyilik Kaydedildi! İstenmeyen Diğer @@ -518,7 +518,7 @@ 14 gün 365 gün Bildirimleri Gözden Geçir - Huzurlu kullanım için bazı bilgiler gizlenebilir.. Bunlar: + İyi kullanım için bazı bilgiler gizlenebilir.. Bunlar: \n \n - Gözde/Yeniden Paylaşım/Takip bildirimleri \n - Gözde/Yeniden Paylaşım sayacı @@ -545,11 +545,11 @@ Ağ akışı bildirimlerini sınırla Yayınların niceliksel istatistikleri gizle şimdi - Yanıt yazdığınız yayın kaldırıldı + Hazırladığınız yanıtınız yayından kaldırıldı %1$s (%2$s) Kural ihlali Gönderi dili - Birleşikİtme aracılığıyla itme bildirimlerini kullanmak için Tusky\'nin Mastodon sunucundaki bildirimlere abone olma iznine ihtiyacı var. Bu, Tusky\'ye verilen OAuth kapsamlarını değiştirmek için yeniden oturum açmayı gerektirir. Burada veya Hesap tercihleri bölümünde yeniden giriş yapma seçeneğini kullanman tüm yerel taslaklarını ve önbelleğini koruyacaktır. + Birleşik itme aracılığıyla, itme bildirimlerini kullanmak için Tusky\'nin Mastodon sunucundaki bildirimlere abone olma iznine ihtiyacı var. Bu, Tusky\'ye verilen OAuth kapsamlarını değiştirmek için yeniden oturum açmayı gerektirir. Burada veya Hesap tercihleri bölümünde yeniden giriş yapma seçeneğini kullanman tüm yerel taslaklarını ve önbelleğini koruyacaktır. #%1$s takip edilmeyenler Abone Ol Hesabınız kilitli olmasa da, %1$s kadro bu hesaplardan gelen takip isteklerini elle gözden geçirmek isteyebileceğinizi düşündü. @@ -614,7 +614,7 @@ Bilinmeyen Sunucuyla bağlantı kurmak çok uzun sürdü bilinmeyen sebep - Yer imi gönderisi başarısız oldu: %1$s + Yerimi gönderisi başarısız oldu: %1$s Ankete oy gönderilemedi: %1$s Bildirimler temizlenemedi: %1$s Gönderi gözdelere eklenemedi: %1$s @@ -646,7 +646,7 @@ Süzgeçlendi: %1$s Anahtar kelimeyi düzenle %1$s: %2$s - Gönderi istatistiklerini sğ akışında göster + Yayın istatistiklerini sağ akışında göster Öne çıkan etiketler Toplam kullanım Toplam hesap @@ -677,9 +677,9 @@ Süzgeci sil \'%1$s\'\? Sil Profil değişikliklerinizi kaydetmek istiyor musunuz\? - İşte özel mesajlarınız; bazen konuşmalar veya doğrudan mesajlar (DM) olarak da adlandırılır. + İşte özel iletileriniz; bazen konuşmalar veya doğrudan iletiler (Dİ) olarak da adlandırılır. \n -\nÖzel mesajlar, bir gönderinin [iconics gmd_public] görünürlüğünü [iconics gmd_mail] Doğrudan olarak ayarlayarak ve metinde bir veya daha fazla kullanıcıdan bahsederek oluşturulur. +\nÖzel iletiler, bir gönderinin [iconics gmd_public] görünürlüğünü [iconics gmd_mail] Doğrudan olarak ayarlayarak ve metinde bir veya daha fazla kullanıcıdan bahsederek oluşturulur. \n \nÖrneğin, bir hesabın profil görünümünde başlayabilir ve oluştur düğmesine [iconics gmd_edit] dokunabilir ve görünürlüğü değiştirebilirsiniz. Bu sizin liste görünümünüzdür. Bir dizi özel liste tanımlayabilir ve bunlara hesaplar ekleyebilirsiniz. @@ -693,8 +693,8 @@ Şimdi etiketi takip edin #%1$s Artık etiketi takip etmiyorum #%1$s Sesi açılamadı %1$s: %2$s - Gündemdeki yayınlar - Resim + Gündemdekiler + Görsel Sistem Tasarımını Kullanın (siyah) Liste üyeleri Takip edilen herhangi bir kullanıcı diff --git a/fastlane/metadata/android/cy/changelogs/119.txt b/fastlane/metadata/android/cy/changelogs/119.txt new file mode 100644 index 000000000..f990e9b17 --- /dev/null +++ b/fastlane/metadata/android/cy/changelogs/119.txt @@ -0,0 +1,8 @@ +Tusky 25 + +- Cynnal API cyfieithu Mastodon +- Dangos iaith y neges +- Gwella trawsnewidiadau'r sgrin +- Mae gosodiadau hidlo wedi cael eu symud i osodiadau'r cyfrif +- Mae ystadegau'r neges bob amser yn dangos yn yr un lle +- Llawer o wella wedi'u cudd diff --git a/fastlane/metadata/android/gl/changelogs/104.txt b/fastlane/metadata/android/gl/changelogs/104.txt index dffabc4d6..569d610b5 100644 --- a/fastlane/metadata/android/gl/changelogs/104.txt +++ b/fastlane/metadata/android/gl/changelogs/104.txt @@ -1,10 +1,11 @@ Tusky 22.0 beta 2 -Fixes including: +Correccións que inclúen: -- Improved notification loading speed -- Restore showing 0/1/1+ for replies -- Show filter titles, not filter keywords, on filtered posts -- Fixed a bug where opening a status could open an unrelated link -- Show "Add" button in correct place when there are no filters -- Fixed assorted crashes +- Velocidade de carga de notificacións mellorada +- Restaurar mostrando 0/1/1+ para as respostas +- Mostra títulos de filtro, non palabras clave de filtro, nas publicacións filtradas +- Corrixiuse un erro no que abrir un estado podía abrir unha ligazón non relacionada +- Mostrar o botón "Engadir" no lugar correcto cando non haxa filtros +- Arranxáronse varios fallos + (trad. automática) diff --git a/fastlane/metadata/android/gl/changelogs/105.txt b/fastlane/metadata/android/gl/changelogs/105.txt index 0dc11472b..e7396ad56 100644 --- a/fastlane/metadata/android/gl/changelogs/105.txt +++ b/fastlane/metadata/android/gl/changelogs/105.txt @@ -1,11 +1,12 @@ Tusky 22.0 beta 3 -Fixes including: +Correccións que inclúen: -- Fixed crash when viewing a thread -- Fixed crash processing Mastodon filters -- Links in bios of follow/follow request notifications are clickable -- Android Notifications updates - - Android notification for a Mastodon notification should only be shown once - - Android notifications are grouped by Mastodon notification type (follow, mention, boost, etc) - - Potential for missing notifications has been removed +- Arranxouse o fallo ao ver un fío +- Filtros Mastodon de procesamento de fallos corrixidos +- Pódense facer clic nas ligazóns da bios das notificacións de solicitude de seguimento/seguimento +- Actualizacións de notificacións de Android + - A notificación de Android para unha notificación de Mastodon só debe mostrarse unha vez + - As notificacións de Android agrúpanse por tipo de notificación de Mastodon (seguir, mencionar, aumentar, etc.) + - Eliminouse o potencial de notificacións que faltan +(trad. auto) diff --git a/fastlane/metadata/android/gl/changelogs/106.txt b/fastlane/metadata/android/gl/changelogs/106.txt index 28785ce3b..dcd4c9074 100644 --- a/fastlane/metadata/android/gl/changelogs/106.txt +++ b/fastlane/metadata/android/gl/changelogs/106.txt @@ -1,5 +1,5 @@ Tusky 22.0 beta 4 -Fixes: +Arranxo: -- Fixed repeated fetch of notifications if configured with multiple accounts +- das notificacións repetidas se hai varias contas diff --git a/fastlane/metadata/android/gl/changelogs/107.txt b/fastlane/metadata/android/gl/changelogs/107.txt index 7298707af..d39366a56 100644 --- a/fastlane/metadata/android/gl/changelogs/107.txt +++ b/fastlane/metadata/android/gl/changelogs/107.txt @@ -1,6 +1,7 @@ Tusky 22.0 beta 5 -Fixes: +Correccións: -- Rolled back APNG library to fix broken animated emojis -- Save local copy of notification marker in case server does not support the API +- Retrocedeu a biblioteca APNG para corrixir emojis animados rotos +- Garda a copia local do marcador de notificación no caso de que o servidor non admita a API +(trad. automática) diff --git a/fastlane/metadata/android/gl/changelogs/108.txt b/fastlane/metadata/android/gl/changelogs/108.txt index f4e1b0c62..6ae3be037 100644 --- a/fastlane/metadata/android/gl/changelogs/108.txt +++ b/fastlane/metadata/android/gl/changelogs/108.txt @@ -1,5 +1,5 @@ Tusky 22.0 beta 6 -Fixes: +Arranxos: -- Save reading position in the Notifications tab more frequently +- gardar con maior frecuencia a posición de lectura na pestana de Notificacións diff --git a/fastlane/metadata/android/gl/changelogs/109.txt b/fastlane/metadata/android/gl/changelogs/109.txt index edc99c83c..b56a348d7 100644 --- a/fastlane/metadata/android/gl/changelogs/109.txt +++ b/fastlane/metadata/android/gl/changelogs/109.txt @@ -1,10 +1,12 @@ Tusky 22.0 beta 7 -Fixes: +Correccións: -### Significant bug fixes +### Correccións de erros importantes -- Fetch all outstanding Mastodon notifications when creating Android notifications -- Clicking "Compose" from a notification would set the wrong account -- Ensure "last read notification ID" is saved to the correct account +- Obtén todas as notificacións pendentes de Mastodon ao crear notificacións de Android +- Facendo clic en "Redactar" desde unha notificación, establecerase a conta incorrecta +- Asegúrate de gardar o "ID de notificación da última lectura" na conta correcta + +(trad. automática) diff --git a/fastlane/metadata/android/gl/changelogs/111.txt b/fastlane/metadata/android/gl/changelogs/111.txt index 8b3d2039d..f1e102fd5 100644 --- a/fastlane/metadata/android/gl/changelogs/111.txt +++ b/fastlane/metadata/android/gl/changelogs/111.txt @@ -1,15 +1,17 @@ Tusky 23.0 beta 1 -New features: +Novas características: -- New preference to scale UI text +- Nova preferencia para escalar o texto da IU -Fixes: +Correccións: -- Save account information correctly -- "pull" notifications on devices running Android versions <= 11 -- Work around Android bug where text fields could "forget" they can copy/paste -- Viewing "diffs" in edit history will not extend off screen edge -- Don't crash if your server has no post edit history -- Add a "Delete" button when editing a filter -- Show non-square emoji correctly +- Garda a información da conta correctamente +- notificacións "pull" en dispositivos con versións de Android <= 11 +- Soluciona un erro de Android onde os campos de texto poden "esquecer" que poden copiar/pegar +- A visualización de "diferencias" no historial de edicións non se estenderá fóra do bordo da pantalla +- Non falla se o teu servidor non ten historial de edición posterior +- Engade un botón "Eliminar" ao editar un filtro +- Mostrar emoji non cadrados correctamente + +(trad. automática) diff --git a/fastlane/metadata/android/gl/changelogs/119.txt b/fastlane/metadata/android/gl/changelogs/119.txt new file mode 100644 index 000000000..e3f5e4faf --- /dev/null +++ b/fastlane/metadata/android/gl/changelogs/119.txt @@ -0,0 +1,8 @@ +Tusky 25 + +- soporte para a API de tradución de Mastodon +- mostra o idioma da publicación +- mellora nas transicións entre pantallas +- os axustes dos filtros agora están nas preferencias da conta +- as estatísticas da publicación están nunha posición estable +- moitos cambios internos para mellorar a estabilidade e rendemento diff --git a/fastlane/metadata/android/sv/changelogs/119.txt b/fastlane/metadata/android/sv/changelogs/119.txt new file mode 100644 index 000000000..384851deb --- /dev/null +++ b/fastlane/metadata/android/sv/changelogs/119.txt @@ -0,0 +1,8 @@ +Tusky 25 + +- Stöd för Mastodon översättning API +- Visa språk för inlägg +- Förbättrade skärmövergångar +- Filter inställningar har flyttats till kontoinställningar +- Poststatistik har nu stabil position +- Mycket av stabilitet och prestandaförbättringar under huven diff --git a/fastlane/metadata/android/tr/changelogs/119.txt b/fastlane/metadata/android/tr/changelogs/119.txt new file mode 100644 index 000000000..d83773bbd --- /dev/null +++ b/fastlane/metadata/android/tr/changelogs/119.txt @@ -0,0 +1,8 @@ +Tusky 25 + +- Mastodon çeviri API'sini destekleyin +- Gönderi dilini göster +- Geliştirilmiş ekran geçişleri +- Süzgeç ayarları hesap tercihlerine taşındı +- Gönderi istatistikleri artık sabit konuma sahip +- Kaputun altında birçok kararlılık ve performans iyileştirmesi diff --git a/fastlane/metadata/android/vi/changelogs/119.txt b/fastlane/metadata/android/vi/changelogs/119.txt new file mode 100644 index 000000000..a790aeb5b --- /dev/null +++ b/fastlane/metadata/android/vi/changelogs/119.txt @@ -0,0 +1,8 @@ +Tusky 25 + +- Hỗ trợ Mastodon Dịch API +- Hiện ngôn ngữ tút +- Cải thiện chuyển đổi màn hình +- Cài đặt bộ lọc được chuyển sang tùy chọn tài khoản +- Thống kê bài viết bây giờ đã có vị trí ổn định +- Rất nhiều cải tiến về độ ổn định và hiệu suất bên trong