diff --git a/app/src/main/java/com/keylesspalace/tusky/components/timeline/TimelineFragment.kt b/app/src/main/java/com/keylesspalace/tusky/components/timeline/TimelineFragment.kt index 244fa1483..dd05a835c 100644 --- a/app/src/main/java/com/keylesspalace/tusky/components/timeline/TimelineFragment.kt +++ b/app/src/main/java/com/keylesspalace/tusky/components/timeline/TimelineFragment.kt @@ -231,7 +231,7 @@ class TimelineFragment : } }) - lifecycleScope.launch { + viewLifecycleOwner.lifecycleScope.launch { viewModel.statuses.collectLatest { pagingData -> adapter.submitData(pagingData) } @@ -285,7 +285,11 @@ class TimelineFragment : private fun setupRecyclerView() { binding.recyclerView.setAccessibilityDelegateCompat( ListStatusAccessibilityDelegate(binding.recyclerView, this) { pos -> - adapter.peek(pos) + if (pos in 0 until adapter.itemCount) { + adapter.peek(pos) + } else { + null + } } ) binding.recyclerView.setHasFixedSize(true) diff --git a/app/src/main/java/com/keylesspalace/tusky/components/timeline/viewmodel/CachedTimelineViewModel.kt b/app/src/main/java/com/keylesspalace/tusky/components/timeline/viewmodel/CachedTimelineViewModel.kt index b699602d4..1b1cb6d68 100644 --- a/app/src/main/java/com/keylesspalace/tusky/components/timeline/viewmodel/CachedTimelineViewModel.kt +++ b/app/src/main/java/com/keylesspalace/tusky/components/timeline/viewmodel/CachedTimelineViewModel.kt @@ -73,7 +73,14 @@ class CachedTimelineViewModel @Inject constructor( override val statuses = Pager( config = PagingConfig(pageSize = LOAD_AT_ONCE), remoteMediator = CachedTimelineRemoteMediator(accountManager, api, db, gson), - pagingSourceFactory = { db.timelineDao().getStatuses(accountManager.activeAccount!!.id) } + pagingSourceFactory = { + val activeAccount = accountManager.activeAccount + if (activeAccount == null) { + EmptyTimelinePagingSource() + } else { + db.timelineDao().getStatuses(activeAccount.id) + } + } ).flow .map { pagingData -> pagingData.map { timelineStatus -> diff --git a/app/src/main/java/com/keylesspalace/tusky/components/timeline/viewmodel/EmptyTimelinePagingSource.kt b/app/src/main/java/com/keylesspalace/tusky/components/timeline/viewmodel/EmptyTimelinePagingSource.kt new file mode 100644 index 000000000..5fd13dfb0 --- /dev/null +++ b/app/src/main/java/com/keylesspalace/tusky/components/timeline/viewmodel/EmptyTimelinePagingSource.kt @@ -0,0 +1,11 @@ +package com.keylesspalace.tusky.components.timeline.viewmodel + +import androidx.paging.PagingSource +import androidx.paging.PagingState +import com.keylesspalace.tusky.db.TimelineStatusWithAccount + +class EmptyTimelinePagingSource : PagingSource() { + override fun getRefreshKey(state: PagingState): Int? = null + + override suspend fun load(params: LoadParams): LoadResult = LoadResult.Page(emptyList(), null, null) +} diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 8d528aeac..8a7f4fa58 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -545,4 +545,10 @@ فشل في تحميل معلومات الرد غير محددة وضع حد لإشعارات الخيط الزمني + 14 يومًا + 30 يومًا + 60 يومًا + 90 يومًا + 180 يومًا + 365 يومًا \ No newline at end of file diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 7725c62ea..7113ededd 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -531,6 +531,12 @@ Demander confirmation avant de mettre en favoris Le message auquel répondait ce brouillon a été supprimé Échec d’envoi du pouet ! - Bien que votre compte ne soit pas verrouillé, l\'équipe de %1$s a pensé que vous voudriez valider manuellement les demandes de suivi provenant de ces comptes. + Bien que votre compte ne soit pas verrouillé, l’équipe de %1$s a pensé que vous voudriez valider manuellement les demandes de d’abonnement provenant de ces comptes. Échec du chargement des informations de réponse + 30 jours + 60 jours + 90 jours + 365 jours + 14 jours + 180 jours diff --git a/app/src/main/res/values-gd/strings.xml b/app/src/main/res/values-gd/strings.xml index 2dd5c4b95..56576a155 100644 --- a/app/src/main/res/values-gd/strings.xml +++ b/app/src/main/res/values-gd/strings.xml @@ -534,4 +534,10 @@ Sguab às an còmhradh Thoir an comharra-lìn air falbh Ceall còmhradh dearbhaidh mus dèid post ’na annsachd + 30 latha + 90 latha + 180 latha + 365 latha + 14 làithean + 60 latha \ No newline at end of file diff --git a/app/src/main/res/values-is/strings.xml b/app/src/main/res/values-is/strings.xml index 6d240c64b..262064d34 100644 --- a/app/src/main/res/values-is/strings.xml +++ b/app/src/main/res/values-is/strings.xml @@ -512,4 +512,10 @@ Birta staðfestingarglugga áður en sett er í eftirlæti Eyða þessu samtali\? Eyða samtali + 30 dagar + 60 dagar + 90 dagar + 180 dagar + 365 dagar + 14 dagar \ No newline at end of file diff --git a/app/src/main/res/values-no-rNB/strings.xml b/app/src/main/res/values-no-rNB/strings.xml index ab79b91d6..4d762adb9 100644 --- a/app/src/main/res/values-no-rNB/strings.xml +++ b/app/src/main/res/values-no-rNB/strings.xml @@ -39,7 +39,7 @@ Kladder Lisenser \@%s - %s boosted + %s boostet Sensitivt innhold Media skjult Klikk for å vise @@ -194,7 +194,7 @@ Størrelse på statustekst Nye følgere Varsler om nye følgere - Boosts + Booster Varsler når tootene dine blir boostet Favoritter Varsler når tootene dine blir favorisert @@ -314,8 +314,8 @@ <b>%1$s</b> Favoritter - <b>%s</b> Boost - <b>%s</b> Boosts + %s Boost + %s Booster Boostet av Favorisert av @@ -512,4 +512,10 @@ Slett samtale Slett bokmerke Vis bekreftelsesdialog når favoritt skal legges til + 30 dager + 60 dager + 90 dager + 180 dager + 365 dager + 14 dager \ No newline at end of file diff --git a/app/src/main/res/values-oc/strings.xml b/app/src/main/res/values-oc/strings.xml index 1448cbc68..3bbae2ffe 100644 --- a/app/src/main/res/values-oc/strings.xml +++ b/app/src/main/res/values-oc/strings.xml @@ -334,7 +334,7 @@ CC-BY-SA 4.0 %1$s Favorit - 3%1$s4 Favorits + %1$s Favorits %s partatge diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 6b5033d1c..6e7453aea 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -47,7 +47,7 @@ %s favoritou teu toot %s te seguiu Denunciar @%s - Comentários adicionais aqui + Mais comentários\? Resposta rápida Responder Dar boost @@ -517,4 +517,6 @@ Excluir esta conversa\? Excluir conversa Deseja excluir a lista %s\? + Remover favorito + Mostrar janela de confirmação antes de favoritar diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index fc73d1b5e..0a684c9f7 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -534,4 +534,10 @@ Видалити бесіду Вилучити закладку Запитувати підтвердження перед додаванням до вподобаних + 14 днів + 30 днів + 60 днів + 90 днів + 180 днів + 365 днів \ No newline at end of file diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index 2b4143a13..1f82c3bd4 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -289,7 +289,7 @@ Thêm bộ lọc Chủ đề Thế giới - xem tiếp + tiếp tục đọc Trả lời @%s Media Luôn hiện nội dung bị ẩn @@ -501,4 +501,10 @@ Xóa thảo luận Xác nhận trước khi thích Bỏ lưu + 14 ngày + 30 ngày + 60 ngày + 90 ngày + 180 ngày + 365 ngày \ No newline at end of file diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 39aa0b40a..8032f67d8 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -526,4 +526,10 @@ 删除对话 收藏前显示确认对话框 删除书签 + 30 天 + 60 天 + 90 天 + 180 天 + 14 天 + 365 天 diff --git a/fastlane/metadata/android/gd/short_description.txt b/fastlane/metadata/android/gd/short_description.txt new file mode 100644 index 000000000..e811ef873 --- /dev/null +++ b/fastlane/metadata/android/gd/short_description.txt @@ -0,0 +1 @@ +Cliant do dh’iomadh cunntas san lìonra sòisealta Mastodon diff --git a/fastlane/metadata/android/gd/title.txt b/fastlane/metadata/android/gd/title.txt new file mode 100644 index 000000000..0238ffc0a --- /dev/null +++ b/fastlane/metadata/android/gd/title.txt @@ -0,0 +1 @@ +Tusky diff --git a/fastlane/metadata/android/pt-BR/changelogs/87.txt b/fastlane/metadata/android/pt-BR/changelogs/87.txt new file mode 100644 index 000000000..afe184983 --- /dev/null +++ b/fastlane/metadata/android/pt-BR/changelogs/87.txt @@ -0,0 +1,8 @@ +Tusky v16.0 + +- A lógica de carregamento da linha do tempo foi completamente reescrita para ser mais rápida, menos bugada e mais fácil de manter. +- Tusky pode agora animar emojis personalizados no formato APNG & WebP Animated. +- Muitas correções de bugs +- Suporte para Android 11 +- Novas traduções: gaélico escocês, galego, ucraniano +- Traduções melhoradas