From e41722e16f9e170f19facea4e001298a98e6f390 Mon Sep 17 00:00:00 2001 From: Nik Clayton Date: Sat, 16 Mar 2024 18:42:11 +0100 Subject: [PATCH] refactor: Extract user list functionality to `feature:lists` (#537) Move `ListsActivity`, along with fragments and viewmodels, to a new `feature:lists` module. Previous code used the `item_follow_request` layout, which was not ideal, so update it to use a dedicated layout, `item_account_in_list`. The UI uses strings and views originally defined in the main app, so move them elsewhere so they can be re-used. - `BackgroundMessageView` moves to `core.ui`. - `Lazy` moves to `core.common`. - `ThrowableExtensions` split; the extensions specific to throwables from network activity move to `core.network`, others move to `core.ui`. - `BindingHolder` moves to `core.ui` - Shared drawables and strings move to `core.ui`. --- app/build.gradle.kts | 1 + app/lint-baseline.xml | 484 ++++++------------ app/src/main/AndroidManifest.xml | 2 +- .../java/app/pachli/EditProfileActivity.kt | 6 +- app/src/main/java/app/pachli/MainActivity.kt | 10 +- .../java/app/pachli/StatusListActivity.kt | 2 +- .../java/app/pachli/TabPreferenceActivity.kt | 2 +- app/src/main/java/app/pachli/TabViewData.kt | 2 +- .../main/java/app/pachli/ViewMediaActivity.kt | 2 +- .../pachli/adapter/AccountFieldEditAdapter.kt | 2 +- .../java/app/pachli/adapter/EmojiAdapter.kt | 2 +- .../java/app/pachli/adapter/PollAdapter.kt | 2 +- .../java/app/pachli/adapter/TabAdapter.kt | 2 +- .../components/account/AccountActivity.kt | 12 +- .../components/account/AccountFieldAdapter.kt | 2 +- .../account/media/AccountMediaFragment.kt | 2 +- .../account/media/AccountMediaGridAdapter.kt | 2 +- .../accountlist/AccountListFragment.kt | 4 +- .../accountlist/adapter/AccountAdapter.kt | 2 +- .../accountlist/adapter/BlocksAdapter.kt | 2 +- .../adapter/FollowRequestsHeaderAdapter.kt | 2 +- .../accountlist/adapter/MutesAdapter.kt | 2 +- .../announcements/AnnouncementAdapter.kt | 2 +- .../announcements/AnnouncementsActivity.kt | 6 +- .../components/compose/ComposeActivity.kt | 4 +- .../components/compose/MediaUploader.kt | 2 +- .../compose/dialog/AddPollOptionsAdapter.kt | 2 +- .../ConversationLoadStateAdapter.kt | 2 +- .../conversation/ConversationsFragment.kt | 4 +- .../components/drafts/DraftsActivity.kt | 2 +- .../pachli/components/drafts/DraftsAdapter.kt | 2 +- .../components/filters/FilterExtensions.kt | 2 +- .../components/filters/FiltersActivity.kt | 8 +- .../components/filters/FiltersAdapter.kt | 2 +- .../followedtags/FollowedTagsAdapter.kt | 2 +- .../adapter/DomainMutesAdapter.kt | 2 +- .../fragment/InstanceListFragment.kt | 4 +- .../notifications/NotificationsActivity.kt | 2 +- .../notifications/NotificationsFragment.kt | 6 +- .../preference/AccountPreferencesFragment.kt | 4 +- .../preference/PreferencesFragment.kt | 2 +- .../components/report/ReportActivity.kt | 2 +- .../report/fragments/ReportNoteFragment.kt | 4 +- .../fragments/ReportStatusesFragment.kt | 2 +- .../scheduled/ScheduledStatusActivity.kt | 2 +- .../scheduled/ScheduledStatusAdapter.kt | 2 +- .../components/search/SearchActivity.kt | 2 +- .../search/adapter/SearchHashtagsAdapter.kt | 2 +- .../search/fragments/SearchFragment.kt | 2 +- .../fragments/SearchStatusesFragment.kt | 2 +- .../components/timeline/TimelineFragment.kt | 12 +- .../components/trending/TrendingActivity.kt | 2 +- .../trending/TrendingLinksFragment.kt | 4 +- .../trending/TrendingTagsFragment.kt | 12 +- .../viewthread/ViewThreadFragment.kt | 4 +- .../viewthread/edits/ViewEditsAdapter.kt | 2 +- .../viewthread/edits/ViewEditsFragment.kt | 2 +- .../java/app/pachli/fragment/SFragment.kt | 6 +- .../app/pachli/fragment/ViewVideoFragment.kt | 2 +- .../receiver/SendStatusBroadcastReceiver.kt | 2 +- .../app/pachli/service/SendStatusService.kt | 2 +- .../app/pachli/updatecheck/UpdateCheck.kt | 2 +- .../java/app/pachli/usecase/TimelineCases.kt | 2 +- .../util/ListStatusAccessibilityDelegate.kt | 4 +- .../main/java/app/pachli/util/SpanUtils.kt | 31 -- .../app/pachli/util/ThrowableExtensions.kt | 49 -- .../app/pachli/view/BackgroundMessageView.kt | 76 --- .../pachli/viewmodel/EditProfileViewModel.kt | 2 +- .../res/layout-sw640dp/fragment_timeline.xml | 2 +- .../fragment_timeline_notifications.xml | 2 +- .../layout-sw640dp/fragment_view_thread.xml | 2 +- .../res/layout/activity_announcements.xml | 2 +- app/src/main/res/layout/activity_drafts.xml | 2 +- app/src/main/res/layout/activity_filters.xml | 2 +- .../res/layout/activity_followed_tags.xml | 2 +- .../res/layout/activity_scheduled_status.xml | 2 +- .../main/res/layout/fragment_account_list.xml | 2 +- .../res/layout/fragment_instance_list.xml | 2 +- app/src/main/res/layout/fragment_timeline.xml | 2 +- .../fragment_timeline_notifications.xml | 2 +- .../res/layout/fragment_trending_links.xml | 2 +- .../res/layout/fragment_trending_tags.xml | 2 +- .../main/res/layout/fragment_view_edits.xml | 6 +- .../main/res/layout/fragment_view_thread.xml | 2 +- app/src/main/res/menu/list_actions.xml | 13 - app/src/main/res/values-ar/strings.xml | 28 - app/src/main/res/values-be/strings.xml | 24 - app/src/main/res/values-ber/strings.xml | 3 - app/src/main/res/values-bg/strings.xml | 19 - app/src/main/res/values-bn-rBD/strings.xml | 18 - app/src/main/res/values-bn-rIN/strings.xml | 18 - app/src/main/res/values-ca/strings.xml | 24 - app/src/main/res/values-ckb/strings.xml | 18 - app/src/main/res/values-cs/strings.xml | 19 - app/src/main/res/values-cy/strings.xml | 25 - app/src/main/res/values-de/strings.xml | 28 - app/src/main/res/values-el/strings.xml | 5 - app/src/main/res/values-en-rGB/strings.xml | 4 - app/src/main/res/values-eo/strings.xml | 19 - app/src/main/res/values-es/strings.xml | 30 +- app/src/main/res/values-eu/strings.xml | 19 - app/src/main/res/values-fa/strings.xml | 25 - app/src/main/res/values-fi/strings.xml | 28 - app/src/main/res/values-fr/strings.xml | 28 - app/src/main/res/values-fy/strings.xml | 15 - app/src/main/res/values-ga/strings.xml | 18 - app/src/main/res/values-gd/strings.xml | 25 - app/src/main/res/values-gl/strings.xml | 25 - app/src/main/res/values-hi/strings.xml | 17 - app/src/main/res/values-hu/strings.xml | 24 - app/src/main/res/values-in/strings.xml | 16 - app/src/main/res/values-is/strings.xml | 24 - app/src/main/res/values-it/strings.xml | 28 - app/src/main/res/values-ja/strings.xml | 28 - app/src/main/res/values-kab/strings.xml | 13 - app/src/main/res/values-ko/strings.xml | 18 - app/src/main/res/values-lv/strings.xml | 24 - app/src/main/res/values-ml/strings.xml | 7 - app/src/main/res/values-nb-rNO/strings.xml | 24 - app/src/main/res/values-nl/strings.xml | 28 - app/src/main/res/values-oc/strings.xml | 24 - app/src/main/res/values-or/strings.xml | 4 +- app/src/main/res/values-pl/strings.xml | 24 - app/src/main/res/values-pt-rBR/strings.xml | 28 - app/src/main/res/values-pt-rPT/strings.xml | 19 - app/src/main/res/values-ru/strings.xml | 19 - app/src/main/res/values-sa/strings.xml | 18 - app/src/main/res/values-si/strings.xml | 4 - app/src/main/res/values-sk/strings.xml | 3 - app/src/main/res/values-sl/strings.xml | 18 - app/src/main/res/values-sv/strings.xml | 28 - app/src/main/res/values-ta/strings.xml | 6 - app/src/main/res/values-th/strings.xml | 19 - app/src/main/res/values-tr/strings.xml | 25 - app/src/main/res/values-uk/strings.xml | 25 - app/src/main/res/values-vi/strings.xml | 25 - app/src/main/res/values-zh-rCN/strings.xml | 25 - app/src/main/res/values-zh-rHK/strings.xml | 19 - app/src/main/res/values-zh-rMO/strings.xml | 17 - app/src/main/res/values-zh-rSG/strings.xml | 17 - app/src/main/res/values-zh-rTW/strings.xml | 19 - app/src/main/res/values/strings.xml | 32 -- .../app/pachli/core/common}/util/Lazy.kt | 2 +- core/designsystem/lint-baseline.xml | 6 +- .../src/main/res/values/colors.xml | 9 - .../network/extensions/ThrowableExtensions.kt | 43 ++ core/ui/build.gradle.kts | 8 + core/ui/lint-baseline.xml | 200 +++++++- .../pachli/core/ui/BackgroundMessageView.kt | 123 +++++ .../app/pachli/core/ui}/BindingHolder.kt | 2 +- .../{ => extensions}/AlertDialogExtensions.kt | 2 +- .../core/ui/extensions/ThrowableExtensions.kt | 44 ++ .../{ => extensions}/ViewPager2Extensions.kt | 2 +- .../res/drawable/elephant_friend_empty.xml | 0 .../main/res/drawable/errorphant_error.xml | 0 .../main/res/drawable/errorphant_offline.xml | 0 .../src/main/res/drawable/ic_check_24dp.xml | 0 .../src/main/res/drawable/ic_clear_24dp.xml | 0 .../src/main/res/drawable/ic_close_24dp.xml | 0 .../ui}/src/main/res/drawable/ic_list.xml | 0 .../main/res/drawable/ic_more_horiz_24dp.xml | 0 .../main/res/drawable/ic_person_add_24dp.xml | 0 .../src/main/res/drawable/ic_plus_24dp.xml | 0 .../res/layout/view_background_message.xml | 0 core/ui/src/main/res/values-ar/strings.xml | 14 + core/ui/src/main/res/values-be/strings.xml | 11 + core/ui/src/main/res/values-ber/strings.xml | 5 + core/ui/src/main/res/values-bg/strings.xml | 10 + .../ui/src/main/res/values-bn-rBD/strings.xml | 10 + .../ui/src/main/res/values-bn-rIN/strings.xml | 10 + core/ui/src/main/res/values-ca/strings.xml | 11 + core/ui/src/main/res/values-ckb/strings.xml | 10 + core/ui/src/main/res/values-cs/strings.xml | 10 + core/ui/src/main/res/values-cy/strings.xml | 11 + core/ui/src/main/res/values-de/strings.xml | 14 + core/ui/src/main/res/values-el/strings.xml | 8 + .../ui/src/main/res/values-en-rGB/strings.xml | 7 + core/ui/src/main/res/values-eo/strings.xml | 10 + core/ui/src/main/res/values-es/strings.xml | 14 + core/ui/src/main/res/values-eu/strings.xml | 10 + core/ui/src/main/res/values-fa/strings.xml | 11 + core/ui/src/main/res/values-fi/strings.xml | 14 + core/ui/src/main/res/values-fr/strings.xml | 14 + core/ui/src/main/res/values-fy/strings.xml | 9 + core/ui/src/main/res/values-ga/strings.xml | 10 + core/ui/src/main/res/values-gd/strings.xml | 11 + core/ui/src/main/res/values-gl/strings.xml | 11 + core/ui/src/main/res/values-hi/strings.xml | 9 + core/ui/src/main/res/values-hu/strings.xml | 11 + core/ui/src/main/res/values-in/strings.xml | 12 + core/ui/src/main/res/values-is/strings.xml | 11 + core/ui/src/main/res/values-it/strings.xml | 14 + core/ui/src/main/res/values-ja/strings.xml | 14 + core/ui/src/main/res/values-kab/strings.xml | 8 + core/ui/src/main/res/values-ko/strings.xml | 10 + core/ui/src/main/res/values-lv/strings.xml | 11 + core/ui/src/main/res/values-ml/strings.xml | 9 + .../ui/src/main/res/values-nb-rNO/strings.xml | 11 + core/ui/src/main/res/values-nl/strings.xml | 14 + core/ui/src/main/res/values-oc/strings.xml | 11 + core/ui/src/main/res/values-or/strings.xml | 5 + core/ui/src/main/res/values-pl/strings.xml | 11 + .../ui/src/main/res/values-pt-rBR/strings.xml | 14 + .../ui/src/main/res/values-pt-rPT/strings.xml | 10 + core/ui/src/main/res/values-ru/strings.xml | 10 + core/ui/src/main/res/values-sa/strings.xml | 10 + core/ui/src/main/res/values-si/strings.xml | 7 + core/ui/src/main/res/values-sk/strings.xml | 5 + core/ui/src/main/res/values-sl/strings.xml | 10 + core/ui/src/main/res/values-sv/strings.xml | 14 + core/ui/src/main/res/values-ta/strings.xml | 8 + core/ui/src/main/res/values-th/strings.xml | 10 + core/ui/src/main/res/values-tr/strings.xml | 11 + core/ui/src/main/res/values-uk/strings.xml | 11 + core/ui/src/main/res/values-vi/strings.xml | 11 + .../ui/src/main/res/values-zh-rCN/strings.xml | 11 + .../ui/src/main/res/values-zh-rHK/strings.xml | 10 + .../ui/src/main/res/values-zh-rMO/strings.xml | 9 + .../ui/src/main/res/values-zh-rSG/strings.xml | 9 + .../ui/src/main/res/values-zh-rTW/strings.xml | 10 + core/ui/src/main/res/values/colors.xml | 27 + core/ui/src/main/res/values/strings.xml | 14 + .../app/pachli/feature/about/AboutActivity.kt | 2 +- .../feature/about/NotificationFragment.kt | 2 +- .../feature/about/NotificationLogFragment.kt | 2 +- feature/lists/build.gradle.kts | 32 ++ feature/lists/lint-baseline.xml | 48 ++ feature/lists/src/main/AndroidManifest.xml | 4 + .../feature/lists}/AccountsInListFragment.kt | 49 +- .../feature/lists}/AccountsInListViewModel.kt | 2 +- .../pachli/feature/lists}/ListsActivity.kt | 22 +- .../feature/lists}/ListsForAccountFragment.kt | 22 +- .../lists}/ListsForAccountViewModel.kt | 2 +- .../pachli/feature/lists}/ListsViewModel.kt | 2 +- .../src/main/res/layout/activity_lists.xml | 19 +- .../src/main/res/layout/dialog_list.xml | 0 .../res/layout/fragment_accounts_in_list.xml | 19 +- .../res/layout/fragment_lists_for_account.xml | 19 +- .../main/res/layout/item_account_in_list.xml | 105 ++++ .../layout/item_add_or_remove_from_list.xml | 0 .../lists}/src/main/res/layout/item_list.xml | 0 .../src/main/res/menu/activity_lists.xml | 0 .../lists/src/main/res/menu/list_actions.xml | 29 ++ .../lists/src/main/res/values-ar/strings.xml | 20 + .../lists/src/main/res/values-be/strings.xml | 19 + .../lists/src/main/res/values-ber/strings.xml | 4 + .../lists/src/main/res/values-bg/strings.xml | 15 + .../src/main/res/values-bn-rBD/strings.xml | 14 + .../src/main/res/values-bn-rIN/strings.xml | 14 + .../lists/src/main/res/values-ca/strings.xml | 19 + .../lists/src/main/res/values-ckb/strings.xml | 14 + .../lists/src/main/res/values-cs/strings.xml | 15 + .../lists/src/main/res/values-cy/strings.xml | 20 + .../lists/src/main/res/values-de/strings.xml | 20 + .../lists/src/main/res/values-eo/strings.xml | 15 + .../lists/src/main/res/values-es/strings.xml | 20 + .../lists/src/main/res/values-eu/strings.xml | 15 + .../lists/src/main/res/values-fa/strings.xml | 20 + .../lists/src/main/res/values-fi/strings.xml | 20 + .../lists/src/main/res/values-fr/strings.xml | 20 + .../lists/src/main/res/values-fy/strings.xml | 12 + .../lists/src/main/res/values-ga/strings.xml | 14 + .../lists/src/main/res/values-gd/strings.xml | 20 + .../lists/src/main/res/values-gl/strings.xml | 20 + .../lists/src/main/res/values-hi/strings.xml | 14 + .../lists/src/main/res/values-hu/strings.xml | 19 + .../lists/src/main/res/values-in/strings.xml | 10 + .../lists/src/main/res/values-is/strings.xml | 19 + .../lists/src/main/res/values-it/strings.xml | 20 + .../lists/src/main/res/values-ja/strings.xml | 20 + .../lists/src/main/res/values-kab/strings.xml | 11 + .../lists/src/main/res/values-ko/strings.xml | 14 + .../lists/src/main/res/values-lv/strings.xml | 19 + .../lists/src/main/res/values-ml/strings.xml | 4 + .../src/main/res/values-nb-rNO/strings.xml | 19 + .../lists/src/main/res/values-nl/strings.xml | 20 + .../lists/src/main/res/values-oc/strings.xml | 19 + .../lists/src/main/res/values-pl/strings.xml | 19 + .../src/main/res/values-pt-rBR/strings.xml | 20 + .../src/main/res/values-pt-rPT/strings.xml | 15 + .../lists/src/main/res/values-ru/strings.xml | 15 + .../lists/src/main/res/values-sa/strings.xml | 14 + .../lists/src/main/res/values-sk/strings.xml | 4 + .../lists/src/main/res/values-sl/strings.xml | 14 + .../lists/src/main/res/values-sv/strings.xml | 20 + .../lists/src/main/res/values-ta/strings.xml | 4 + .../lists/src/main/res/values-th/strings.xml | 15 + .../lists/src/main/res/values-tr/strings.xml | 20 + .../lists/src/main/res/values-uk/strings.xml | 20 + .../lists/src/main/res/values-vi/strings.xml | 20 + .../src/main/res/values-zh-rCN/strings.xml | 20 + .../src/main/res/values-zh-rHK/strings.xml | 15 + .../src/main/res/values-zh-rMO/strings.xml | 14 + .../src/main/res/values-zh-rSG/strings.xml | 14 + .../src/main/res/values-zh-rTW/strings.xml | 15 + feature/lists/src/main/res/values/strings.xml | 24 + gradle/libs.versions.toml | 2 + settings.gradle.kts | 1 + 298 files changed, 2500 insertions(+), 1839 deletions(-) delete mode 100644 app/src/main/java/app/pachli/util/ThrowableExtensions.kt delete mode 100644 app/src/main/java/app/pachli/view/BackgroundMessageView.kt delete mode 100644 app/src/main/res/menu/list_actions.xml rename {app/src/main/java/app/pachli => core/common/src/main/kotlin/app/pachli/core/common}/util/Lazy.kt (81%) create mode 100644 core/network/src/main/kotlin/app/pachli/core/network/extensions/ThrowableExtensions.kt create mode 100644 core/ui/src/main/kotlin/app/pachli/core/ui/BackgroundMessageView.kt rename {app/src/main/java/app/pachli/util => core/ui/src/main/kotlin/app/pachli/core/ui}/BindingHolder.kt (87%) rename core/ui/src/main/kotlin/app/pachli/core/ui/{ => extensions}/AlertDialogExtensions.kt (98%) create mode 100644 core/ui/src/main/kotlin/app/pachli/core/ui/extensions/ThrowableExtensions.kt rename core/ui/src/main/kotlin/app/pachli/core/ui/{ => extensions}/ViewPager2Extensions.kt (98%) rename {app => core/ui}/src/main/res/drawable/elephant_friend_empty.xml (100%) rename {app => core/ui}/src/main/res/drawable/errorphant_error.xml (100%) rename {app => core/ui}/src/main/res/drawable/errorphant_offline.xml (100%) rename {app => core/ui}/src/main/res/drawable/ic_check_24dp.xml (100%) rename {app => core/ui}/src/main/res/drawable/ic_clear_24dp.xml (100%) rename {app => core/ui}/src/main/res/drawable/ic_close_24dp.xml (100%) rename {app => core/ui}/src/main/res/drawable/ic_list.xml (100%) rename {app => core/ui}/src/main/res/drawable/ic_more_horiz_24dp.xml (100%) rename {app => core/ui}/src/main/res/drawable/ic_person_add_24dp.xml (100%) rename {app => core/ui}/src/main/res/drawable/ic_plus_24dp.xml (100%) rename {app => core/ui}/src/main/res/layout/view_background_message.xml (100%) create mode 100644 core/ui/src/main/res/values-ar/strings.xml create mode 100644 core/ui/src/main/res/values-be/strings.xml create mode 100644 core/ui/src/main/res/values-ber/strings.xml create mode 100644 core/ui/src/main/res/values-bg/strings.xml create mode 100644 core/ui/src/main/res/values-bn-rBD/strings.xml create mode 100644 core/ui/src/main/res/values-bn-rIN/strings.xml create mode 100644 core/ui/src/main/res/values-ca/strings.xml create mode 100644 core/ui/src/main/res/values-ckb/strings.xml create mode 100644 core/ui/src/main/res/values-cs/strings.xml create mode 100644 core/ui/src/main/res/values-cy/strings.xml create mode 100644 core/ui/src/main/res/values-de/strings.xml create mode 100644 core/ui/src/main/res/values-el/strings.xml create mode 100644 core/ui/src/main/res/values-en-rGB/strings.xml create mode 100644 core/ui/src/main/res/values-eo/strings.xml create mode 100644 core/ui/src/main/res/values-es/strings.xml create mode 100644 core/ui/src/main/res/values-eu/strings.xml create mode 100644 core/ui/src/main/res/values-fa/strings.xml create mode 100644 core/ui/src/main/res/values-fi/strings.xml create mode 100644 core/ui/src/main/res/values-fr/strings.xml create mode 100644 core/ui/src/main/res/values-fy/strings.xml create mode 100644 core/ui/src/main/res/values-ga/strings.xml create mode 100644 core/ui/src/main/res/values-gd/strings.xml create mode 100644 core/ui/src/main/res/values-gl/strings.xml create mode 100644 core/ui/src/main/res/values-hi/strings.xml create mode 100644 core/ui/src/main/res/values-hu/strings.xml create mode 100644 core/ui/src/main/res/values-in/strings.xml create mode 100644 core/ui/src/main/res/values-is/strings.xml create mode 100644 core/ui/src/main/res/values-it/strings.xml create mode 100644 core/ui/src/main/res/values-ja/strings.xml create mode 100644 core/ui/src/main/res/values-kab/strings.xml create mode 100644 core/ui/src/main/res/values-ko/strings.xml create mode 100644 core/ui/src/main/res/values-lv/strings.xml create mode 100644 core/ui/src/main/res/values-ml/strings.xml create mode 100644 core/ui/src/main/res/values-nb-rNO/strings.xml create mode 100644 core/ui/src/main/res/values-nl/strings.xml create mode 100644 core/ui/src/main/res/values-oc/strings.xml create mode 100644 core/ui/src/main/res/values-or/strings.xml create mode 100644 core/ui/src/main/res/values-pl/strings.xml create mode 100644 core/ui/src/main/res/values-pt-rBR/strings.xml create mode 100644 core/ui/src/main/res/values-pt-rPT/strings.xml create mode 100644 core/ui/src/main/res/values-ru/strings.xml create mode 100644 core/ui/src/main/res/values-sa/strings.xml create mode 100644 core/ui/src/main/res/values-si/strings.xml create mode 100644 core/ui/src/main/res/values-sk/strings.xml create mode 100644 core/ui/src/main/res/values-sl/strings.xml create mode 100644 core/ui/src/main/res/values-sv/strings.xml create mode 100644 core/ui/src/main/res/values-ta/strings.xml create mode 100644 core/ui/src/main/res/values-th/strings.xml create mode 100644 core/ui/src/main/res/values-tr/strings.xml create mode 100644 core/ui/src/main/res/values-uk/strings.xml create mode 100644 core/ui/src/main/res/values-vi/strings.xml create mode 100644 core/ui/src/main/res/values-zh-rCN/strings.xml create mode 100644 core/ui/src/main/res/values-zh-rHK/strings.xml create mode 100644 core/ui/src/main/res/values-zh-rMO/strings.xml create mode 100644 core/ui/src/main/res/values-zh-rSG/strings.xml create mode 100644 core/ui/src/main/res/values-zh-rTW/strings.xml create mode 100644 core/ui/src/main/res/values/colors.xml create mode 100644 core/ui/src/main/res/values/strings.xml create mode 100644 feature/lists/build.gradle.kts create mode 100644 feature/lists/lint-baseline.xml create mode 100644 feature/lists/src/main/AndroidManifest.xml rename {app/src/main/java/app/pachli => feature/lists/src/main/kotlin/app/pachli/feature/lists}/AccountsInListFragment.kt (90%) rename {app/src/main/java/app/pachli/viewmodel => feature/lists/src/main/kotlin/app/pachli/feature/lists}/AccountsInListViewModel.kt (99%) rename {app/src/main/java/app/pachli => feature/lists/src/main/kotlin/app/pachli/feature/lists}/ListsActivity.kt (94%) rename {app/src/main/java/app/pachli/components/account/list => feature/lists/src/main/kotlin/app/pachli/feature/lists}/ListsForAccountFragment.kt (91%) rename {app/src/main/java/app/pachli/components/account/list => feature/lists/src/main/kotlin/app/pachli/feature/lists}/ListsForAccountViewModel.kt (99%) rename {app/src/main/java/app/pachli/viewmodel => feature/lists/src/main/kotlin/app/pachli/feature/lists}/ListsViewModel.kt (99%) rename {app => feature/lists}/src/main/res/layout/activity_lists.xml (77%) rename {app => feature/lists}/src/main/res/layout/dialog_list.xml (100%) rename {app => feature/lists}/src/main/res/layout/fragment_accounts_in_list.xml (75%) rename {app => feature/lists}/src/main/res/layout/fragment_lists_for_account.xml (73%) create mode 100644 feature/lists/src/main/res/layout/item_account_in_list.xml rename {app => feature/lists}/src/main/res/layout/item_add_or_remove_from_list.xml (100%) rename {app => feature/lists}/src/main/res/layout/item_list.xml (100%) rename {app => feature/lists}/src/main/res/menu/activity_lists.xml (100%) create mode 100644 feature/lists/src/main/res/menu/list_actions.xml create mode 100644 feature/lists/src/main/res/values-ar/strings.xml create mode 100644 feature/lists/src/main/res/values-be/strings.xml create mode 100644 feature/lists/src/main/res/values-ber/strings.xml create mode 100644 feature/lists/src/main/res/values-bg/strings.xml create mode 100644 feature/lists/src/main/res/values-bn-rBD/strings.xml create mode 100644 feature/lists/src/main/res/values-bn-rIN/strings.xml create mode 100644 feature/lists/src/main/res/values-ca/strings.xml create mode 100644 feature/lists/src/main/res/values-ckb/strings.xml create mode 100644 feature/lists/src/main/res/values-cs/strings.xml create mode 100644 feature/lists/src/main/res/values-cy/strings.xml create mode 100644 feature/lists/src/main/res/values-de/strings.xml create mode 100644 feature/lists/src/main/res/values-eo/strings.xml create mode 100644 feature/lists/src/main/res/values-es/strings.xml create mode 100644 feature/lists/src/main/res/values-eu/strings.xml create mode 100644 feature/lists/src/main/res/values-fa/strings.xml create mode 100644 feature/lists/src/main/res/values-fi/strings.xml create mode 100644 feature/lists/src/main/res/values-fr/strings.xml create mode 100644 feature/lists/src/main/res/values-fy/strings.xml create mode 100644 feature/lists/src/main/res/values-ga/strings.xml create mode 100644 feature/lists/src/main/res/values-gd/strings.xml create mode 100644 feature/lists/src/main/res/values-gl/strings.xml create mode 100644 feature/lists/src/main/res/values-hi/strings.xml create mode 100644 feature/lists/src/main/res/values-hu/strings.xml create mode 100644 feature/lists/src/main/res/values-in/strings.xml create mode 100644 feature/lists/src/main/res/values-is/strings.xml create mode 100644 feature/lists/src/main/res/values-it/strings.xml create mode 100644 feature/lists/src/main/res/values-ja/strings.xml create mode 100644 feature/lists/src/main/res/values-kab/strings.xml create mode 100644 feature/lists/src/main/res/values-ko/strings.xml create mode 100644 feature/lists/src/main/res/values-lv/strings.xml create mode 100644 feature/lists/src/main/res/values-ml/strings.xml create mode 100644 feature/lists/src/main/res/values-nb-rNO/strings.xml create mode 100644 feature/lists/src/main/res/values-nl/strings.xml create mode 100644 feature/lists/src/main/res/values-oc/strings.xml create mode 100644 feature/lists/src/main/res/values-pl/strings.xml create mode 100644 feature/lists/src/main/res/values-pt-rBR/strings.xml create mode 100644 feature/lists/src/main/res/values-pt-rPT/strings.xml create mode 100644 feature/lists/src/main/res/values-ru/strings.xml create mode 100644 feature/lists/src/main/res/values-sa/strings.xml create mode 100644 feature/lists/src/main/res/values-sk/strings.xml create mode 100644 feature/lists/src/main/res/values-sl/strings.xml create mode 100644 feature/lists/src/main/res/values-sv/strings.xml create mode 100644 feature/lists/src/main/res/values-ta/strings.xml create mode 100644 feature/lists/src/main/res/values-th/strings.xml create mode 100644 feature/lists/src/main/res/values-tr/strings.xml create mode 100644 feature/lists/src/main/res/values-uk/strings.xml create mode 100644 feature/lists/src/main/res/values-vi/strings.xml create mode 100644 feature/lists/src/main/res/values-zh-rCN/strings.xml create mode 100644 feature/lists/src/main/res/values-zh-rHK/strings.xml create mode 100644 feature/lists/src/main/res/values-zh-rMO/strings.xml create mode 100644 feature/lists/src/main/res/values-zh-rSG/strings.xml create mode 100644 feature/lists/src/main/res/values-zh-rTW/strings.xml create mode 100644 feature/lists/src/main/res/values/strings.xml diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 7394f34da..5c9a1bb5e 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -133,6 +133,7 @@ dependencies { implementation(projects.core.ui) implementation(projects.feature.about) + implementation(projects.feature.lists) implementation(projects.feature.login) implementation(libs.kotlinx.coroutines.android) diff --git a/app/lint-baseline.xml b/app/lint-baseline.xml index 49a7d9557..dc2ef2667 100644 --- a/app/lint-baseline.xml +++ b/app/lint-baseline.xml @@ -91,7 +91,7 @@ errorLine2=" ^"> @@ -102,7 +102,7 @@ errorLine2=" ^"> @@ -113,18 +113,7 @@ errorLine2=" ^"> - - - - @@ -135,7 +124,18 @@ errorLine2=" ^"> + + + + @@ -146,7 +146,7 @@ errorLine2=" ^"> @@ -157,7 +157,7 @@ errorLine2=" ^"> @@ -168,7 +168,7 @@ errorLine2=" ^"> @@ -179,7 +179,7 @@ errorLine2=" ^"> @@ -190,7 +190,7 @@ errorLine2=" ^"> @@ -201,7 +201,7 @@ errorLine2=" ^"> @@ -212,7 +212,7 @@ errorLine2=" ^"> @@ -223,18 +223,7 @@ errorLine2=" ^"> - - - - @@ -245,7 +234,18 @@ errorLine2=" ^"> + + + + @@ -256,7 +256,7 @@ errorLine2=" ^"> @@ -267,7 +267,7 @@ errorLine2=" ^"> @@ -278,7 +278,7 @@ errorLine2=" ^"> @@ -289,7 +289,7 @@ errorLine2=" ^"> @@ -300,7 +300,7 @@ errorLine2=" ^"> @@ -311,7 +311,7 @@ errorLine2=" ^"> @@ -322,7 +322,7 @@ errorLine2=" ^"> @@ -333,7 +333,7 @@ errorLine2=" ^"> @@ -344,7 +344,7 @@ errorLine2=" ^"> @@ -355,7 +355,7 @@ errorLine2=" ^"> @@ -366,7 +366,7 @@ errorLine2=" ^"> @@ -377,7 +377,7 @@ errorLine2=" ^"> @@ -388,7 +388,7 @@ errorLine2=" ^"> @@ -399,7 +399,7 @@ errorLine2=" ^"> @@ -410,7 +410,7 @@ errorLine2=" ^"> @@ -421,7 +421,7 @@ errorLine2=" ^"> @@ -432,7 +432,7 @@ errorLine2=" ^"> @@ -443,7 +443,7 @@ errorLine2=" ^"> @@ -454,7 +454,7 @@ errorLine2=" ^"> @@ -465,7 +465,7 @@ errorLine2=" ^"> @@ -476,7 +476,7 @@ errorLine2=" ^"> @@ -487,7 +487,7 @@ errorLine2=" ^"> @@ -498,7 +498,7 @@ errorLine2=" ^"> @@ -509,7 +509,7 @@ errorLine2=" ^"> @@ -520,7 +520,7 @@ errorLine2=" ^"> @@ -531,7 +531,7 @@ errorLine2=" ^"> @@ -542,7 +542,7 @@ errorLine2=" ^"> @@ -553,7 +553,7 @@ errorLine2=" ^"> @@ -564,7 +564,7 @@ errorLine2=" ^"> @@ -575,7 +575,7 @@ errorLine2=" ^"> @@ -586,7 +586,7 @@ errorLine2=" ^"> @@ -597,7 +597,7 @@ errorLine2=" ^"> @@ -608,7 +608,7 @@ errorLine2=" ^"> @@ -619,7 +619,7 @@ errorLine2=" ^"> @@ -630,7 +630,7 @@ errorLine2=" ^"> @@ -641,7 +641,7 @@ errorLine2=" ^"> @@ -652,7 +652,7 @@ errorLine2=" ^"> @@ -663,7 +663,7 @@ errorLine2=" ^"> @@ -674,7 +674,7 @@ errorLine2=" ^"> @@ -685,7 +685,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -696,7 +696,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -707,7 +707,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -718,7 +718,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -729,7 +729,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -740,7 +740,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -751,7 +751,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -949,7 +949,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -960,7 +960,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -1030,204 +1030,6 @@ column="25"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + @@ -1433,7 +1257,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1444,7 +1268,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1455,7 +1279,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1466,7 +1290,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~"> @@ -1477,7 +1301,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1488,7 +1312,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1499,7 +1323,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1510,7 +1334,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1521,7 +1345,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1532,7 +1356,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1543,7 +1367,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1554,7 +1378,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1565,7 +1389,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1576,7 +1400,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1587,7 +1411,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -1598,7 +1422,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1609,7 +1433,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1620,7 +1444,7 @@ errorLine2=" ~~~~~~~~~~~~"> @@ -1631,7 +1455,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -1642,7 +1466,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -1653,7 +1477,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1664,7 +1488,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1675,7 +1499,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~"> @@ -1686,7 +1510,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1697,7 +1521,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1708,7 +1532,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1719,7 +1543,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1730,7 +1554,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1741,7 +1565,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1752,7 +1576,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1763,7 +1587,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1774,7 +1598,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1785,7 +1609,7 @@ errorLine2=" ~~~~~"> @@ -1796,7 +1620,7 @@ errorLine2=" ~~~~~~~~"> @@ -1807,7 +1631,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -2005,17 +1829,6 @@ column="6"/> - - - - - - - - @@ -2837,7 +2639,7 @@ errorLine2=" ^"> diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 196362e85..ec73040cb 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -144,7 +144,7 @@ android:name="android.app.searchable" android:resource="@xml/searchable" /> - + diff --git a/app/src/main/java/app/pachli/EditProfileActivity.kt b/app/src/main/java/app/pachli/EditProfileActivity.kt index 796ca2f95..9a238d621 100644 --- a/app/src/main/java/app/pachli/EditProfileActivity.kt +++ b/app/src/main/java/app/pachli/EditProfileActivity.kt @@ -39,7 +39,7 @@ import app.pachli.core.common.extensions.show import app.pachli.core.common.extensions.viewBinding import app.pachli.core.data.repository.InstanceInfoRepository import app.pachli.core.designsystem.R as DR -import app.pachli.core.ui.await +import app.pachli.core.ui.extensions.await import app.pachli.databinding.ActivityEditProfileBinding import app.pachli.util.Error import app.pachli.util.Loading @@ -178,8 +178,8 @@ class EditProfileActivity : BaseActivity() { } } is Error -> { - Snackbar.make(binding.avatarButton, R.string.error_generic, Snackbar.LENGTH_LONG) - .setAction(R.string.action_retry) { + Snackbar.make(binding.avatarButton, app.pachli.core.ui.R.string.error_generic, Snackbar.LENGTH_LONG) + .setAction(app.pachli.core.ui.R.string.action_retry) { viewModel.obtainProfile() } .show() diff --git a/app/src/main/java/app/pachli/MainActivity.kt b/app/src/main/java/app/pachli/MainActivity.kt index a20c94a13..cbc8a1861 100644 --- a/app/src/main/java/app/pachli/MainActivity.kt +++ b/app/src/main/java/app/pachli/MainActivity.kt @@ -74,6 +74,7 @@ import app.pachli.core.common.di.ApplicationScope import app.pachli.core.common.extensions.hide import app.pachli.core.common.extensions.show import app.pachli.core.common.extensions.viewBinding +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.data.repository.Lists import app.pachli.core.data.repository.ListsRepository import app.pachli.core.data.repository.ListsRepository.Companion.compareByListTitle @@ -103,8 +104,8 @@ import app.pachli.core.navigation.TrendingActivityIntent import app.pachli.core.network.model.Account import app.pachli.core.network.model.Notification import app.pachli.core.preferences.PrefKeys -import app.pachli.core.ui.await -import app.pachli.core.ui.reduceSwipeSensitivity +import app.pachli.core.ui.extensions.await +import app.pachli.core.ui.extensions.reduceSwipeSensitivity import app.pachli.databinding.ActivityMainBinding import app.pachli.db.DraftsAlert import app.pachli.interfaces.ActionButtonActivity @@ -115,7 +116,6 @@ import app.pachli.updatecheck.UpdateCheck import app.pachli.usecase.DeveloperToolsUseCase import app.pachli.usecase.LogoutUsecase import app.pachli.util.getDimension -import app.pachli.util.unsafeLazy import app.pachli.util.updateShortcut import at.connyduck.calladapter.networkresult.fold import com.bumptech.glide.Glide @@ -376,7 +376,7 @@ class MainActivity : BottomSheetActivity(), ActionButtonActivity, MenuProvider { result.onFailure { Snackbar.make(binding.root, R.string.error_list_load, Snackbar.LENGTH_INDEFINITE) - .setAction(R.string.action_retry) { listsRepository.refresh() } + .setAction(app.pachli.core.ui.R.string.action_retry) { listsRepository.refresh() } .show() } } @@ -612,7 +612,7 @@ class MainActivity : BottomSheetActivity(), ActionButtonActivity, MenuProvider { } } }, - R.string.title_lists, + app.pachli.feature.lists.R.string.title_lists, ) } } ?: Pair(emptyList(), R.string.title_lists_failed) diff --git a/app/src/main/java/app/pachli/StatusListActivity.kt b/app/src/main/java/app/pachli/StatusListActivity.kt index 09639b9fe..f1f463a97 100644 --- a/app/src/main/java/app/pachli/StatusListActivity.kt +++ b/app/src/main/java/app/pachli/StatusListActivity.kt @@ -27,6 +27,7 @@ import app.pachli.appstore.FilterChangedEvent import app.pachli.components.timeline.TimelineFragment import app.pachli.core.activity.BottomSheetActivity import app.pachli.core.common.extensions.viewBinding +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.navigation.ComposeActivityIntent import app.pachli.core.navigation.ComposeActivityIntent.ComposeOptions import app.pachli.core.navigation.StatusListActivityIntent @@ -40,7 +41,6 @@ import app.pachli.databinding.ActivityStatuslistBinding import app.pachli.interfaces.ActionButtonActivity import app.pachli.interfaces.AppBarLayoutHost import app.pachli.network.ServerRepository -import app.pachli.util.unsafeLazy import at.connyduck.calladapter.networkresult.fold import com.github.michaelbull.result.getOrElse import com.google.android.material.appbar.AppBarLayout diff --git a/app/src/main/java/app/pachli/TabPreferenceActivity.kt b/app/src/main/java/app/pachli/TabPreferenceActivity.kt index c474b8bf4..5876192eb 100644 --- a/app/src/main/java/app/pachli/TabPreferenceActivity.kt +++ b/app/src/main/java/app/pachli/TabPreferenceActivity.kt @@ -42,6 +42,7 @@ import app.pachli.core.activity.BaseActivity import app.pachli.core.common.extensions.show import app.pachli.core.common.extensions.viewBinding import app.pachli.core.common.extensions.visible +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.data.repository.Lists import app.pachli.core.data.repository.ListsRepository import app.pachli.core.data.repository.ListsRepository.Companion.compareByListTitle @@ -52,7 +53,6 @@ import app.pachli.core.network.model.MastoList import app.pachli.core.network.retrofit.MastodonApi import app.pachli.databinding.ActivityTabPreferenceBinding import app.pachli.databinding.DialogSelectListBinding -import app.pachli.util.unsafeLazy import at.connyduck.sparkbutton.helpers.Utils import com.github.michaelbull.result.onFailure import com.github.michaelbull.result.onSuccess diff --git a/app/src/main/java/app/pachli/TabViewData.kt b/app/src/main/java/app/pachli/TabViewData.kt index 11b6c9d1e..2840cb24b 100644 --- a/app/src/main/java/app/pachli/TabViewData.kt +++ b/app/src/main/java/app/pachli/TabViewData.kt @@ -125,7 +125,7 @@ data class TabViewData( is TabData.UserList -> TabViewData( tabData = tabData, text = R.string.list, - icon = R.drawable.ic_list, + icon = app.pachli.core.ui.R.drawable.ic_list, fragment = { TimelineFragment.newInstance( TimelineKind.UserList(tabData.listId, tabData.title), diff --git a/app/src/main/java/app/pachli/ViewMediaActivity.kt b/app/src/main/java/app/pachli/ViewMediaActivity.kt index c9bb69646..157f57961 100644 --- a/app/src/main/java/app/pachli/ViewMediaActivity.kt +++ b/app/src/main/java/app/pachli/ViewMediaActivity.kt @@ -238,7 +238,7 @@ class ViewMediaActivity : BaseActivity(), MediaActionsListener { if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) { downloadMedia() } else { - showErrorDialog(binding.toolbar, R.string.error_media_download_permission, R.string.action_retry) { + showErrorDialog(binding.toolbar, R.string.error_media_download_permission, app.pachli.core.ui.R.string.action_retry) { requestDownloadMedia() } } diff --git a/app/src/main/java/app/pachli/adapter/AccountFieldEditAdapter.kt b/app/src/main/java/app/pachli/adapter/AccountFieldEditAdapter.kt index e0ecb589b..4ff826831 100644 --- a/app/src/main/java/app/pachli/adapter/AccountFieldEditAdapter.kt +++ b/app/src/main/java/app/pachli/adapter/AccountFieldEditAdapter.kt @@ -21,8 +21,8 @@ import android.view.ViewGroup import androidx.core.widget.doAfterTextChanged import androidx.recyclerview.widget.RecyclerView import app.pachli.core.network.model.StringField +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemEditFieldBinding -import app.pachli.util.BindingHolder import app.pachli.util.fixTextSelection class AccountFieldEditAdapter : RecyclerView.Adapter>() { diff --git a/app/src/main/java/app/pachli/adapter/EmojiAdapter.kt b/app/src/main/java/app/pachli/adapter/EmojiAdapter.kt index 6ce3580b2..834e6d447 100644 --- a/app/src/main/java/app/pachli/adapter/EmojiAdapter.kt +++ b/app/src/main/java/app/pachli/adapter/EmojiAdapter.kt @@ -21,8 +21,8 @@ import android.view.ViewGroup import androidx.appcompat.widget.TooltipCompat import androidx.recyclerview.widget.RecyclerView import app.pachli.core.network.model.Emoji +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemEmojiButtonBinding -import app.pachli.util.BindingHolder import com.bumptech.glide.Glide import java.util.Locale diff --git a/app/src/main/java/app/pachli/adapter/PollAdapter.kt b/app/src/main/java/app/pachli/adapter/PollAdapter.kt index cc696d945..58f9947e8 100644 --- a/app/src/main/java/app/pachli/adapter/PollAdapter.kt +++ b/app/src/main/java/app/pachli/adapter/PollAdapter.kt @@ -23,8 +23,8 @@ import androidx.recyclerview.widget.RecyclerView import app.pachli.core.activity.emojify import app.pachli.core.common.extensions.visible import app.pachli.core.network.model.Emoji +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemPollBinding -import app.pachli.util.BindingHolder import app.pachli.viewdata.PollOptionViewData import app.pachli.viewdata.buildDescription import app.pachli.viewdata.calculatePercent diff --git a/app/src/main/java/app/pachli/adapter/TabAdapter.kt b/app/src/main/java/app/pachli/adapter/TabAdapter.kt index 6c1844ac6..367e98d7c 100644 --- a/app/src/main/java/app/pachli/adapter/TabAdapter.kt +++ b/app/src/main/java/app/pachli/adapter/TabAdapter.kt @@ -28,9 +28,9 @@ import app.pachli.core.common.extensions.hide import app.pachli.core.common.extensions.show import app.pachli.core.database.model.TabData import app.pachli.core.designsystem.R as DR +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemTabPreferenceBinding import app.pachli.databinding.ItemTabPreferenceSmallBinding -import app.pachli.util.BindingHolder import app.pachli.util.setDrawableTint import com.google.android.material.chip.Chip diff --git a/app/src/main/java/app/pachli/components/account/AccountActivity.kt b/app/src/main/java/app/pachli/components/account/AccountActivity.kt index 99786ec02..d7203090f 100644 --- a/app/src/main/java/app/pachli/components/account/AccountActivity.kt +++ b/app/src/main/java/app/pachli/components/account/AccountActivity.kt @@ -53,7 +53,6 @@ import androidx.core.widget.doAfterTextChanged import androidx.recyclerview.widget.LinearLayoutManager import androidx.viewpager2.widget.MarginPageTransformer import app.pachli.R -import app.pachli.components.account.list.ListsForAccountFragment import app.pachli.core.activity.AccountSelectionListener import app.pachli.core.activity.BottomSheetActivity import app.pachli.core.activity.emojify @@ -77,9 +76,10 @@ import app.pachli.core.network.model.Relationship import app.pachli.core.network.parseAsMastodonHtml import app.pachli.core.preferences.AppTheme import app.pachli.core.preferences.PrefKeys -import app.pachli.core.ui.reduceSwipeSensitivity +import app.pachli.core.ui.extensions.reduceSwipeSensitivity import app.pachli.databinding.ActivityAccountBinding import app.pachli.db.DraftsAlert +import app.pachli.feature.lists.ListsForAccountFragment import app.pachli.interfaces.ActionButtonActivity import app.pachli.interfaces.LinkListener import app.pachli.interfaces.ReselectableFragment @@ -419,8 +419,8 @@ class AccountActivity : when (it) { is Success -> onAccountChanged(it.data) is Error -> { - Snackbar.make(binding.accountCoordinatorLayout, R.string.error_generic, Snackbar.LENGTH_LONG) - .setAction(R.string.action_retry) { viewModel.refresh() } + Snackbar.make(binding.accountCoordinatorLayout, app.pachli.core.ui.R.string.error_generic, Snackbar.LENGTH_LONG) + .setAction(app.pachli.core.ui.R.string.action_retry) { viewModel.refresh() } .show() } is Loading -> { } @@ -433,8 +433,8 @@ class AccountActivity : } if (it is Error) { - Snackbar.make(binding.accountCoordinatorLayout, R.string.error_generic, Snackbar.LENGTH_LONG) - .setAction(R.string.action_retry) { viewModel.refresh() } + Snackbar.make(binding.accountCoordinatorLayout, app.pachli.core.ui.R.string.error_generic, Snackbar.LENGTH_LONG) + .setAction(app.pachli.core.ui.R.string.action_retry) { viewModel.refresh() } .show() } } diff --git a/app/src/main/java/app/pachli/components/account/AccountFieldAdapter.kt b/app/src/main/java/app/pachli/components/account/AccountFieldAdapter.kt index 5c0314193..354b2d2b2 100644 --- a/app/src/main/java/app/pachli/components/account/AccountFieldAdapter.kt +++ b/app/src/main/java/app/pachli/components/account/AccountFieldAdapter.kt @@ -24,9 +24,9 @@ import app.pachli.core.activity.emojify import app.pachli.core.network.model.Emoji import app.pachli.core.network.model.Field import app.pachli.core.network.parseAsMastodonHtml +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemAccountFieldBinding import app.pachli.interfaces.LinkListener -import app.pachli.util.BindingHolder import app.pachli.util.setClickableText class AccountFieldAdapter( diff --git a/app/src/main/java/app/pachli/components/account/media/AccountMediaFragment.kt b/app/src/main/java/app/pachli/components/account/media/AccountMediaFragment.kt index 42018f116..3be00b8b9 100644 --- a/app/src/main/java/app/pachli/components/account/media/AccountMediaFragment.kt +++ b/app/src/main/java/app/pachli/components/account/media/AccountMediaFragment.kt @@ -113,7 +113,7 @@ class AccountMediaFragment : is LoadState.NotLoading -> { if (loadState.append is LoadState.NotLoading && loadState.source.refresh is LoadState.NotLoading) { binding.statusView.show() - binding.statusView.setup(R.drawable.elephant_friend_empty, R.string.message_empty, null) + binding.statusView.setup(app.pachli.core.ui.R.drawable.elephant_friend_empty, app.pachli.core.ui.R.string.message_empty, null) } } is LoadState.Error -> { diff --git a/app/src/main/java/app/pachli/components/account/media/AccountMediaGridAdapter.kt b/app/src/main/java/app/pachli/components/account/media/AccountMediaGridAdapter.kt index 7f95ad8b2..f25f8290a 100644 --- a/app/src/main/java/app/pachli/components/account/media/AccountMediaGridAdapter.kt +++ b/app/src/main/java/app/pachli/components/account/media/AccountMediaGridAdapter.kt @@ -17,8 +17,8 @@ import app.pachli.core.common.extensions.show import app.pachli.core.common.extensions.visible import app.pachli.core.navigation.AttachmentViewData import app.pachli.core.network.model.Attachment +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemAccountMediaBinding -import app.pachli.util.BindingHolder import app.pachli.util.StatusDisplayOptions import app.pachli.util.getFormattedDescription import app.pachli.util.iconResource diff --git a/app/src/main/java/app/pachli/components/accountlist/AccountListFragment.kt b/app/src/main/java/app/pachli/components/accountlist/AccountListFragment.kt index ffe46625f..44fc67202 100644 --- a/app/src/main/java/app/pachli/components/accountlist/AccountListFragment.kt +++ b/app/src/main/java/app/pachli/components/accountlist/AccountListFragment.kt @@ -377,8 +377,8 @@ class AccountListFragment : if (adapter.itemCount == 0) { binding.messageView.show() binding.messageView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, null, ) } else { diff --git a/app/src/main/java/app/pachli/components/accountlist/adapter/AccountAdapter.kt b/app/src/main/java/app/pachli/components/accountlist/adapter/AccountAdapter.kt index 1ab043461..bfef1b3e7 100644 --- a/app/src/main/java/app/pachli/components/accountlist/adapter/AccountAdapter.kt +++ b/app/src/main/java/app/pachli/components/accountlist/adapter/AccountAdapter.kt @@ -19,9 +19,9 @@ import android.view.LayoutInflater import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import app.pachli.core.network.model.TimelineAccount +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemFooterBinding import app.pachli.interfaces.AccountActionListener -import app.pachli.util.BindingHolder import app.pachli.util.removeDuplicates /** Generic adapter with bottom loading indicator. */ diff --git a/app/src/main/java/app/pachli/components/accountlist/adapter/BlocksAdapter.kt b/app/src/main/java/app/pachli/components/accountlist/adapter/BlocksAdapter.kt index 063b20d63..0ca893b06 100644 --- a/app/src/main/java/app/pachli/components/accountlist/adapter/BlocksAdapter.kt +++ b/app/src/main/java/app/pachli/components/accountlist/adapter/BlocksAdapter.kt @@ -23,9 +23,9 @@ import app.pachli.core.activity.emojify import app.pachli.core.activity.loadAvatar import app.pachli.core.common.extensions.visible import app.pachli.core.designsystem.R as DR +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemBlockedUserBinding import app.pachli.interfaces.AccountActionListener -import app.pachli.util.BindingHolder /** Displays a list of blocked accounts. */ class BlocksAdapter( diff --git a/app/src/main/java/app/pachli/components/accountlist/adapter/FollowRequestsHeaderAdapter.kt b/app/src/main/java/app/pachli/components/accountlist/adapter/FollowRequestsHeaderAdapter.kt index 6c2dba04e..54a5a4d26 100644 --- a/app/src/main/java/app/pachli/components/accountlist/adapter/FollowRequestsHeaderAdapter.kt +++ b/app/src/main/java/app/pachli/components/accountlist/adapter/FollowRequestsHeaderAdapter.kt @@ -20,8 +20,8 @@ import android.view.LayoutInflater import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import app.pachli.R +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemFollowRequestsHeaderBinding -import app.pachli.util.BindingHolder class FollowRequestsHeaderAdapter( private val instanceName: String, diff --git a/app/src/main/java/app/pachli/components/accountlist/adapter/MutesAdapter.kt b/app/src/main/java/app/pachli/components/accountlist/adapter/MutesAdapter.kt index 900f9d8cb..194a2e016 100644 --- a/app/src/main/java/app/pachli/components/accountlist/adapter/MutesAdapter.kt +++ b/app/src/main/java/app/pachli/components/accountlist/adapter/MutesAdapter.kt @@ -24,9 +24,9 @@ import app.pachli.core.activity.emojify import app.pachli.core.activity.loadAvatar import app.pachli.core.common.extensions.visible import app.pachli.core.designsystem.R as DR +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemMutedUserBinding import app.pachli.interfaces.AccountActionListener -import app.pachli.util.BindingHolder /** Displays a list of muted accounts with mute/unmute account button and mute/unmute notifications switch */ class MutesAdapter( diff --git a/app/src/main/java/app/pachli/components/announcements/AnnouncementAdapter.kt b/app/src/main/java/app/pachli/components/announcements/AnnouncementAdapter.kt index e1f9cdd19..a5325fc87 100644 --- a/app/src/main/java/app/pachli/components/announcements/AnnouncementAdapter.kt +++ b/app/src/main/java/app/pachli/components/announcements/AnnouncementAdapter.kt @@ -31,9 +31,9 @@ import app.pachli.core.common.extensions.visible import app.pachli.core.common.util.AbsoluteTimeFormatter import app.pachli.core.network.model.Announcement import app.pachli.core.network.parseAsMastodonHtml +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemAnnouncementBinding import app.pachli.interfaces.LinkListener -import app.pachli.util.BindingHolder import app.pachli.util.equalByMinute import app.pachli.util.getRelativeTimeSpanString import app.pachli.util.setClickableText diff --git a/app/src/main/java/app/pachli/components/announcements/AnnouncementsActivity.kt b/app/src/main/java/app/pachli/components/announcements/AnnouncementsActivity.kt index f7b6dd174..7a09a11c5 100644 --- a/app/src/main/java/app/pachli/components/announcements/AnnouncementsActivity.kt +++ b/app/src/main/java/app/pachli/components/announcements/AnnouncementsActivity.kt @@ -32,13 +32,13 @@ import app.pachli.core.activity.BottomSheetActivity import app.pachli.core.common.extensions.hide import app.pachli.core.common.extensions.show import app.pachli.core.common.extensions.viewBinding +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.navigation.StatusListActivityIntent import app.pachli.core.preferences.PrefKeys import app.pachli.databinding.ActivityAnnouncementsBinding import app.pachli.util.Error import app.pachli.util.Loading import app.pachli.util.Success -import app.pachli.util.unsafeLazy import app.pachli.view.EmojiPicker import com.google.android.material.color.MaterialColors import com.google.android.material.divider.MaterialDividerItemDecoration @@ -109,7 +109,7 @@ class AnnouncementsActivity : binding.progressBar.hide() binding.swipeRefreshLayout.isRefreshing = false if (it.data.isNullOrEmpty()) { - binding.errorMessageView.setup(R.drawable.elephant_friend_empty, R.string.no_announcements) + binding.errorMessageView.setup(app.pachli.core.ui.R.drawable.elephant_friend_empty, R.string.no_announcements) binding.errorMessageView.show() } else { binding.errorMessageView.hide() @@ -122,7 +122,7 @@ class AnnouncementsActivity : is Error -> { binding.progressBar.hide() binding.swipeRefreshLayout.isRefreshing = false - binding.errorMessageView.setup(R.drawable.errorphant_error, R.string.error_generic) { + binding.errorMessageView.setup(app.pachli.core.ui.R.drawable.errorphant_error, app.pachli.core.ui.R.string.error_generic) { refreshAnnouncements() } binding.errorMessageView.show() diff --git a/app/src/main/java/app/pachli/components/compose/ComposeActivity.kt b/app/src/main/java/app/pachli/components/compose/ComposeActivity.kt index 88b8a6fc4..2b16f3050 100644 --- a/app/src/main/java/app/pachli/components/compose/ComposeActivity.kt +++ b/app/src/main/java/app/pachli/components/compose/ComposeActivity.kt @@ -585,7 +585,7 @@ class ComposeActivity : title = null setDisplayHomeAsUpEnabled(true) setDisplayShowHomeEnabled(true) - setHomeAsUpIndicator(R.drawable.ic_close_24dp) + setHomeAsUpIndicator(app.pachli.core.ui.R.drawable.ic_close_24dp) } } @@ -997,7 +997,7 @@ class ComposeActivity : R.string.error_media_upload_permission, Snackbar.LENGTH_SHORT, ).apply { - setAction(R.string.action_retry) { onMediaPick() } + setAction(app.pachli.core.ui.R.string.action_retry) { onMediaPick() } // necessary so snackbar is shown over everything view.elevation = resources.getDimension(DR.dimen.compose_activity_snackbar_elevation) show() diff --git a/app/src/main/java/app/pachli/components/compose/MediaUploader.kt b/app/src/main/java/app/pachli/components/compose/MediaUploader.kt index 552c00510..2dc36275b 100644 --- a/app/src/main/java/app/pachli/components/compose/MediaUploader.kt +++ b/app/src/main/java/app/pachli/components/compose/MediaUploader.kt @@ -32,11 +32,11 @@ import app.pachli.components.compose.ComposeActivity.QueuedMedia import app.pachli.core.common.string.randomAlphanumericString import app.pachli.core.data.model.InstanceInfo import app.pachli.core.mastodon.model.MediaUploadApi +import app.pachli.core.network.extensions.getServerErrorMessage import app.pachli.network.ProgressRequestBody import app.pachli.util.MEDIA_SIZE_UNKNOWN import app.pachli.util.getImageSquarePixels import app.pachli.util.getMediaSize -import app.pachli.util.getServerErrorMessage import dagger.hilt.android.qualifiers.ApplicationContext import java.io.File import java.io.FileInputStream diff --git a/app/src/main/java/app/pachli/components/compose/dialog/AddPollOptionsAdapter.kt b/app/src/main/java/app/pachli/components/compose/dialog/AddPollOptionsAdapter.kt index 3ed47966c..418856f60 100644 --- a/app/src/main/java/app/pachli/components/compose/dialog/AddPollOptionsAdapter.kt +++ b/app/src/main/java/app/pachli/components/compose/dialog/AddPollOptionsAdapter.kt @@ -24,8 +24,8 @@ import androidx.recyclerview.widget.RecyclerView import app.pachli.R import app.pachli.components.compose.ComposeActivity.Companion.MastodonLengthFilter import app.pachli.core.common.extensions.visible +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemAddPollOptionBinding -import app.pachli.util.BindingHolder class AddPollOptionsAdapter( private var options: MutableList, diff --git a/app/src/main/java/app/pachli/components/conversation/ConversationLoadStateAdapter.kt b/app/src/main/java/app/pachli/components/conversation/ConversationLoadStateAdapter.kt index 86071cd6e..37f615d45 100644 --- a/app/src/main/java/app/pachli/components/conversation/ConversationLoadStateAdapter.kt +++ b/app/src/main/java/app/pachli/components/conversation/ConversationLoadStateAdapter.kt @@ -21,8 +21,8 @@ import android.view.ViewGroup import androidx.paging.LoadState import androidx.paging.LoadStateAdapter import app.pachli.core.common.extensions.visible +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemNetworkStateBinding -import app.pachli.util.BindingHolder class ConversationLoadStateAdapter( private val retryCallback: () -> Unit, diff --git a/app/src/main/java/app/pachli/components/conversation/ConversationsFragment.kt b/app/src/main/java/app/pachli/components/conversation/ConversationsFragment.kt index d2b127e8f..34b829663 100644 --- a/app/src/main/java/app/pachli/components/conversation/ConversationsFragment.kt +++ b/app/src/main/java/app/pachli/components/conversation/ConversationsFragment.kt @@ -127,8 +127,8 @@ class ConversationsFragment : if (loadState.append is LoadState.NotLoading && loadState.source.refresh is LoadState.NotLoading) { binding.statusView.show() binding.statusView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, null, ) } diff --git a/app/src/main/java/app/pachli/components/drafts/DraftsActivity.kt b/app/src/main/java/app/pachli/components/drafts/DraftsActivity.kt index 008f2e5ca..53eadec98 100644 --- a/app/src/main/java/app/pachli/components/drafts/DraftsActivity.kt +++ b/app/src/main/java/app/pachli/components/drafts/DraftsActivity.kt @@ -67,7 +67,7 @@ class DraftsActivity : BaseActivity(), DraftActionListener { setDisplayShowHomeEnabled(true) } - binding.draftsErrorMessageView.setup(R.drawable.elephant_friend_empty, R.string.no_drafts) + binding.draftsErrorMessageView.setup(app.pachli.core.ui.R.drawable.elephant_friend_empty, R.string.no_drafts) val adapter = DraftsAdapter(this) diff --git a/app/src/main/java/app/pachli/components/drafts/DraftsAdapter.kt b/app/src/main/java/app/pachli/components/drafts/DraftsAdapter.kt index 5bbf8cc87..578f284f8 100644 --- a/app/src/main/java/app/pachli/components/drafts/DraftsAdapter.kt +++ b/app/src/main/java/app/pachli/components/drafts/DraftsAdapter.kt @@ -26,8 +26,8 @@ import app.pachli.core.common.extensions.hide import app.pachli.core.common.extensions.show import app.pachli.core.common.extensions.visible import app.pachli.core.database.model.DraftEntity +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemDraftBinding -import app.pachli.util.BindingHolder interface DraftActionListener { fun onOpenDraft(draft: DraftEntity) diff --git a/app/src/main/java/app/pachli/components/filters/FilterExtensions.kt b/app/src/main/java/app/pachli/components/filters/FilterExtensions.kt index 1cb15b337..0fa5c7415 100644 --- a/app/src/main/java/app/pachli/components/filters/FilterExtensions.kt +++ b/app/src/main/java/app/pachli/components/filters/FilterExtensions.kt @@ -20,7 +20,7 @@ package app.pachli.components.filters import android.app.Activity import androidx.appcompat.app.AlertDialog import app.pachli.R -import app.pachli.core.ui.await +import app.pachli.core.ui.extensions.await internal suspend fun Activity.showDeleteFilterDialog(filterTitle: String) = AlertDialog.Builder(this) .setMessage(getString(R.string.dialog_delete_filter_text, filterTitle)) diff --git a/app/src/main/java/app/pachli/components/filters/FiltersActivity.kt b/app/src/main/java/app/pachli/components/filters/FiltersActivity.kt index cc8ab7991..8a463df6d 100644 --- a/app/src/main/java/app/pachli/components/filters/FiltersActivity.kt +++ b/app/src/main/java/app/pachli/components/filters/FiltersActivity.kt @@ -62,13 +62,13 @@ class FiltersActivity : BaseActivity(), FiltersListener { when (state.loadingState) { FiltersViewModel.LoadingState.INITIAL, FiltersViewModel.LoadingState.LOADING -> binding.messageView.hide() FiltersViewModel.LoadingState.ERROR_NETWORK -> { - binding.messageView.setup(R.drawable.errorphant_offline, R.string.error_network) { + binding.messageView.setup(app.pachli.core.ui.R.drawable.errorphant_offline, app.pachli.core.ui.R.string.error_network) { loadFilters() } binding.messageView.show() } FiltersViewModel.LoadingState.ERROR_OTHER -> { - binding.messageView.setup(R.drawable.errorphant_error, R.string.error_generic) { + binding.messageView.setup(app.pachli.core.ui.R.drawable.errorphant_error, app.pachli.core.ui.R.string.error_generic) { loadFilters() } binding.messageView.show() @@ -77,8 +77,8 @@ class FiltersActivity : BaseActivity(), FiltersListener { binding.filtersList.adapter = FiltersAdapter(this@FiltersActivity, state.filters) if (state.filters.isEmpty()) { binding.messageView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, null, ) binding.messageView.show() diff --git a/app/src/main/java/app/pachli/components/filters/FiltersAdapter.kt b/app/src/main/java/app/pachli/components/filters/FiltersAdapter.kt index b42062a3c..2491108b2 100644 --- a/app/src/main/java/app/pachli/components/filters/FiltersAdapter.kt +++ b/app/src/main/java/app/pachli/components/filters/FiltersAdapter.kt @@ -5,8 +5,8 @@ import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import app.pachli.R import app.pachli.core.network.model.Filter +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemRemovableBinding -import app.pachli.util.BindingHolder import app.pachli.util.getRelativeTimeSpanString class FiltersAdapter(val listener: FiltersListener, val filters: List) : diff --git a/app/src/main/java/app/pachli/components/followedtags/FollowedTagsAdapter.kt b/app/src/main/java/app/pachli/components/followedtags/FollowedTagsAdapter.kt index a517a18b7..cfb32f53d 100644 --- a/app/src/main/java/app/pachli/components/followedtags/FollowedTagsAdapter.kt +++ b/app/src/main/java/app/pachli/components/followedtags/FollowedTagsAdapter.kt @@ -4,9 +4,9 @@ import android.view.LayoutInflater import android.view.ViewGroup import androidx.paging.PagingDataAdapter import androidx.recyclerview.widget.DiffUtil +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemFollowedHashtagBinding import app.pachli.interfaces.HashtagActionListener -import app.pachli.util.BindingHolder class FollowedTagsAdapter( private val actionListener: HashtagActionListener, diff --git a/app/src/main/java/app/pachli/components/instancemute/adapter/DomainMutesAdapter.kt b/app/src/main/java/app/pachli/components/instancemute/adapter/DomainMutesAdapter.kt index ffe1d45d0..b41e6ced5 100644 --- a/app/src/main/java/app/pachli/components/instancemute/adapter/DomainMutesAdapter.kt +++ b/app/src/main/java/app/pachli/components/instancemute/adapter/DomainMutesAdapter.kt @@ -4,8 +4,8 @@ import android.view.LayoutInflater import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import app.pachli.components.instancemute.interfaces.InstanceActionListener +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemMutedDomainBinding -import app.pachli.util.BindingHolder class DomainMutesAdapter( private val actionListener: InstanceActionListener, diff --git a/app/src/main/java/app/pachli/components/instancemute/fragment/InstanceListFragment.kt b/app/src/main/java/app/pachli/components/instancemute/fragment/InstanceListFragment.kt index 0420bb0a4..94729a61b 100644 --- a/app/src/main/java/app/pachli/components/instancemute/fragment/InstanceListFragment.kt +++ b/app/src/main/java/app/pachli/components/instancemute/fragment/InstanceListFragment.kt @@ -124,8 +124,8 @@ class InstanceListFragment : if (adapter.itemCount == 0) { binding.messageView.show() binding.messageView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, null, ) } else { diff --git a/app/src/main/java/app/pachli/components/notifications/NotificationsActivity.kt b/app/src/main/java/app/pachli/components/notifications/NotificationsActivity.kt index e054a4153..0eb6bb42d 100644 --- a/app/src/main/java/app/pachli/components/notifications/NotificationsActivity.kt +++ b/app/src/main/java/app/pachli/components/notifications/NotificationsActivity.kt @@ -26,11 +26,11 @@ import androidx.fragment.app.commit import app.pachli.R import app.pachli.core.activity.BottomSheetActivity import app.pachli.core.common.extensions.viewBinding +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.navigation.ComposeActivityIntent import app.pachli.databinding.ActivityNotificationsBinding import app.pachli.interfaces.ActionButtonActivity import app.pachli.interfaces.AppBarLayoutHost -import app.pachli.util.unsafeLazy import com.google.android.material.appbar.AppBarLayout class NotificationsActivity : BottomSheetActivity(), ActionButtonActivity, AppBarLayoutHost, MenuProvider { diff --git a/app/src/main/java/app/pachli/components/notifications/NotificationsFragment.kt b/app/src/main/java/app/pachli/components/notifications/NotificationsFragment.kt index 97cb56d3f..5adfdb13b 100644 --- a/app/src/main/java/app/pachli/components/notifications/NotificationsFragment.kt +++ b/app/src/main/java/app/pachli/components/notifications/NotificationsFragment.kt @@ -229,7 +229,7 @@ class NotificationsFragment : Snackbar.LENGTH_INDEFINITE, ) error.action?.let { action -> - snackbar.setAction(R.string.action_retry) { + snackbar.setAction(app.pachli.core.ui.R.string.action_retry) { viewModel.accept(action) } } @@ -421,8 +421,8 @@ class NotificationsFragment : if (loadState.refresh is LoadState.NotLoading) { if (adapter.itemCount == 0) { binding.statusView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, ) binding.recyclerView.hide() binding.statusView.show() diff --git a/app/src/main/java/app/pachli/components/preference/AccountPreferencesFragment.kt b/app/src/main/java/app/pachli/components/preference/AccountPreferencesFragment.kt index 3d3f44f6e..8b00bf285 100644 --- a/app/src/main/java/app/pachli/components/preference/AccountPreferencesFragment.kt +++ b/app/src/main/java/app/pachli/components/preference/AccountPreferencesFragment.kt @@ -27,6 +27,7 @@ import app.pachli.appstore.EventHub import app.pachli.components.notifications.currentAccountNeedsMigration import app.pachli.core.accounts.AccountManager import app.pachli.core.activity.BaseActivity +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.designsystem.R as DR import app.pachli.core.navigation.AccountListActivityIntent import app.pachli.core.navigation.FiltersActivityIntent @@ -54,7 +55,6 @@ import app.pachli.util.getInitialLanguages import app.pachli.util.getLocaleList import app.pachli.util.getPachliDisplayName import app.pachli.util.makeIcon -import app.pachli.util.unsafeLazy import com.github.michaelbull.result.getOrElse import com.google.android.material.snackbar.Snackbar import com.mikepenz.iconics.IconicsDrawable @@ -339,7 +339,7 @@ class AccountPreferencesFragment : PreferenceFragmentCompat() { private fun showErrorSnackbar(visibility: String?, sensitive: Boolean?) { view?.let { view -> Snackbar.make(view, R.string.pref_failed_to_sync, Snackbar.LENGTH_LONG) - .setAction(R.string.action_retry) { syncWithServer(visibility, sensitive) } + .setAction(app.pachli.core.ui.R.string.action_retry) { syncWithServer(visibility, sensitive) } .show() } } diff --git a/app/src/main/java/app/pachli/components/preference/PreferencesFragment.kt b/app/src/main/java/app/pachli/components/preference/PreferencesFragment.kt index 4d7f71fe8..6e3b06527 100644 --- a/app/src/main/java/app/pachli/components/preference/PreferencesFragment.kt +++ b/app/src/main/java/app/pachli/components/preference/PreferencesFragment.kt @@ -28,6 +28,7 @@ import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat import app.pachli.R import app.pachli.core.accounts.AccountManager +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.designsystem.R as DR import app.pachli.core.network.model.Notification import app.pachli.core.preferences.AppTheme @@ -48,7 +49,6 @@ import app.pachli.util.LocaleManager import app.pachli.util.deserialize import app.pachli.util.makeIcon import app.pachli.util.serialize -import app.pachli.util.unsafeLazy import app.pachli.view.FontFamilyDialogFragment import com.mikepenz.iconics.IconicsDrawable import com.mikepenz.iconics.typeface.library.googlematerial.GoogleMaterial diff --git a/app/src/main/java/app/pachli/components/report/ReportActivity.kt b/app/src/main/java/app/pachli/components/report/ReportActivity.kt index 0d7030fbc..2fdd6d571 100644 --- a/app/src/main/java/app/pachli/components/report/ReportActivity.kt +++ b/app/src/main/java/app/pachli/components/report/ReportActivity.kt @@ -53,7 +53,7 @@ class ReportActivity : BottomSheetActivity() { title = getString(R.string.report_username_format, viewModel.accountUserName) setDisplayHomeAsUpEnabled(true) setDisplayShowHomeEnabled(true) - setHomeAsUpIndicator(R.drawable.ic_close_24dp) + setHomeAsUpIndicator(app.pachli.core.ui.R.drawable.ic_close_24dp) } initViewPager() diff --git a/app/src/main/java/app/pachli/components/report/fragments/ReportNoteFragment.kt b/app/src/main/java/app/pachli/components/report/fragments/ReportNoteFragment.kt index e003b7bec..3f50aa0f6 100644 --- a/app/src/main/java/app/pachli/components/report/fragments/ReportNoteFragment.kt +++ b/app/src/main/java/app/pachli/components/report/fragments/ReportNoteFragment.kt @@ -92,8 +92,8 @@ class ReportNoteFragment : Fragment(R.layout.fragment_report_note) { binding.buttonBack.isEnabled = true binding.progressBar.hide() - Snackbar.make(binding.buttonBack, if (error is IOException) R.string.error_network else R.string.error_generic, Snackbar.LENGTH_LONG) - .setAction(R.string.action_retry) { + Snackbar.make(binding.buttonBack, if (error is IOException) app.pachli.core.ui.R.string.error_network else app.pachli.core.ui.R.string.error_generic, Snackbar.LENGTH_LONG) + .setAction(app.pachli.core.ui.R.string.action_retry) { sendReport() } .show() diff --git a/app/src/main/java/app/pachli/components/report/fragments/ReportStatusesFragment.kt b/app/src/main/java/app/pachli/components/report/fragments/ReportStatusesFragment.kt index e14e779da..446c29db5 100644 --- a/app/src/main/java/app/pachli/components/report/fragments/ReportStatusesFragment.kt +++ b/app/src/main/java/app/pachli/components/report/fragments/ReportStatusesFragment.kt @@ -184,7 +184,7 @@ class ReportStatusesFragment : private fun showError() { if (snackbarErrorRetry?.isShown != true) { snackbarErrorRetry = Snackbar.make(binding.swipeRefreshLayout, R.string.failed_fetch_posts, Snackbar.LENGTH_INDEFINITE) - snackbarErrorRetry?.setAction(R.string.action_retry) { + snackbarErrorRetry?.setAction(app.pachli.core.ui.R.string.action_retry) { adapter.retry() } snackbarErrorRetry?.show() diff --git a/app/src/main/java/app/pachli/components/scheduled/ScheduledStatusActivity.kt b/app/src/main/java/app/pachli/components/scheduled/ScheduledStatusActivity.kt index 619df615f..a3e1125b4 100644 --- a/app/src/main/java/app/pachli/components/scheduled/ScheduledStatusActivity.kt +++ b/app/src/main/java/app/pachli/components/scheduled/ScheduledStatusActivity.kt @@ -107,7 +107,7 @@ class ScheduledStatusActivity : if (loadState.refresh is LoadState.NotLoading) { binding.progressBar.hide() if (adapter.itemCount == 0) { - binding.errorMessageView.setup(R.drawable.elephant_friend_empty, R.string.no_scheduled_posts) + binding.errorMessageView.setup(app.pachli.core.ui.R.drawable.elephant_friend_empty, R.string.no_scheduled_posts) binding.errorMessageView.show() } else { binding.errorMessageView.hide() diff --git a/app/src/main/java/app/pachli/components/scheduled/ScheduledStatusAdapter.kt b/app/src/main/java/app/pachli/components/scheduled/ScheduledStatusAdapter.kt index df0763e2e..3ce8babde 100644 --- a/app/src/main/java/app/pachli/components/scheduled/ScheduledStatusAdapter.kt +++ b/app/src/main/java/app/pachli/components/scheduled/ScheduledStatusAdapter.kt @@ -21,8 +21,8 @@ import android.view.ViewGroup import androidx.paging.PagingDataAdapter import androidx.recyclerview.widget.DiffUtil import app.pachli.core.network.model.ScheduledStatus +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemScheduledStatusBinding -import app.pachli.util.BindingHolder interface ScheduledStatusActionListener { fun edit(item: ScheduledStatus) diff --git a/app/src/main/java/app/pachli/components/search/SearchActivity.kt b/app/src/main/java/app/pachli/components/search/SearchActivity.kt index dfc21dad6..ea3ed5925 100644 --- a/app/src/main/java/app/pachli/components/search/SearchActivity.kt +++ b/app/src/main/java/app/pachli/components/search/SearchActivity.kt @@ -31,7 +31,7 @@ import app.pachli.components.search.adapter.SearchPagerAdapter import app.pachli.core.activity.BottomSheetActivity import app.pachli.core.common.extensions.viewBinding import app.pachli.core.preferences.PrefKeys -import app.pachli.core.ui.reduceSwipeSensitivity +import app.pachli.core.ui.extensions.reduceSwipeSensitivity import app.pachli.databinding.ActivitySearchBinding import com.google.android.material.tabs.TabLayoutMediator import dagger.hilt.android.AndroidEntryPoint diff --git a/app/src/main/java/app/pachli/components/search/adapter/SearchHashtagsAdapter.kt b/app/src/main/java/app/pachli/components/search/adapter/SearchHashtagsAdapter.kt index 10f8f7809..1dfd0c00a 100644 --- a/app/src/main/java/app/pachli/components/search/adapter/SearchHashtagsAdapter.kt +++ b/app/src/main/java/app/pachli/components/search/adapter/SearchHashtagsAdapter.kt @@ -21,9 +21,9 @@ import android.view.ViewGroup import androidx.paging.PagingDataAdapter import androidx.recyclerview.widget.DiffUtil import app.pachli.core.network.model.HashTag +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemHashtagBinding import app.pachli.interfaces.LinkListener -import app.pachli.util.BindingHolder class SearchHashtagsAdapter(private val linkListener: LinkListener) : PagingDataAdapter>(HASHTAG_COMPARATOR) { diff --git a/app/src/main/java/app/pachli/components/search/fragments/SearchFragment.kt b/app/src/main/java/app/pachli/components/search/fragments/SearchFragment.kt index a66163b35..c667bb0bb 100644 --- a/app/src/main/java/app/pachli/components/search/fragments/SearchFragment.kt +++ b/app/src/main/java/app/pachli/components/search/fragments/SearchFragment.kt @@ -131,7 +131,7 @@ abstract class SearchFragment : private fun showError() { if (snackbarErrorRetry?.isShown != true) { snackbarErrorRetry = Snackbar.make(binding.root, R.string.failed_search, Snackbar.LENGTH_INDEFINITE) - snackbarErrorRetry?.setAction(R.string.action_retry) { + snackbarErrorRetry?.setAction(app.pachli.core.ui.R.string.action_retry) { snackbarErrorRetry = null adapter.retry() } diff --git a/app/src/main/java/app/pachli/components/search/fragments/SearchStatusesFragment.kt b/app/src/main/java/app/pachli/components/search/fragments/SearchStatusesFragment.kt index 498708d01..8741813e8 100644 --- a/app/src/main/java/app/pachli/components/search/fragments/SearchStatusesFragment.kt +++ b/app/src/main/java/app/pachli/components/search/fragments/SearchStatusesFragment.kt @@ -446,7 +446,7 @@ class SearchStatusesFragment : SearchFragment(), StatusActionLis }, { error -> Timber.w(error, "error deleting status") - Toast.makeText(context, R.string.error_generic, Toast.LENGTH_SHORT).show() + Toast.makeText(context, app.pachli.core.ui.R.string.error_generic, Toast.LENGTH_SHORT).show() }, ) } diff --git a/app/src/main/java/app/pachli/components/timeline/TimelineFragment.kt b/app/src/main/java/app/pachli/components/timeline/TimelineFragment.kt index bbc0bd0a0..af1d4b15c 100644 --- a/app/src/main/java/app/pachli/components/timeline/TimelineFragment.kt +++ b/app/src/main/java/app/pachli/components/timeline/TimelineFragment.kt @@ -60,6 +60,8 @@ import app.pachli.core.navigation.AttachmentViewData import app.pachli.core.network.model.Poll import app.pachli.core.network.model.Status import app.pachli.core.network.model.TimelineKind +import app.pachli.core.ui.extensions.getDrawableRes +import app.pachli.core.ui.extensions.getErrorString import app.pachli.databinding.FragmentTimelineBinding import app.pachli.fragment.SFragment import app.pachli.interfaces.ActionButtonActivity @@ -70,8 +72,6 @@ import app.pachli.util.ListStatusAccessibilityDelegate import app.pachli.util.PresentationState import app.pachli.util.UserRefreshState import app.pachli.util.asRefreshState -import app.pachli.util.getDrawableRes -import app.pachli.util.getErrorString import app.pachli.util.withPresentationState import app.pachli.viewdata.StatusViewData import at.connyduck.sparkbutton.helpers.Utils @@ -249,7 +249,7 @@ class TimelineFragment : Snackbar.LENGTH_INDEFINITE, ) error.action?.let { action -> - snackbar!!.setAction(R.string.action_retry) { + snackbar!!.setAction(app.pachli.core.ui.R.string.action_retry) { viewModel.accept(action) } } @@ -438,7 +438,7 @@ class TimelineFragment : message, Snackbar.LENGTH_INDEFINITE, ) - .setAction(R.string.action_retry) { adapter.retry() } + .setAction(app.pachli.core.ui.R.string.action_retry) { adapter.retry() } snackbar!!.show() } else { val drawableRes = error.getDrawableRes() @@ -454,8 +454,8 @@ class TimelineFragment : PresentationState.PRESENTED -> { if (adapter.itemCount == 0) { binding.statusView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, ) if (timelineKind == TimelineKind.Home) { binding.statusView.showHelp(R.string.help_empty_home) diff --git a/app/src/main/java/app/pachli/components/trending/TrendingActivity.kt b/app/src/main/java/app/pachli/components/trending/TrendingActivity.kt index 7ff971ef9..5108a9c38 100644 --- a/app/src/main/java/app/pachli/components/trending/TrendingActivity.kt +++ b/app/src/main/java/app/pachli/components/trending/TrendingActivity.kt @@ -31,7 +31,7 @@ import app.pachli.components.timeline.TimelineFragment import app.pachli.core.activity.BottomSheetActivity import app.pachli.core.common.extensions.viewBinding import app.pachli.core.network.model.TimelineKind -import app.pachli.core.ui.reduceSwipeSensitivity +import app.pachli.core.ui.extensions.reduceSwipeSensitivity import app.pachli.databinding.ActivityTrendingBinding import app.pachli.interfaces.AppBarLayoutHost import com.google.android.material.appbar.AppBarLayout diff --git a/app/src/main/java/app/pachli/components/trending/TrendingLinksFragment.kt b/app/src/main/java/app/pachli/components/trending/TrendingLinksFragment.kt index a5f32a62e..835346a2b 100644 --- a/app/src/main/java/app/pachli/components/trending/TrendingLinksFragment.kt +++ b/app/src/main/java/app/pachli/components/trending/TrendingLinksFragment.kt @@ -111,8 +111,8 @@ class TrendingLinksFragment : binding.swipeRefreshLayout.isRefreshing = false if (it.data.isEmpty()) { binding.messageView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, null, ) binding.messageView.show() diff --git a/app/src/main/java/app/pachli/components/trending/TrendingTagsFragment.kt b/app/src/main/java/app/pachli/components/trending/TrendingTagsFragment.kt index bc539257b..0af0cfcef 100644 --- a/app/src/main/java/app/pachli/components/trending/TrendingTagsFragment.kt +++ b/app/src/main/java/app/pachli/components/trending/TrendingTagsFragment.kt @@ -200,8 +200,8 @@ class TrendingTagsFragment : binding.recyclerView.hide() binding.messageView.show() binding.messageView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, null, ) } else { @@ -234,8 +234,8 @@ class TrendingTagsFragment : binding.swipeRefreshLayout.isRefreshing = false binding.messageView.setup( - R.drawable.errorphant_offline, - R.string.error_network, + app.pachli.core.ui.R.drawable.errorphant_offline, + app.pachli.core.ui.R.string.error_network, ) { refreshContent() } } @@ -246,8 +246,8 @@ class TrendingTagsFragment : binding.swipeRefreshLayout.isRefreshing = false binding.messageView.setup( - R.drawable.errorphant_error, - R.string.error_generic, + app.pachli.core.ui.R.drawable.errorphant_error, + app.pachli.core.ui.R.string.error_generic, ) { refreshContent() } } diff --git a/app/src/main/java/app/pachli/components/viewthread/ViewThreadFragment.kt b/app/src/main/java/app/pachli/components/viewthread/ViewThreadFragment.kt index d72630f1a..40b10301a 100644 --- a/app/src/main/java/app/pachli/components/viewthread/ViewThreadFragment.kt +++ b/app/src/main/java/app/pachli/components/viewthread/ViewThreadFragment.kt @@ -209,9 +209,9 @@ class ViewThreadFragment : lifecycleScope.launch { viewModel.errors.collect { throwable -> Timber.w(throwable, "failed to load status context") - val msg = view.context.getString(R.string.error_generic_fmt, throwable) + val msg = view.context.getString(app.pachli.core.ui.R.string.error_generic_fmt, throwable) Snackbar.make(binding.root, msg, Snackbar.LENGTH_INDEFINITE) - .setAction(R.string.action_retry) { + .setAction(app.pachli.core.ui.R.string.action_retry) { viewModel.retry(thisThreadsStatusId) } .show() diff --git a/app/src/main/java/app/pachli/components/viewthread/edits/ViewEditsAdapter.kt b/app/src/main/java/app/pachli/components/viewthread/edits/ViewEditsAdapter.kt index d960926b5..bea64e4c0 100644 --- a/app/src/main/java/app/pachli/components/viewthread/edits/ViewEditsAdapter.kt +++ b/app/src/main/java/app/pachli/components/viewthread/edits/ViewEditsAdapter.kt @@ -30,9 +30,9 @@ import app.pachli.core.common.util.AbsoluteTimeFormatter import app.pachli.core.designsystem.R as DR import app.pachli.core.network.model.StatusEdit import app.pachli.core.network.parseAsMastodonHtml +import app.pachli.core.ui.BindingHolder import app.pachli.databinding.ItemStatusEditBinding import app.pachli.interfaces.LinkListener -import app.pachli.util.BindingHolder import app.pachli.util.aspectRatios import app.pachli.util.setClickableText import app.pachli.viewdata.PollOptionViewData diff --git a/app/src/main/java/app/pachli/components/viewthread/edits/ViewEditsFragment.kt b/app/src/main/java/app/pachli/components/viewthread/edits/ViewEditsFragment.kt index c0d33d8cc..2c270a969 100644 --- a/app/src/main/java/app/pachli/components/viewthread/edits/ViewEditsFragment.kt +++ b/app/src/main/java/app/pachli/components/viewthread/edits/ViewEditsFragment.kt @@ -113,7 +113,7 @@ class ViewEditsFragment : when (uiState.throwable) { is ViewEditsViewModel.MissingEditsException -> { binding.statusView.setup( - R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, R.string.error_missing_edits, ) } diff --git a/app/src/main/java/app/pachli/fragment/SFragment.kt b/app/src/main/java/app/pachli/fragment/SFragment.kt index 2ac6af415..9e97da3b8 100644 --- a/app/src/main/java/app/pachli/fragment/SFragment.kt +++ b/app/src/main/java/app/pachli/fragment/SFragment.kt @@ -129,7 +129,7 @@ abstract class SFragment : Fragment(), StatusActionListener Timber.e(msg) try { Snackbar.make(requireView(), msg, Snackbar.LENGTH_INDEFINITE) - .setAction(R.string.action_retry) { serverRepository.retry() } + .setAction(app.pachli.core.ui.R.string.action_retry) { serverRepository.retry() } .show() } catch (e: IllegalArgumentException) { // On rare occasions this code is running before the fragment's @@ -433,7 +433,7 @@ abstract class SFragment : Fragment(), StatusActionListener val result = timelineCases.delete(viewData.status.id).exceptionOrNull() if (result != null) { Timber.w(result, "error deleting status") - Toast.makeText(context, R.string.error_generic, Toast.LENGTH_SHORT).show() + Toast.makeText(context, app.pachli.core.ui.R.string.error_generic, Toast.LENGTH_SHORT).show() } // XXX: Removes the item even if there was an error. This is probably not // correct (see similar code in showConfirmEditDialog() which only @@ -479,7 +479,7 @@ abstract class SFragment : Fragment(), StatusActionListener }, { error: Throwable? -> Timber.w(error, "error deleting status") - Toast.makeText(context, R.string.error_generic, Toast.LENGTH_SHORT) + Toast.makeText(context, app.pachli.core.ui.R.string.error_generic, Toast.LENGTH_SHORT) .show() }, ) diff --git a/app/src/main/java/app/pachli/fragment/ViewVideoFragment.kt b/app/src/main/java/app/pachli/fragment/ViewVideoFragment.kt index 92d1f07e3..f3cc8ad4b 100644 --- a/app/src/main/java/app/pachli/fragment/ViewVideoFragment.kt +++ b/app/src/main/java/app/pachli/fragment/ViewVideoFragment.kt @@ -244,7 +244,7 @@ class ViewVideoFragment : ViewMediaFragment() { error.cause?.message ?: error.message, ) Snackbar.make(binding.root, message, Snackbar.LENGTH_INDEFINITE) - .setAction(R.string.action_retry) { player?.prepare() } + .setAction(app.pachli.core.ui.R.string.action_retry) { player?.prepare() } .show() } } diff --git a/app/src/main/java/app/pachli/receiver/SendStatusBroadcastReceiver.kt b/app/src/main/java/app/pachli/receiver/SendStatusBroadcastReceiver.kt index 50e817280..43439e0c2 100644 --- a/app/src/main/java/app/pachli/receiver/SendStatusBroadcastReceiver.kt +++ b/app/src/main/java/app/pachli/receiver/SendStatusBroadcastReceiver.kt @@ -83,7 +83,7 @@ class SendStatusBroadcastReceiver : BroadcastReceiver() { .setGroup(senderFullName) .setDefaults(0) // So it doesn't ring twice, notify only in Target callback - builder.setContentTitle(context.getString(R.string.error_generic)) + builder.setContentTitle(context.getString(app.pachli.core.ui.R.string.error_generic)) builder.setContentText(context.getString(R.string.error_sender_account_gone)) builder.setSubText(senderFullName) diff --git a/app/src/main/java/app/pachli/service/SendStatusService.kt b/app/src/main/java/app/pachli/service/SendStatusService.kt index e83a6b848..fb9b92cbf 100644 --- a/app/src/main/java/app/pachli/service/SendStatusService.kt +++ b/app/src/main/java/app/pachli/service/SendStatusService.kt @@ -28,6 +28,7 @@ import app.pachli.components.compose.UploadEvent import app.pachli.components.drafts.DraftHelper import app.pachli.components.notifications.pendingIntentFlags import app.pachli.core.accounts.AccountManager +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.designsystem.R as DR import app.pachli.core.navigation.MainActivityIntent import app.pachli.core.network.model.Attachment @@ -36,7 +37,6 @@ import app.pachli.core.network.model.NewPoll import app.pachli.core.network.model.NewStatus import app.pachli.core.network.model.Status import app.pachli.core.network.retrofit.MastodonApi -import app.pachli.util.unsafeLazy import at.connyduck.calladapter.networkresult.fold import dagger.hilt.android.AndroidEntryPoint import java.io.IOException diff --git a/app/src/main/java/app/pachli/updatecheck/UpdateCheck.kt b/app/src/main/java/app/pachli/updatecheck/UpdateCheck.kt index b34677a8d..cd4d3cfc2 100644 --- a/app/src/main/java/app/pachli/updatecheck/UpdateCheck.kt +++ b/app/src/main/java/app/pachli/updatecheck/UpdateCheck.kt @@ -28,7 +28,7 @@ import app.pachli.core.common.util.AbsoluteTimeFormatter import app.pachli.core.designsystem.R as DR import app.pachli.core.preferences.PrefKeys import app.pachli.core.preferences.SharedPreferencesRepository -import app.pachli.core.ui.await +import app.pachli.core.ui.extensions.await import app.pachli.updatecheck.UpdateCheckResult.AT_LATEST import app.pachli.updatecheck.UpdateCheckResult.DIALOG_SHOWN import app.pachli.updatecheck.UpdateCheckResult.IGNORED diff --git a/app/src/main/java/app/pachli/usecase/TimelineCases.kt b/app/src/main/java/app/pachli/usecase/TimelineCases.kt index 0e3b03290..7fab5478c 100644 --- a/app/src/main/java/app/pachli/usecase/TimelineCases.kt +++ b/app/src/main/java/app/pachli/usecase/TimelineCases.kt @@ -27,13 +27,13 @@ import app.pachli.appstore.PollVoteEvent import app.pachli.appstore.ReblogEvent import app.pachli.appstore.StatusDeletedEvent import app.pachli.components.timeline.CachedTimelineRepository +import app.pachli.core.network.extensions.getServerErrorMessage import app.pachli.core.network.model.DeletedStatus import app.pachli.core.network.model.Poll import app.pachli.core.network.model.Relationship import app.pachli.core.network.model.Status import app.pachli.core.network.model.Translation import app.pachli.core.network.retrofit.MastodonApi -import app.pachli.util.getServerErrorMessage import app.pachli.viewdata.StatusViewData import at.connyduck.calladapter.networkresult.NetworkResult import at.connyduck.calladapter.networkresult.fold diff --git a/app/src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt b/app/src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt index f25005b51..b3b92f1d0 100644 --- a/app/src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt +++ b/app/src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt @@ -318,7 +318,7 @@ class ListStatusAccessibilityDelegate( private val openProfileAction = AccessibilityActionCompat( R.id.action_open_profile, - context.getString(R.string.action_view_profile), + context.getString(app.pachli.core.ui.R.string.action_view_profile), ) private val linksAction = AccessibilityActionCompat( @@ -353,7 +353,7 @@ class ListStatusAccessibilityDelegate( private val moreAction = AccessibilityActionCompat( R.id.action_more, - context.getString(R.string.action_more), + context.getString(app.pachli.core.ui.R.string.action_more), ) private data class LinkSpanInfo(val text: String, val link: String) diff --git a/app/src/main/java/app/pachli/util/SpanUtils.kt b/app/src/main/java/app/pachli/util/SpanUtils.kt index bbdcf3003..81143d1c9 100644 --- a/app/src/main/java/app/pachli/util/SpanUtils.kt +++ b/app/src/main/java/app/pachli/util/SpanUtils.kt @@ -1,19 +1,12 @@ package app.pachli.util -import android.content.Context -import android.os.Build import android.text.Spannable -import android.text.SpannableStringBuilder import android.text.Spanned import android.text.style.CharacterStyle -import android.text.style.DynamicDrawableSpan import android.text.style.ForegroundColorSpan -import android.text.style.ImageSpan import android.text.style.URLSpan import app.pachli.core.ui.MentionSpan import app.pachli.core.ui.NoUnderlineURLSpan -import com.mikepenz.iconics.IconicsDrawable -import com.mikepenz.iconics.typeface.library.googlematerial.GoogleMaterial import java.util.regex.Pattern import kotlin.math.max @@ -97,30 +90,6 @@ fun highlightSpans(text: Spannable, colour: Int) { } } -/** - * Replaces text of the form [iconics name] with their spanned counterparts (ImageSpan). - */ -fun addDrawables(text: CharSequence, color: Int, size: Int, context: Context): Spannable { - val alignment = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) DynamicDrawableSpan.ALIGN_CENTER else DynamicDrawableSpan.ALIGN_BASELINE - - val builder = SpannableStringBuilder(text) - - val pattern = Pattern.compile("\\[iconics ([0-9a-z_]+)\\]") - val matcher = pattern.matcher(builder) - while (matcher.find()) { - val resourceName = matcher.group(1) - ?: continue - - val drawable = IconicsDrawable(context, GoogleMaterial.getIcon(resourceName)) - drawable.setBounds(0, 0, size, size) - drawable.setTint(color) - - builder.setSpan(ImageSpan(drawable, alignment), matcher.start(), matcher.end(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE) - } - - return builder -} - private fun clearSpans(text: Spannable, spanClass: Class) { for (span in text.getSpans(0, text.length, spanClass)) { text.removeSpan(span) diff --git a/app/src/main/java/app/pachli/util/ThrowableExtensions.kt b/app/src/main/java/app/pachli/util/ThrowableExtensions.kt deleted file mode 100644 index 6b5f9b423..000000000 --- a/app/src/main/java/app/pachli/util/ThrowableExtensions.kt +++ /dev/null @@ -1,49 +0,0 @@ -package app.pachli.util - -import android.content.Context -import app.pachli.R -import java.io.IOException -import org.json.JSONException -import org.json.JSONObject -import retrofit2.HttpException - -/** - * checks if this throwable indicates an error causes by a 4xx/5xx server response and - * tries to retrieve the error message the server sent - * @return the error message, or null if this is no server error or it had no error message - */ -fun Throwable.getServerErrorMessage(): String? { - if (this is HttpException) { - val errorResponse = response()?.errorBody()?.string() - return if (!errorResponse.isNullOrBlank()) { - try { - JSONObject(errorResponse).getString("error") - } catch (e: JSONException) { - null - } - } else { - null - } - } - return null -} - -/** @return A drawable resource to accompany the error message for this throwable */ -fun Throwable.getDrawableRes(): Int = when (this) { - is IOException -> R.drawable.errorphant_offline - is HttpException -> { - if (this.code() == 404) { - R.drawable.elephant_friend_empty - } else { - R.drawable.errorphant_offline - } - } - else -> R.drawable.errorphant_error -} - -/** @return A string error message for this throwable */ -fun Throwable.getErrorString(context: Context): String = getServerErrorMessage() ?: when (this) { - is IOException -> context.getString(R.string.error_network_fmt, this.message) - is HttpException -> if (this.code() == 404) context.getString(R.string.error_404_not_found_fmt, this.message) else context.getString(R.string.error_generic_fmt, this.message) - else -> context.getString(R.string.error_generic_fmt, this.message) -} diff --git a/app/src/main/java/app/pachli/view/BackgroundMessageView.kt b/app/src/main/java/app/pachli/view/BackgroundMessageView.kt deleted file mode 100644 index 605c8b09f..000000000 --- a/app/src/main/java/app/pachli/view/BackgroundMessageView.kt +++ /dev/null @@ -1,76 +0,0 @@ -package app.pachli.view - -import android.content.Context -import android.text.method.LinkMovementMethod -import android.util.AttributeSet -import android.view.Gravity -import android.view.LayoutInflater -import android.view.View -import android.widget.LinearLayout -import android.widget.TextView -import androidx.annotation.DrawableRes -import androidx.annotation.StringRes -import app.pachli.R -import app.pachli.core.common.extensions.visible -import app.pachli.databinding.ViewBackgroundMessageBinding -import app.pachli.util.addDrawables -import app.pachli.util.getDrawableRes -import app.pachli.util.getErrorString - -/** - * This view is used for screens with content which may be empty or might have failed to download. - */ -class BackgroundMessageView @JvmOverloads constructor( - context: Context, - attrs: AttributeSet? = null, - defStyleAttr: Int = 0, -) : LinearLayout(context, attrs, defStyleAttr) { - - private val binding = ViewBackgroundMessageBinding.inflate(LayoutInflater.from(context), this) - - init { - gravity = Gravity.CENTER_HORIZONTAL - orientation = VERTICAL - - if (isInEditMode) { - setup(R.drawable.errorphant_offline, R.string.error_network) {} - } - } - - fun setup(throwable: Throwable, listener: ((v: View) -> Unit)? = null) { - setup(throwable.getDrawableRes(), throwable.getErrorString(context), listener) - } - - fun setup( - @DrawableRes imageRes: Int, - @StringRes messageRes: Int, - clickListener: ((v: View) -> Unit)? = null, - ) = setup(imageRes, context.getString(messageRes), clickListener) - - /** - * Setup image, message and button. - * If [clickListener] is `null` then the button will be hidden. - */ - fun setup( - @DrawableRes imageRes: Int, - message: String, - clickListener: ((v: View) -> Unit)? = null, - ) { - binding.messageTextView.text = message - binding.messageTextView.movementMethod = LinkMovementMethod.getInstance() - binding.imageView.setImageResource(imageRes) - binding.button.setOnClickListener(clickListener) - binding.button.visible(clickListener != null) - } - - fun showHelp(@StringRes helpRes: Int) { - val size: Int = binding.helpText.textSize.toInt() + 2 - val color = binding.helpText.currentTextColor - val text = context.getText(helpRes) - val textWithDrawables = addDrawables(text, color, size, context) - - binding.helpText.setText(textWithDrawables, TextView.BufferType.SPANNABLE) - - binding.helpText.visible(true) - } -} diff --git a/app/src/main/java/app/pachli/viewmodel/EditProfileViewModel.kt b/app/src/main/java/app/pachli/viewmodel/EditProfileViewModel.kt index fd1ec6993..69d7c2dde 100644 --- a/app/src/main/java/app/pachli/viewmodel/EditProfileViewModel.kt +++ b/app/src/main/java/app/pachli/viewmodel/EditProfileViewModel.kt @@ -27,6 +27,7 @@ import app.pachli.appstore.ProfileEditedEvent import app.pachli.core.common.string.randomAlphanumericString import app.pachli.core.data.model.InstanceInfo import app.pachli.core.data.repository.InstanceInfoRepository +import app.pachli.core.network.extensions.getServerErrorMessage import app.pachli.core.network.model.Account import app.pachli.core.network.model.StringField import app.pachli.core.network.retrofit.MastodonApi @@ -34,7 +35,6 @@ import app.pachli.util.Error import app.pachli.util.Loading import app.pachli.util.Resource import app.pachli.util.Success -import app.pachli.util.getServerErrorMessage import at.connyduck.calladapter.networkresult.fold import dagger.hilt.android.lifecycle.HiltViewModel import java.io.File diff --git a/app/src/main/res/layout-sw640dp/fragment_timeline.xml b/app/src/main/res/layout-sw640dp/fragment_timeline.xml index 6d138b96d..69f649a1e 100644 --- a/app/src/main/res/layout-sw640dp/fragment_timeline.xml +++ b/app/src/main/res/layout-sw640dp/fragment_timeline.xml @@ -24,7 +24,7 @@ android:layout_height="match_parent" android:scrollbars="vertical" /> - - - - - - - - - - - - - - - - - + android:visibility="gone" /> diff --git a/app/src/main/res/layout/fragment_view_thread.xml b/app/src/main/res/layout/fragment_view_thread.xml index 4e980e814..f3dfd175e 100644 --- a/app/src/main/res/layout/fragment_view_thread.xml +++ b/app/src/main/res/layout/fragment_view_thread.xml @@ -35,7 +35,7 @@ android:background="?android:attr/colorBackground" android:scrollbars="vertical" /> - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index d4a196f50..d361dac97 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -1,7 +1,5 @@ - وقع هناك خطأ. - حدث خطأ في الشبكة! يرجى التحقق من اتصالك ثم أعد المحاولة! لا يجب أن يترك هذا الحقل فارغا. تعذر العثور على متصفح ويب صالح للإستعمال. إنّ المنشور طويل جدا! @@ -39,7 +37,6 @@ اعرض أقل توسيع تصغير - لا شيء هنا. لا يوجد شيء هنا. إسحب إلى أسفل للإنعاش! شارك %s منشورك أعجِب %s بمنشورك @@ -52,7 +49,6 @@ إزالة المشاركة تفضيل إزالة المفضلة - المزيد حرر خروج متأكد مِن أنك تود الخروج من الحساب %1$s؟ @@ -66,8 +62,6 @@ إحذف بَوّق بوّق! - أعد المحاولة - الملف التعريفي التفضيلات اعدادات الحساب المفضلة @@ -238,16 +232,6 @@ العبارة التي يلزم تصفيتها إضافة حساب إضافة حساب ماستدون جديد - القوائم - %2$s: \"%1$s\" لا يمكن إنشاء قائمة - %2$s: \"%1$s\" لا يمكن إعادة تسمية القائمة - %2$s: \"%1$s\" لا يمكن حذف القائمة - إنشاء قائمة - إعادة تسمية القائمة - حذف القائمة - البحث عن أشخاص قصد متابعتهم - إضافة الحساب إلى القائمة - إزالة الحساب مِن القائمة النشر بإسم %1$s وصف لضعاف البصر @@ -309,7 +293,6 @@ غير مُدرَج المتابِعون مباشر - اسم القائمة حذف وإعادة الصياغة إظهار صاحب المشاركة افتح الوسيط #%d @@ -398,7 +381,6 @@ تنشيط الصور المتحركة GIF للحسابات واصل العودة - تم تم الابلاغ عن @%s بنجاح تعليقات إضافية أعد تحويله إلى %s @@ -471,7 +453,6 @@ إلغاء كتم %s إخفاء عنوان شريط الأدوات العلوي الاعلانات - أتريد حقا حذف القائمة %s؟ فشلت عملية إرسال التبويق! حُذفَت المسودة اشترك @@ -523,7 +504,6 @@ اضغط على الدائرة أو اسحبها لاختيار النقطة المحورية التي ستكون مرئية دائمًا في الصور المصغرة. حفظ المسودة؟ (سيتم رفع المرفقات مرة أخرى عند استعادة المسودة.) لديك تعديلات لم تحفظ. - ليس لديك أي قوائم. عدَّلَ %s شكوى جديدة عن %s عدّله %1$s @@ -537,8 +517,6 @@ \nلن تتأثر الاشعارات، ولكن يمكنك مراجعة اعدادات الاشعارات يدويا. #%s الغاء متابعة المنفذ (port) يجب ان يكون بين %d و %d - إضافة أو إزالة من القائمة - فشل إضافة الحساب إلى القائمة تم تعديله (لا تعديل) إظهار اسم المستخدم في أشرطة الأدوات @@ -585,7 +563,6 @@ تم نسخ اسم المستخدم عند تسجيل الدخول إلى حسابات متعددة الآن - فشل إزالة الحساب من القائمة الغاء متابعة #%s ؟ كتم الاشعارات خطأ في متابعة %s# @@ -634,16 +611,13 @@ المنشورات الشائعة %1$s %2$s إدارة القوائم - وقع خطأ في الشبكة: %s أتريد حفظ التغييرات التي طرأت على ملفك الشخصي؟ - وقع خطأ: %s فشل إجراء إضافة المنشور إلى الفواصل المرجعية: %s غير معروف دائما اخفق التحميل: %s أبدًا %s (الكلمةكاملة) - إنعاش إضافة كلمة مفتاحية كلمات مفتاحية أو عبارات للتصفية الوصف @@ -653,12 +627,10 @@ إخفاء تماما %s: %s صورة - خادمك لا يدعم هذه الميزة: %1$s إخفاء العنوان عائلة الخطوط إشعارات عندما يعمل Pachli (باكلي) في الخلفية - إخفاء مِن الخيط الرئيس إظهار على أي حال خطأ في تحميل القوائم ترجمة diff --git a/app/src/main/res/values-be/strings.xml b/app/src/main/res/values-be/strings.xml index 7228bc737..5a55e4c19 100644 --- a/app/src/main/res/values-be/strings.xml +++ b/app/src/main/res/values-be/strings.xml @@ -2,8 +2,6 @@ Не можа быць пустым. Браўзер не знойдзены. - Здарылася памылка. - Здарылася сеткавая памылка! Калі ласка, праверце злучэнне і паспрабуйце зноў! Допіс занадта доўгі! Памер відэа- ды аўдыяфайлаў не можа перавышаць %s Мб. Немагчыма запампаваць файл гэтага тыпу. @@ -55,7 +53,6 @@ Паказаць менш Згарнуць Рэдагаваны %s - Тут нічога няма. Тут нічога няма. Пацягніце ўніз, каб абнавіць! %s пашырыў(-ла) ваш допіс %s падабаўся ваш допіс @@ -173,7 +170,6 @@ Заблакаваны ўліковы запіс Выдаліць з закладак - Разгарнуць Напісаць Выхад Вы ўпэўнены, што жадаеце выйсці з уліковага запісу %1$s\? @@ -189,8 +185,6 @@ Выдаліць і перастварыць ПАШЫРЫЦЬ ПАШЫРЫЦЬ! - Паўтарыць - Профіль Налады Налады ўліковага запісу Абраныя @@ -320,10 +314,7 @@ Цэлае слова Калі ключавое слова ці фраза складаецца толькі з літар і лічбаў, то будзе ўлічвацца толькі ўсё слова Рэдагаванні - Не атрымалася дадаць уліковы запіс у спіс - Дадаць ці выдаліць са спіса %s (%s) - Дадаць уліковы запіс у спіс Апісанне змесціва для людзей з дэфектам зроку (ліміт у %d сімвал) Апісанне змесціва для людзей з дэфектам зроку (ліміт у %d сімвалы) @@ -340,15 +331,12 @@ %1$s, %2$s і яшчэ %3$d Скасаваць змены Працягнуць рэдагаванне - Пошук сярод вашых падпісак Дадаць уліковы запіс - Выдаліць уліковы запіс са спіса Публікаваць як %1$s Націсніце або перацягніце кола каб абраць пункт фокусу, які будзе заўсёды бачны на паменшаных выявах. Задаць подпіс Задаць пункт фокуса Рэдагаваць выяву - Не атрымалася выдаліць уліковы запіс са спіса Дасыланне допісаў Пазней @@ -361,13 +349,6 @@ Метазвесткі профілю Упадабалі Дадаць уліковы запіс Mastodon - Спісы - Не атрымалася стварыць спіс \"%1$s\": %2$s - Не атрымалася перайменаваць спіс \"%1$s\": %2$s - Не атрымалася выдаліць спіс \"%1$s\": %2$s - Стварыць спіс - Перайменаваць спіс - Выдаліць спіс Фільтраваць фразу Выдаліць Заблакаваць уліковы запіс @@ -410,7 +391,6 @@ Асабіста Не ў стужках Хэштэгі - Назва спіса Дадаць хэштэг Пашырана Апытанне з варыянтамі: %1$s, %2$s, %3$s, %4$s; %5$s @@ -430,7 +410,6 @@ Стварыць Вы ўпэўнены, што жадаеце выдаліць усе апавяшчэнні\? Дзеянні для выявы %s - Гатова Скарга на @%s адпраўлена Дадатковыя каментары Уліковыя запісы @@ -539,7 +518,6 @@ Захоўваю чарнавік… Допіс, для якога Вы стварылі чарнавік адказу, выдалены Нягледзячы на тое што Ваш уліковы запіс не закрыты, кіраўнікі %1$s вырашылі, што Вы, магчыма, пажадаеце праглядзець запыты на падпіску ад гэтых уліковых запісаў уручную. - У Вас няма спісаў. У Вас няма чарнавікоў. У Вас няма запланаваных допісаў. Няма аб\'яў. @@ -552,7 +530,6 @@ Вы не можаце запампаваць больш за %1$d медыя далучэнняў. Вы не можаце запампаваць больш за %1$d медыя далучэнняў. - Вы ўпэўнены, што жадаеце выдаліць спіс %s\? Абмежаванне апавяшчэнняў у стужцы Схаваць колькасную статыстыку допісаў Схаваць колькасную статыстыку профіляў @@ -588,7 +565,6 @@ Можа падтрымліваць дадатковыя метады праверкі сапраўднасці, але для гэтага патрэбны адпаведны браузер. Апісанне Відарыс - Абнавіць Яшчэ няма спісаў Кіраванне спісамі Памылка загрузкі спісаў diff --git a/app/src/main/res/values-ber/strings.xml b/app/src/main/res/values-ber/strings.xml index 83e29f5c8..2c1c856b9 100644 --- a/app/src/main/res/values-ber/strings.xml +++ b/app/src/main/res/values-ber/strings.xml @@ -6,9 +6,6 @@ ⴰⵒⵕⵓⴽⵙⵉ ⵉⵎⵙⴻⵇⴷⴰⵛⴻⵏ ⵜⵙⵡⴰⵃⵍⴻⵎ ⵉⵙⵎⴻⵏⵢⵉⴼⴻⵏ - ⴰⵎⴻⵖⵏⵓ - ⵝⴻⵍⵍⴰ ⴷ ⵝⵓⵛⴹⴰ. - ⵝⴰⴲⴸⴰⵔⵉⵏ ⵡⴻⵏⵏⴻⵣ ⵝⵉⴽⴻⵍⵜ ⵏⵏⵉⴸⴻⵏ ⵏⴰⴸⵉ ⵣⵔⴻⴳ ⴰⵎⴰⵖⵏⵓ diff --git a/app/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml index 430f7935c..2c78cea47 100644 --- a/app/src/main/res/values-bg/strings.xml +++ b/app/src/main/res/values-bg/strings.xml @@ -18,7 +18,6 @@ Препращане към %s Допълнителни коментари Успешно докладване на @%s - Готово Назад Продължаване @@ -64,7 +63,6 @@ Хаштагове Хаштаг без # Добавяне на хаштаг - Име на списък Анкета с избори: %1$s, %2$s, %3$s, %4$s; %5$s Директно Последователи @@ -126,16 +124,6 @@ \n(%d ограничение на знаците) Публикуване с акаунт %1$s - Премахване на акаунт от списъка - Добавяне на акаунт към списъка - Търсене на хора, които следвате - Изтриване на списъка - Преименуване на списъка - Създаване на списък - Списъкът не можа да се изтрие \"%1$s\": %2$s - Списъкът не можа да се създаде \"%1$s\": %2$s - Списъкът не можа да се преименува \"%1$s\": %2$s - Списъци Добавяне на нов Mastodon акаунт Добавяне на акаунт Фраза за филтриране @@ -307,8 +295,6 @@ Любими Предпочитания за акаунт Предпочитания - Профил - Повторен опит ПУБЛИКУВАНЕ! ИЗПРАЩАНЕ Изтриване и преработване @@ -324,7 +310,6 @@ Сигурни ли сте, че искате да излезете от акаунта %1$s\? Излизане Композиране - Още Премахване от любими Отмятане Поставяне в любими @@ -340,7 +325,6 @@ %s постави вашата публикация в любими %s сподели вашата публикация Нищо тук. Дръпнете надолу, за да опресните! - Нищо тук. Свиване Разгъване Покажи по-малко @@ -380,12 +364,9 @@ Състоянието е твърде дълго! Неуспешно намиране на уеб браузър, който да се използва. Това не може да бъде празно. - Възникна грешка в мрежата! Моля, проверете връзката си и опитайте отново! - Възникна грешка. Черновата е изтрита Неуспешно зареждане на информация за отговор Тази публикация не успя да се изпрати! - Наистина ли искате да изтриете списъка %s\? Не можете да качите повече от %1$d мултимедийни прикачени файлове. diff --git a/app/src/main/res/values-bn-rBD/strings.xml b/app/src/main/res/values-bn-rBD/strings.xml index c69d5341f..89243c186 100644 --- a/app/src/main/res/values-bn-rBD/strings.xml +++ b/app/src/main/res/values-bn-rBD/strings.xml @@ -50,16 +50,6 @@ \n(%d অক্ষর সীমা) অ্যাকাউন্ট %1$s থেকে পোস্ট করা হচ্ছে - তালিকা থেকে অ্যাকাউন্ট সরান - তালিকায় অ্যাকাউন্ট যোগ করুন - আপনি অনুসরণ মানুষের জন্য অনুসন্ধান করুন - তালিকা মুছে দিন - তালিকা পুনঃ নামকরণ কর - একটি তালিকা তৈরি করুন - তালিকা মুছে ফেলা যায়নি \"%1$s\": %2$s - তালিকা নামকরণ করা যায়নি \"%1$s\": %2$s - তালিকা তৈরি করা যায়নি \"%1$s\": %2$s - তালিকাসমূহ নতুন ম্যাস্টোডোন অ্যাকাউন্ট যোগ করুন অ্যাকাউন্ট যোগ করুন বাক্য ফিল্টার কর @@ -216,8 +206,6 @@ প্রিয়গুলি অ্যাকাউন্টের পছন্দসমূহ পছন্দসমূহ - প্রোফাইল - পুনরায় চেষ্টা কর টুট! টুট মুছুন এবং পুনরায় ড্রাফট কর @@ -232,7 +220,6 @@ আপনি কি অ্যাকাউন্ট %1$s থেকে লগ আউট করতে চান\? লগ আউট রচনা - অধিক পছন্দ সরান পছন্দ সমর্থন সরান @@ -242,7 +229,6 @@ অতিরিক্ত মন্তব্যগুলি\? রিপোর্ট @%s এখানে কিছু নেই. রিফ্রেশ করতে নিচে টানুন! - এখানে কিছুই নেই। বন্ধ বিস্তৃত প্রদর্শন কম @@ -325,7 +311,6 @@ \'%s এ ফরওয়ার্ড করুন\' অতিরিক্ত মন্তব্যগুলি \'%s এ সফলভাবে রিপোর্ট করা হয়েছে\' - সম্পন্ন পিছাও চালিয়ে যাও আপনি তৈরি একটি নির্বাচন শেষ হয়েছে @@ -342,7 +327,6 @@ ফিল্টার পরিষ্কার # ছাড়া হ্যাশট্যাগ - নামের তালিকা প্রিয়গুলো অনুগামিবৃন্দ অনুসরণ @@ -366,8 +350,6 @@ এই স্টেটাস টি খুব দীর্ঘ! ব্যবহার করার জন্য একটি ওয়েব ব্রাউজার খুঁজে পাওয়া যায়নি। এই জায়গা খালি হতে পারে না। - একটি নেটওয়ার্ক ত্রুটি ঘটেছে! আপনার সংযোগ পরীক্ষা করে আবার চেষ্টা করুন! - একটি ত্রুটি ঘটেছে। %1$sটি পছন্দ %1$sটি পছন্দ diff --git a/app/src/main/res/values-bn-rIN/strings.xml b/app/src/main/res/values-bn-rIN/strings.xml index 08bc24dbb..6b3c31b0d 100644 --- a/app/src/main/res/values-bn-rIN/strings.xml +++ b/app/src/main/res/values-bn-rIN/strings.xml @@ -1,7 +1,5 @@ - একটি ত্রুটি ঘটেছে। - একটি নেটওয়ার্ক ত্রুটি ঘটেছে! আপনার সংযোগ পরীক্ষা করে আবার চেষ্টা করুন! এই জায়গা খালি হতে পারে না। ব্যবহার করার জন্য একটি ওয়েব ব্রাউজার খুঁজে পাওয়া যায়নি। এই স্টেটাস টি খুব দীর্ঘ! @@ -39,7 +37,6 @@ প্রদর্শন কম বিস্তৃত বন্ধ - এখানে কিছুই নেই। এখানে কিছু নেই. রিফ্রেশ করতে নিচে টানুন! %s সমর্থন দিয়েছে %s আপনার টুট পছন্দ করেছে @@ -52,7 +49,6 @@ সমর্থন সরান পছন্দ পছন্দ সরান - অধিক রচনা লগ আউট আপনি কি অ্যাকাউন্ট %1$s থেকে লগ আউট করতে চান\? @@ -67,8 +63,6 @@ মুছুন এবং পুনরায় ড্রাফট কর টুট টুট! - পুনরায় চেষ্টা করা - প্রোফাইল পছন্দসমূহ অ্যাকাউন্টের পছন্দসমূহ প্রিয়গুলো @@ -244,16 +238,6 @@ বাক্য ফিল্টার কর অ্যাকাউন্ট যোগ করুন নতুন ম্যাস্টোডোন অ্যাকাউন্ট যোগ করুন - তালিকাসমূহ - তালিকা তৈরি করা যায়নি \"%1$s\": %2$s - তালিকা নামকরণ করা যায়নি \"%1$s\": %2$s - তালিকা মুছে ফেলা যায়নি \"%1$s\": %2$s - একটি তালিকা তৈরি করুন - তালিকা পুনঃ নামকরণ কর - তালিকা মুছে দিন - আপনি অনুসরণ মানুষের জন্য অনুসন্ধান করুন - তালিকায় অ্যাকাউন্ট যোগ করুন - তালিকা থেকে অ্যাকাউন্ট সরান অ্যাকাউন্ট %1$s থেকে পোস্ট করা হচ্ছে দৃষ্টি প্রতিবন্ধী জন্য বর্ণনা করুন @@ -315,7 +299,6 @@ অনুগামিবৃন্দ সরাসরি পছন্দগুলি সহ নর্বাচন: %1$s, %2$s, %3$s, %4$s; %5$s - নামের তালিকা # ছাড়া হ্যাশট্যাগ পরিষ্কার ফিল্টার @@ -332,7 +315,6 @@ আপনি তৈরি একটি নির্বাচন শেষ হয়েছে চালিয়ে যাও পিছাও - সম্পন্ন %s এ সফলভাবে রিপোর্ট করা হয়েছে অতিরিক্ত মন্তব্যগুলি %s এ ফরওয়ার্ড করুন diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml index 264c46a5e..82f9c9365 100644 --- a/app/src/main/res/values-ca/strings.xml +++ b/app/src/main/res/values-ca/strings.xml @@ -1,6 +1,5 @@ - S\'ha produït un error. Això no pot estar buit. No s\'ha trobat cap navegador web per a utilitzar. La publicació és massa llarga! @@ -39,7 +38,6 @@ Respon Impulsa Preferit - Més Escriure Tanca sessió Segueix @@ -50,8 +48,6 @@ Elimina PUBLICA PUBLICA! - Torna a intentar-ho - Perfil Preferències Preferits Usuaris silenciats @@ -169,9 +165,7 @@ Preferències del compte Edita Missatges directes - No hi ha res aquí. Elimina l\'impuls - S\'ha produït un error de connexió! Comproveu la connexió i torneu-ho a provar! Multimèdia amagada Amaga Estàs segur de tancar la sessió de %1$s\? @@ -238,16 +232,6 @@ Actualització Frase per filtrar Afegir un compte de Mastodont - Llistes - És impossible crear la llista \"%1$s\": %2$s - Impossible reanomenar la llista \"%1$s\": %2$s - És impossible suprimir la llista \"%1$s\": %2$s - Crear una llista - Reanomenar la llista - Suprimir la llista - Cercar persones que segueixes - Afegir un compte a la llista - Suprimir un compte de la llista "Publicar com a %1$s" Descriu per a persones amb discapacitat visual @@ -306,7 +290,6 @@ Sense llistar Seguidors Directe - Nom de la llista Hashtag sense # Netejar Filtrar @@ -341,7 +324,6 @@ Enquesta amb opcions: %1$s, %2$s, %3$s, %4$s; %5$s Continuar Enrere - Fet Comentaris addicionals Reenviar a %s Report erroni @@ -440,7 +422,6 @@ S\'ha eliminat l\'esborrany No s\'ha pogut carregar la informació de la resposta No s\'ha pogut publicar! - Segur que voleu esborrar la llista %s\? No podeu penjar més de %1$d fitxers adjunts multimèdia. No podeu penjar més de %1$d fitxers adjunts multimèdia. @@ -448,10 +429,8 @@ Amaga les estadístiques quantitatives dels perfils Amaga les estadístiques quantitatives de les publicacions Limita les notificacions de la cronologia - Afegeix o elimina de la llista %s (%s) Vols suprimir aquesta conversa\? - No s\'ha pogut afegir el compte a la llista Els fitxers de vídeo i àudio no poden superar la mida de %s MB. La imatge no s\'ha pogut editar. Descartar @@ -523,7 +502,6 @@ Tot i que el vostre compte no està bloquejat, el personal de %1$s va pensar que potser voldreu revisar les sol·licituds de seguiment d\'aquests comptes manualment. Altres 30 dies - No s\'ha pogut eliminar el compte de la llista 60 dies 90 dies (Sense canvis) @@ -537,7 +515,6 @@ Estableix el punt d\'enfocament Funciona en la majoria dels casos. No es filtra cap dada a altres aplicacions. Pot ser compatible amb mètodes d\'autenticació addicionals, però requereix un navegador compatible. - No tens cap llista. Vols suprimir aquesta publicació programada\? %s (%s) Incompliment de la regla @@ -567,7 +544,6 @@ Total de comptes Segueix hashtag #hashtag - Actualitzar Desconegut Filtrat: %s Perfils diff --git a/app/src/main/res/values-ckb/strings.xml b/app/src/main/res/values-ckb/strings.xml index 89b8763b6..62182cf2d 100644 --- a/app/src/main/res/values-ckb/strings.xml +++ b/app/src/main/res/values-ckb/strings.xml @@ -63,8 +63,6 @@ بەدڵبوونەکان پەسەندکراوەکانی ئەژمێر پەسەندەکان - پرۆفایل - دووبارە هەوڵ بدە توت! توت سڕینەوە و دووبارە-ڕەشنووس @@ -80,7 +78,6 @@ ئایا دڵنیایت لەوەی دەتەوێت بچیتەدەرەوە لە هەژماری %1$s؟ چوونەدەرەوە دروستکردن - زیاتر لابردنی دڵخوازەکان نیشانه دڵخواز @@ -96,7 +93,6 @@ %s خۆشترین توتەکەت %s توتەکەتی بەرزکردەوە هیچ شتێک لێرە نیە ڕاکە خوارەوە بۆ نوێکردنەوە! - هیچ شتێک لێرە نیە. نوشتانەوە فراوانکردن کەمتر نیشان بدە @@ -137,8 +133,6 @@ ئەم نووسینە زۆر درێژە! نەیتوانی وێبگەڕبدۆزێتەوە بۆ بەکارهێنان. ناکرێت ئەمە بەتاڵ بێت. - هەڵەیەک لە پەیوەندییەکەدا ڕوویدا. تکایە دڵنیا ببەوە لە بەردەستبوونی هێڵی ئینتەرنێت. - هەڵەیەک ڕوویدا. تایبەتمەندی بابەت گریمانەیی دەرگای پرۆکسی HTTP ڕاژەکاری پرۆکسی HTTP @@ -249,7 +243,6 @@ ناردنەوە بۆ %s سەرنجەکانی زیاتر سەرکەوتووانە ڕاپۆرتکرا @%s - تەواوبوو دواوە بەردەوام بە @@ -290,7 +283,6 @@ هاشتاگی هاشتاگی بێ # هاشتاگی زیاد بکە - ناوی لیست ڕاپرسی لەگەڵ هەڵبژاردنەکان: %1$s, %2$s, %3$s, %4$s; %5$s ڕاستەوخۆ شوێنکەوتوانی @@ -353,16 +345,6 @@ \n(%d سنوری کاراکتەر) %1$s بڵاوکردنەوە بە هەژماری - لابردنی ئەژمێر لە لیستەکە - زیادکردنی ئەژمێر بۆ لیستەکە - گەڕان بەدوای ئەو کەسانەی کە پەیڕەوی ان دەکەیت - سڕینەوەی لیستەکە - ناونانەوەی لیستەکە - دروستکردنی لیستێک - %2$s: \"%1$s\" نەیتوانی لیستەکە بسڕێتەوە - %2$s: \"%1$s\" نەیتوانی ناوی لیست بنووسرێ - %2$s: \"%1$s\" نەیتوانی لیست دروست بکات - لیستەکان زیادکردنی ئەژمێری ماتۆدۆنی نوێ زیادکردنی ئەژمێر دەستەواژە بۆ فلتەر diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 48754a52a..8926c2e84 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -1,7 +1,5 @@ - Vyskytla se chyba. - Vyskytla se chyba sítě! Prosím zkontrolujte své připojení a zkuste to znovu! Toto nemůže být prázdné. Nepodařilo se najít webový prohlížeč, který lze použít. Příspěvek je příliš dlouhý! @@ -39,7 +37,6 @@ Zobrazit méně Rozbalit Sbalit - Tady nic není. Tady nic není. Obnovte přetažením dolů! %s boostnul/a váš příspěvek %s si oblíbil/a váš příspěvek @@ -52,7 +49,6 @@ Odstranit boost Oblíbit Odstranit oblíbení - Více Napsat Odhlásit se Jste si jistý/á, že se chcete odhlásit z účtu %1$s? @@ -66,8 +62,6 @@ Smazat TOOTNOUT TOOTNOUT! - Zkusit znovu - Profil Předvolby Předvolby účtu Oblíbené @@ -239,16 +233,6 @@ Fráze k filtrování Přidat účet Přidat nový účet Mastodon - Seznamy - Nelze vytvořit seznam \"%1$s\": %2$s - Nelze přejmenovat seznam \"%1$s\": %2$s - Nelze smazat seznam \"%1$s\": %2$s - Vytvořit seznam - Přejmenovat seznam - Smazat seznam - Hledejte mezi lidmi, které sledujete - Přidat účet na seznam - Odstranit účet ze seznamu Píšete jako %1$s Popis pro zrakově postižené @@ -315,7 +299,6 @@ Neuvedený Pro sledující Přímý - Název seznamu Hashtag bez # Napsat příspěvek Napsat @@ -366,7 +349,6 @@ Skrýt celou doménu Pokračovat Zpět - Hotovo \@%s byla/a úspěšně nahlášen/a Další komentáře Přeposlat na %s @@ -462,7 +444,6 @@ Před oblíbením zobrazit dialog pro potvrzení Skrýt nadpis horního panelu nástrojů Skrýt kvantitativní statistiky profilů - Opravdu chcete smazat seznam %s\? I když váš účet není uzamčen, zaměstnanci %1$s si myslí, že byste mohli chtít zkontrolovat žádosti o sledování z těchto účtů ručně. Odebírat Přestat odebírat diff --git a/app/src/main/res/values-cy/strings.xml b/app/src/main/res/values-cy/strings.xml index aaaecc1f4..e6f778160 100644 --- a/app/src/main/res/values-cy/strings.xml +++ b/app/src/main/res/values-cy/strings.xml @@ -1,6 +1,5 @@ - Bu gwall. Ni all hwn fod yn wag. Methu dod o hyd i borwr gwe i\'w ddefnyddio. Mae\'ch neges yn rhy hir! @@ -44,7 +43,6 @@ Ymateb Hybu Hoffi - Mwy Creu Allgofnodi Ydych chi\'n siŵr eich bod am allgofnodi o\'r cyfrif %1$s\? Bydd hyn yn dileu\'r holl ddata lleol, gan gynnwys drafftiau a chyfeiriadau. @@ -58,8 +56,6 @@ Dileu TŴTIO TŴTIO! - Ceisio eto - Proffil Dewisiadau Ffefrynnau Defnyddwyr a dawyd @@ -205,7 +201,6 @@ Yn ymateb i @%s Ychwanegu Cyfrif Ychwanegu Cyfrif Mastodon newydd - Rhestrau Yn postio fel %1$s Gosod pennawd Dileu @@ -237,12 +232,10 @@ Cynnwys Defnyddio amser absoliwt \@%s - Digwyddodd gwall rhwydwaith. Gwiriwch eich cysylltiad a cheisiwch eto. Negeseuon uniongyrchol Tabiau Piniwyd Parthau cudd - Dim byd yma. Dileu hwb Dileu ffefryn Dileu ac ailddrafftio @@ -346,7 +339,6 @@ Er nad ydych wedi cloi\'ch cyfrif, roedd staff %1$s yn meddwl efallai yr hoffech adolygu\'r ceisiadau i\'ch dilyn o\'r cyfrifon hyn â llaw. Hoffech chi ddileu\'r neges a amserlennwyd hon\? Dim disgrifiad - Enw rhestr Hashnod heb # Anfon ymlaen at %s Daw\'r cyfrif o weinydd arall. Hoffech chi anfon copi dienw o\'r adroddiad i\'r gweinydd hwnnw hefyd\? @@ -357,9 +349,6 @@ Byth Bob tro Atodiadau - Creu rhestr - Diweddaru\'r rhestr - Chwilio am bobl rydych chi\'n eu dilyn Golygu llun Hybwyd gan Hyd @@ -385,7 +374,6 @@ Cadwyd! Tanysgrifio Dad-danysgrifo - Ydych chi wir eisiau dileu rhestr %s\? Does gennych chi ddim drafftiau. Dangos rhagolygon ffrydiau Llesiant @@ -407,7 +395,6 @@ Nodi cyfryngau yn sensitif bob tro Cyfrifon Pôl - Dileu\'r rhestr Ychwanegu hashnod 1+ Sain @@ -427,9 +414,6 @@ %1$s Ffefryn Uniongyrchol - Ychwanegu at neu dynnu oddi ar restr - Wedi methu ag ychwanegu\'r cyfrif at y rhestr - Wedi methu tynnu\'r cyfrif o\'r rhestr Cadw drafft\? (Bydd atodiadau\'n cael eu lanlwytho eto pan fyddwch chi\'n adfer y drafft.) Ailflogiwyd Rydych wedi ail-fewngofnodi i\'ch cyfrif cyfredol i roi caniatâd tanysgrifio gwthio i Pachli. Fodd bynnag, mae gennych gyfrifon eraill o hyd nad ydyn nhw wedi\'u mudo fel hyn. Newidiwch atyn nhw ac ail-fewngofnodi fesul un er mwyn galluogi cefnogaeth hysbysiadau UnifiedPush. @@ -447,11 +431,9 @@ Wedi methu pinio Wedi methu dadbinio Dylai\'r porth fod rhwng %d a %d - Methu diweddaru\'r rhestr \"%1$s\": %2$s Iaith bostio ragosodedig Tudalnodiwyd Dewiswch restr - Wedi gorffen Wedi adrodd ar @%s yn llwyddiannus Cyfyngu ar hysbysiadau ffrydiau Dangos enw defnyddiwr mewn bariau offer @@ -487,15 +469,11 @@ Hysbysiadau am ddefnyddwyr newydd Hysbysiadau am adroddiadau cymedroli Os yw\'r allweddair neu\'r ymadrodd yn alffaniwmerig yn unig, mi fydd ond yn cael ei osod os yw\'n cyfateb â\'r gair cyfan - Methu creu rhestr \"%1$s\": %2$s Tapiwch neu lusgo\'r cylch i ddewis y canolbwynt a fydd bob amser yn weladwy mewn lluniau bach. Pôl gyda dewisiadau: %1$s, %2$s, %3$s, %4$s; %5$s Rhestr Gosod pwynt ffocws nawr - Methu dileu\'r rhestr \"%1$s\": %2$s - Ychwanegwch gyfrif at y rhestr - Tynnu cyfrif o\'r rhestr ychwanegu ymateb Cyfryngau: %s Wedi methu llwytho\'r ffynhonnell statws o\'r gweinydd. @@ -516,7 +494,6 @@ %s person %s pherson - Nid oes gennych unrhyw restrau. Bydd rhywfaint o wybodaeth a all effeithio ar eich lles meddyliol yn cael ei chuddio. Mae hyn yn cynnwys: \n \n - Hysbysiadau hoffi/hybu/dilyn @@ -614,7 +591,6 @@ Cyfrifon cyfan Dilyn hashnod #hashnod - Adnewyddu Anhysbys Dangos beth bynnag Hidlwyd: %s @@ -664,7 +640,6 @@ Llwytho hysbysiadau diweddaraf Dileu\'r drafft\? Methodd y lanlwytho: %s - Cuddio o\'r ffrwd cartref Methodd chwarae: %s Dileu Dileu\'r hidlydd \'%1$s\'\? diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 317880c99..9099d7c7a 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -1,7 +1,5 @@ - Ein Fehler ist aufgetreten. - Ein Netzwerkfehler ist aufgetreten. Bitte überprüfe deine Internetverbindung und versuche es erneut. Das darf nicht leer sein. Kein Webbrowser gefunden. Der Beitrag ist zu lang! @@ -40,7 +38,6 @@ Weniger anzeigen Ausklappen Einklappen - Hier ist nichts. Noch keine Beiträge. Ziehe zum Aktualisieren nach unten! %s teilte deinen Beitrag %s favorisierte deinen Beitrag @@ -53,7 +50,6 @@ Teilen rückgängig machen Favorisieren Aus Favoriten entfernen - Mehr Beitrag erstellen Abmelden Möchtest du %1$s wirklich abmelden\? Dadurch werden alle lokalen Daten des Profils, wie Entwürfe und Einstellungen, gelöscht. @@ -67,8 +63,6 @@ Löschen TRÖT TRÖT! - Erneut versuchen - Profil Einstellungen Profileinstellungen Favoriten @@ -225,11 +219,6 @@ Aktualisieren Konto hinzufügen Neues Mastodon-Konto hinzufügen - Listen - Liste erstellen - Liste aktualisieren - Liste löschen - Konto zur Liste hinzufügen Veröffentlichen als %1$s Inhalt für Menschen mit Sehbehinderung beschreiben (%d Zeichen) @@ -277,15 +266,9 @@ Öffentlich Follower Direkt - Listenname Dateien herunterladen Dateien werden heruntergeladen zu filternder Ausdruck - Liste konnte nicht erstellt werden \"%1$s\": %2$s - Liste konnte nicht aktualisiert werden \"%1$s\": %2$s - Liste konnte nicht gelöscht werden \"%1$s\": %2$s - Suche nach Leuten, denen du folgst - Konto aus der Liste entfernen Hashtag ohne # Autor*in des geteilten Beitrags öffnen Öffentliche Timelines @@ -347,7 +330,6 @@ Wenn das Wort oder die Formulierung nur aus Buchstaben oder Zahlen besteht, tritt der Filter nur dann in Kraft, wenn er exakt dieser Zeichenfolge entspricht Weiter Zurück - Fertig \@%s wurde erfolgreich gemeldet Zusätzliche Anmerkungen An %s weiterleiten @@ -431,7 +413,6 @@ Der Beitrag, auf den du antworten wolltest, wurde gelöscht Entwurf gelöscht Dieser Beitrag konnte nicht gesendet werden! - Möchtest du die Liste %s wirklich löschen\? Du kannst nicht mehr als %1$d Anhang hochladen. Du kannst nicht mehr als %1$d Anhänge hochladen. @@ -516,10 +497,6 @@ \u0020(🔗 %s) Fokuspunkt setzen Reaktion hinzufügen - Das Konto konnte nicht aus der Liste entfernt werden - Zur Liste hzfg. / aus Liste entf. - Das Konto konnte nicht zur Liste hinzugefügt werden - Du hast keine Listen. %s · %d Beiträge angehängt %s hat %s gemeldet #%s entfolgt @@ -574,7 +551,6 @@ Konten insg. Hashtag folgen #Hashtag - Aktualisieren Kontaktaufnahme mit dem Server dauerte zu lange Beitrag konnte nicht als Lesezeichen gespeichert werden: %s Beitrag konnte nicht geteilt werden: %s @@ -619,7 +595,6 @@ Deinem Server ist bekannt, dass dieser Beitrag bearbeitet wurde. Allerdings besitzt er keine Kopien der Änderungen, weshalb diese nicht angezeigt werden können. \n \nHierbei handelt es sich um Mastodon Issue #25398. - Nicht in der Startseite anzeigen Das Hochladen ist fehlgeschlagen: %s Übersetzung fehlgeschlagen: %s Erinnere mich nie @@ -636,9 +611,7 @@ Softwareaktualisierungen Angesagte Beiträge Neueste Beiträge laden - Ein Netzwerkfehler ist aufgetreten: %s Möchtest du deine Profiländerungen speichern? - Es ist ein Fehler aufgetreten: %s Immer Nie Jemand teilt einen eigenen Beitrag @@ -648,7 +621,6 @@ Selbst geteilte Beiträge anzeigen Beiträge Einmal pro Version - Dein Server unterstützt diese Funktion nicht: %1$s Schriftfamilie Übersetzen Eine Aktualisierung ist verfügbar diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index 83fcd3356..74da806f8 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -1,8 +1,6 @@ Αυτό δεν μπορεί να είναι κενό. - Προέκυψε σφάλμα δικτύου! Παρακαλώ ελέγξτε τη σύνδεσή σας και προσπαθήστε ξανά. - Προέκυψε ένα σφάλμα. Αποκλεισμένοι χρήστες Ακύρωση αιτήματος ακολούθησης; Διαγραφή αυτής της συζήτησης; @@ -21,7 +19,6 @@ Ανοίξτε σε browser Αιτήματα ακολούθησης Προσθήκη σελιδοδείκτη - Περισσότερα Σελιδοδείκτες Σελιδοδείκτες Ακόλουθοι @@ -56,7 +53,6 @@ Αναζήτηση… Αποδοχή Εμφάνιση προωθήσεων - Προφίλ Αιτήματα ακολούθησης Αναζήτηση Διαγραφή συζήτησης @@ -70,7 +66,6 @@ Ανακοινώσεις Προσχέδια ο/η %s έκανε εγγραφή - Προσπαθήστε ξανά Διαγραφή αυτής της δημοσίευσης; Άρση σίγασης Αγαπημένο diff --git a/app/src/main/res/values-en-rGB/strings.xml b/app/src/main/res/values-en-rGB/strings.xml index d57eff4e4..dbdea4461 100644 --- a/app/src/main/res/values-en-rGB/strings.xml +++ b/app/src/main/res/values-en-rGB/strings.xml @@ -21,7 +21,6 @@ Edit your profile Permission to read media is required. Images and videos cannot both be attached to the same post. - A network error occurred! Please check your connection and try again! Couldn\'t find a web browser to use. Notifications Posts @@ -35,7 +34,6 @@ Direct messages Followers The post is too long! - An error occurred. Local Blocked users Tabs @@ -60,14 +58,12 @@ Follow hashtag Trending posts This instance does not support following hashtags. - An error occurred: %s Edits Followed hashtags The upload failed: %s Re-login for push notifications Drafts Posts - Your server does not support this feature: %1$s Error unfollowing #%s Error following #%s Announcements diff --git a/app/src/main/res/values-eo/strings.xml b/app/src/main/res/values-eo/strings.xml index 11a1189cd..081c0c1a9 100644 --- a/app/src/main/res/values-eo/strings.xml +++ b/app/src/main/res/values-eo/strings.xml @@ -1,7 +1,5 @@ - Eraro okazis. - Reta eraro okazis! Bonvolu kontroli vian konekton kaj klopodi denove! Tiu ne povas esti malplena. Ne eblas trovi retumilon. Via mesaĝo estas tro longa! @@ -39,7 +37,6 @@ Montri malpli Pligrandigi Malgrandigi - Nenio tie ĉi. Nenio tie ĉi. Tiru malsupren por aktualigi! %s diskonigis vian mesaĝon %s stelumis vian mesaĝon @@ -52,7 +49,6 @@ Nuligi diskonigon Stelumi Nuligi stelumon - Pli Verki Elsaluti Ĉu vi certas, ke vi volas elsaluti el la konto %1$s\? @@ -66,8 +62,6 @@ Forigi HUP HUP! - Reprovi - Profilo Agordoj Agordoj de konto Stelumoj @@ -238,16 +232,6 @@ Frazo filtrota Aldoni konton Aldoni novan Mastodon-konton - Listoj - Ne povis krei la liston \"%1$s\": %2$s - Ne povis ŝanĝi la nomon de la listo \"%1$s\": %2$s - Ne povis forigi la liston \"%1$s\": %2$s - Krei liston - Ŝanĝi la nomon de la listo - Forigi la liston - Serĉi homojn, kiujn vi sekvas - Aldoni konton al la listo - Forigi konton el la listo Afiŝi per konto %1$s @@ -316,7 +300,6 @@ Sekvantoj Rekta - Nomo de la listo Forigi kaj reskribi Ĉu forigi kaj reskribi ĉi tiun mesaĝon\? enketoj finiĝis @@ -351,7 +334,6 @@ Balotenketo kun elektoj: %1$s, %2$s, %3$s, %4$s, %5$s Daŭrigi Reveni - Farita \@%s sukcese signalita Pliaj komentoj Plusendi al %s @@ -438,7 +420,6 @@ Mastodon havas minimuman intervalon de planado de 5 minutoj. Kunsendaĵoj iu, kiun mi sekvas, afiŝis novan mesaĝon - Ĉu vi vere volas forigi la liston %s\? Aŭdaĵo Aboni Malneto forigita diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 098136580..ca5e21494 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -1,7 +1,5 @@ - Ha ocurrido un error. - Ha ocurrido un error de red. Por favor, comprueba tu conexión e inténtalo de nuevo. Este campo no puede estar vacío. No se ha encontrado ningún navegador web. ¡La publicación es demasiado larga! @@ -39,7 +37,6 @@ Mostrar menos Expandir Ocultar - Nada aquí. Nada por aquí. ¡Arrastra hacia abajo para recargar! %s impulsó tu publicación %s marcó como favorita tu publicación @@ -50,7 +47,6 @@ Responder Compartir Favorito - Más Redactar Cerrar sesión ¿Seguro que quiere cerrar la sesión de %1$s? Esto eliminará todos los datos locales de la cuenta, incluyendo borradores y preferencias. @@ -64,8 +60,6 @@ Borrar TOOT ¡Publicar! - Reintentar - Perfil Ajustes Preferencias de cuenta Favoritos @@ -87,7 +81,6 @@ Editar Deshacer Aceptar - Rechazar Buscar Borradores Visibilidad de la publicación @@ -216,7 +209,6 @@ Respondiendo a @%s Añadir cuenta Añadir cuenta de Mastodon - Listas Publicar como %1$s Descripción para persona con problema de visión (Límite de %d caracteres) @@ -282,10 +274,6 @@ Filtros Encuestas Eliminar - Crear una lista - Renombrar la lista - Añadir cuenta a la lista - Eliminar cuenta de la lista 1Favoritos Seguidores Aplicar @@ -334,11 +322,6 @@ Editar filtro Actualizar Frase para filtrar - No se pudo crear la lista \"%1$s\": %2$s - No se pudo renombrar la lista \"%1$s\": %2$s - No se pudo eliminar la lista \"%1$s\": %2$s - Eliminar la lista - Buscar personas que sigues Contenido: %s Aviso de contenido: %s Sin descripción @@ -346,7 +329,6 @@ Público Sin listar Directo - Nombre de la lista Etiqueta sin # Limpiar Filtro @@ -371,7 +353,6 @@ Encuesta con opciones: %1$s, %2$s, %3$s, %4$s; %5$s Continuar Atrás - Hecho \@%s reportado satisfactoriamente Comentarios adicionales Reenviar a %s @@ -463,7 +444,6 @@ Borrador eliminado Error al cargar la información de respuesta ¡Este toot no se pudo enviar! - ¿Realmente quieres eliminar la lista %s\? Indefinido Duración Adjuntos @@ -521,9 +501,6 @@ Has vuelto a iniciar sesión en esta cuenta para dar permiso de notificaciones push a Pachli. Sin embargo, aún hay otras cuentas que no tienen este permiso. Cambia a estas cuentas y vuelve a iniciar sesión, una a una, para activar el soporte de notificaciones de UnifiedPush. Creación de cuentas Editar imagen - Falló añadir la cuenta a la lista - Falló al eliminar la cuenta de la lista - Añadir o quitar de la lista El contenido debería tener una descripción. Violación de una regla Spam @@ -537,7 +514,6 @@ %s (%s) Error al silenciar #%s Error al reactivar #%s - No tienes ninguna lista. Notificaciones sobre informes de moderación Esta instancia no soporta el seguimiento de etiquetas. Etiquetas seguidas @@ -584,7 +560,6 @@ Descripción Imagen Perfiles - Recargar Desconocido Mostrar de todas formas Filtrado: %s @@ -651,9 +626,7 @@ Publicaciones en tendencia %1$s %2$s Carga publicaciones más nuevas - Ha ocurrido un error de red: %s ¿Quieres guardar tus cambios de perfil? - Ha ocurrido un error: %s Siempre La carga falló: %s Nunca @@ -666,10 +639,8 @@ (Actualizado: %1$s) Publicaciones Una vez por versión - Su servidor no soporta esta función: %1$s Familia de fuente Notificaciones cuando Pachli está trabajando en el fondo - Oculta de la cronología de inicio Traducir Tu servidor sabe que esta publicación fue editada, pero no tiene una copia de las ediciones, así que no pueden ser asomados a ti. \n @@ -691,4 +662,5 @@ Buscar actualizaciones ahora No hay actualizaciones disponibles Próxima comprobación: %1$s + Rechazar diff --git a/app/src/main/res/values-eu/strings.xml b/app/src/main/res/values-eu/strings.xml index 7a7371859..1eef12542 100644 --- a/app/src/main/res/values-eu/strings.xml +++ b/app/src/main/res/values-eu/strings.xml @@ -1,6 +1,5 @@ - Errorea gertatu da. Eremu hau ezin da hutsik egon. Ez da web nabigatzailerik aurkitu. Tut luzeegia! @@ -44,7 +43,6 @@ Erantzun Bultzatu Gogokoa - Gehiago Idatzi Saioa itxi Ziur zaude %1$s saioa itxi nahi duzula? @@ -58,8 +56,6 @@ Ezabatu Tut TUT! - Berriz saiatu - Profila Ezarpenak Kontuaren ezarpenak Gogokoak @@ -202,7 +198,6 @@ \@%s-(r)i erantzuten Gehitu kontua Mastodon kontua gehitu - Zerrendak %1$s kontuarekin tut egiten Ikusmen urritasuna dutenentzat deskribapena\n(%d karaktereko muga) @@ -240,14 +235,12 @@ Ondorengo edukiak erabiltzailearen informazioa erdizka erakutsi dezake. Profil osoa ikusteko nabigatzailean sakatu. Desainguratu Ainguratu - Sareko errore bat sortu da! Zure konexioa ziurta ezazu berriro, mesedez! Mezu zuzenak Fitxak Finkatua Ezkutuko domeinuak Programatutako tutak \@%s - Kilkerrak besterik ez hemen. Bultzada kendu Gogokoa kendu Editatu @@ -296,15 +289,6 @@ Hitz osoa Gako-hitza edo esaldia alfanumerikoa denean bakarrik, hitz osoarekin bat datorrenean bakarrik aplikatuko da Iragazteko esaldia - Ezin izan da zerrenda sortu \"%1$s\": %2$s - Ezin izan da zerrendaren izena aldatu \"%1$s\": %2$s - Ezin izan da zerrenda ezabatu \"%1$s\": %2$s - Zerrenda sortu - Zerrenda berrizendatu - Ezabatu zerrenda - Bilatu jarraitzen dituzun pertsonak - Gehitu kontua zerrendan - Kendu kontua zerrendatik Gogoko %1$s %1$s Gogoko @@ -328,7 +312,6 @@ Jarraitzaileak Zuzena Inkestatu aukerekin: %1$s, %2$s, %3$s, %4$s; %5$s - Zerrendaren izena Traola # gabe Garbitu Iragazi @@ -361,7 +344,6 @@ Jarraitu Itzuli - Eginda \@%s jakinarazi duzu arrakastaz Iruzkin gehigarriak %s(r)i birbidali @@ -424,7 +406,6 @@ Zure kontua blokeatuta ez badago ere, %1$s-ko langileek kontu hauetako eskaerak eskuz berrikusi nahi dituzula pentsatu dute. harpidedun naizen norbaitek tut berria argitaratu du Eranskinak - Ziur %s zerrenda ezabatu nahi duzula\? Audioa Harpidetu Elkarrizketa ezabatu nahi duzu\? diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml index 1cac52323..b3ac4d6c1 100644 --- a/app/src/main/res/values-fa/strings.xml +++ b/app/src/main/res/values-fa/strings.xml @@ -1,6 +1,5 @@ - خطایی رخ داد. این نمی‌تواند خالی باشد. مرورگری برای استفاده پیدا نشد. فرسته خیلی طولانی است! @@ -44,7 +43,6 @@ پاسخ تقویت برگزیدن - بیش‌تر ایجاد خروج پیگیری @@ -57,8 +55,6 @@ حذف بوق بوق! - تلاش دوباره - نمایه ترجیحات ترجیحات حساب برگزیده‌ها @@ -199,7 +195,6 @@ در حال پاسخ به @%s افزودن حساب افزودن حساب ماستودون جدید - سیاهه‌ها فرستادن از طرف %1$s توصیف محتوا برای کم‌بینایان (کران ۱ نویسه) @@ -238,13 +233,11 @@ ممکن است اطلاعات زیر نمایهٔ کاربر را ناقص نشان دهد. برای گشودن نمایهٔ کامل در مرورگر، لمس کنید. برداشتن سنجاق سنجاق کردن - خطای شبکه‌ای رخ داد. لطفاً اتصالتان را بررسی و دوباره تلاش کنید. پیام‌های مستقیم زبانه‌ها سنجاق شده دامنه‌های نهفته \@%s - این‌جا هیچ‌چیزی نیست. برداشتن تقویت برداشتن برگزیدگی حذف و بازنویسی @@ -290,15 +283,6 @@ برداشتن به‌روز رسانی تمام واژه - %2$s: \"%1$s\" نتوانست سیاهه را ایجاد کند - %2$s: \"%1$s\" نتوانست سیاهه را به‌روز کند - %2$s: \"%1$s\" نتوانست سیاهه را حذف کند - ایجاد سیاهه - به‌روز رسانی‌سیاهه - حذف سیاهه - جست‌وجوی افرادی که پی می‌گیرید - افزودن حساب به سیاهه - برداشتن حساب از سیاهه %1$s برگزیدن %1$s برگزیدن @@ -322,7 +306,6 @@ پی‌گیران مستقیم نظرسنجی با گزینه‌ها: %1$s، %2$s، %3$s، %4$s؛ %5$s - نام سیاهه برچسب بدون # پاک‌سازی پالایش @@ -349,7 +332,6 @@ ادامه بازگشت - تمام ‫@%s با موفّقیت گزارش شد نظرهای اضافی هدایت به %s @@ -453,7 +435,6 @@ \n - آمار پی‌گیر و فرسته روی نمایه‌ها \n \n فرستادن آگاهی‌ها تأثیر نمی‌پذیرد، ولی می‌توانید ترجیحات آگاهیتان را به صورت دستی بازبینی کنید. - واقعاً می‌خواهید سیاههٔ %s را حذف کنید؟ نمی‌توانید بیش از %1$d رسانه بارگذارید. نمی‌توانید بیش از %1$d رسانه بارگذارید. @@ -509,10 +490,6 @@ (بدون تغییر) ضربه زده یا دایره را کشیده تا نقطهٔ کانونی‌ای که همواره باید در بندانگشتی‌ها نمایان باشد را برگزینید. ذخیرهٔ پیش‌نویس؟ (پیوست‌ها هنگام بازگردانی پیش‌نویس، دوباره بارگذاری خواهند شد) - افزودن یا برداشتن از سیاهه - شکست در افزودن حساب به سیاهه - شکست در برداشتن حساب از سیاهه - هیچ سیاهه‌ای ندارید. گزارش جدید روی %s %s، %s را گزارش داد %s · %d فرسته پیوسته @@ -570,7 +547,6 @@ مجموع حساب‌ها پی‌گیری برچسب #برچسب - نوسازی ناشناخته تماس با کارسازتان بیش از حد طول کشید دلیل نامعلوم @@ -620,7 +596,6 @@ واکشی آگاهی‌ها… نگه‌داری انباره… بارگذاری شکست خورد: %s - نهفتن از خط زمانی خانگی پخش شکست خورد: %s حذف حذف پالایهٔ «%1$s»؟ diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index 66d227401..3cf828053 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -70,7 +70,6 @@ Muokkaa Kysely Tilit - Valmis Takaisin Jatka Äänestä @@ -82,7 +81,6 @@ Kiinnitä Poista kiinnitys Poista - Listat Päivitä Poista Ääni @@ -130,8 +128,6 @@ Kirjanmerkit Suosikit Asetukset - Profiili - Yritä uudelleen TUUT Poista Muokkaa @@ -168,8 +164,6 @@ Poista ja kirjoita uudelleen Samaan julkaisuun ei voi liittää sekä kuvia että videoita. %1$s, %2$s, ja %3$s - Poista lista - Muuta listan nimeä Tällaista tiedostoa ei voida ladata ylös. %s haluaa seurata sinua Verkostoitu @@ -180,7 +174,6 @@ Aseta kuvaus Kirjanmerkki Poista mykistys verkkonimeltä %s - Enemmän %s on maininnut sinut Tiedoston lataaminen epäonnistui. %s jakoi julkaisusi @@ -188,12 +181,9 @@ Poista keskustelun mykistys Ladataan kuvaa %1$s Mykistä keskustelu - Tapahtui virhe. Halutako varmasti kirjautua ulos tililtä %1$s? Tämä poistaa kaiken laittellesi tallennetun tiedon tilistä, mukaanlukien luonnokset ja asetukset. Poista jako - Luo lista Mykistä %s - Lisää tili listalle Piilotetut verkkonimet %s lisäsi julkaisusi suosikkeihinsa Näytä jaot @@ -208,12 +198,10 @@ Jaa… Verkkoselainta ei löytynyt. Poista keskustelu - Poista tili listalta %s julkaisi juuri Vastaa nopeasti Piilota jaetut julkaisut Täällä ei ole mitään. Vedä alas päivittääksesi! - Verkkovirhe. Tarkista yhteytesi ja yritä uudelleen. Avaa media No. %d Julkaisun lähettäminen epäonnistui. Tätä kenttää ei voi jättää tyhjäksi. @@ -224,8 +212,6 @@ %1$s ja %2$s Poista mykistys tililtä %s Kirjoita - Hae seuraamiasi henkilöitä - Täällä ei ole mitään. %s rekisteröityi Rekisteröitymiset Ilmoitukset uusista käyttäkistä @@ -291,7 +277,6 @@ %ds Käyttäjän mykistys poistettu Jatka muokkausta - Tilin lisääminen listalle epäonnistui Video- ja äänitiedostot eivät saa ylittää %s Mt. Tilan lähteen lataaminen palvelimelta epäonnistui. %dpv @@ -324,8 +309,6 @@ Julkaistaan käyttäjänä %1$s Julkaisu poistetaan ja kirjoitetaan uudestaan? Tämä instanssi ei tue aihetunnisteita. - Tapahtui verkkovirhe: %s - Tapahtui virhe: %s Näytä luonnokset Mykistä koko verkkotunnus Lataus epäonnistui @@ -339,7 +322,6 @@ Julkinen: Julkaise julkisille aikajanoille Kuvaus Uusi raportti %s - Listaa ei voitu päivittää \"%1$s\": %2$s Jaa julkaisu… #%s hiljennetty Vastaus käyttäjälle @%s @@ -349,14 +331,11 @@ Avaa aina sisältövaroituksella varustetut julkaisut Julkaisut Jaa linkki tiliin - Listaa ei voitu luoda \"%1$s\": %2$s %s · %d julkaisua liitteenä Jaa tilin URL… - Palvelimesi ei tue tätä ominaisuutta: %1$s %dt %s (%s) Valitse keskipiste - Tilin poisto listalta epäonnistui ALT Virhe tilin # %s seuraamista lopetettaessa %dmin @@ -369,9 +348,7 @@ Jaa mediatiedosto… Oletko varma, että haluat estää koko instanssin %s? Et näe sisältöä kyseiseltä verkkotunnukselta julkisissa aikajanoissa tai ilmoituksissasi. Seuraajasi tällä verkkotunnuksella poistetaan. Profiilit - Lisää tai poista listalta %s näytetään - Listaa ei voitu poistaa \"%1$s\": %2$s Koko sana Aihetunnisteet Virhe mykistettäessä tiliä #%s @@ -458,12 +435,10 @@ Poista Julkaisun tehostaminen epäonnistui: %s Katso ilmoitukset - Haluatko todella poistaa listan %s? Tilaa Ilmoita Pachlin uusista versioista Varoita Lopeta tilin #%s seuraamninen? - Sinulla ei ole listoja. Äänestäminen epäonnistui: %s Älä muistuta enää tästä versiosta Seuraajapyynnön hylkääminen epäonnistui: %s @@ -502,7 +477,6 @@ Hyvinvointi Ei koskaan %s (koko sana) - Päivitä Et voi ladata useamipa medialiitteitä kuin %1$d. Et voi ladata useamipa medialiitteitä kuin %1$d. @@ -628,11 +602,9 @@ \n \nJos haluat tutkia muita tilejä, voit löytää niitä toisesta aikajanasta, esimerkiksi oman instanssisi paikallisesta aikajanasta [iconics gmd_group]. Voit myös etsiä niitä nimeltä [iconics gmd_search]; etsi esimerkiksi sanalla ”Pachli” löytääksesi Mastodon-tilimme. Poista ilmoitukset - Listan nimi Avaa/Sulje kaikki julkasut Valitse lista Loputon - Piilota kotiaikajanalta Haku epäonnistui Listojen lataaminen epäonnistui Raportti käyttäjästä @%s lähetetty diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index a16ec5db3..0cd22c8e7 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -1,7 +1,5 @@ - Une erreur s’est produite. - Une erreur réseau s’est produite ! Veuillez vérifier votre connexion puis réessayez ! Ce champ ne peut pas être vide. Impossible de trouver un navigateur web à utiliser. Votre message est trop long ! @@ -39,7 +37,6 @@ Voir moins Déplier Replier - Rien ici. Il n’y a aucun pouet ici pour l’instant. Glissez vers le bas pour actualiser ! %s a partagé votre message %s a ajouté votre message à ses favoris @@ -52,7 +49,6 @@ Annuler le partage Favori Supprimer le favori - Plus Écrire Déconnexion Êtes-vous certain·e· de vouloir déconnecter le compte %1$s ? @@ -66,8 +62,6 @@ Supprimer POUET POUET ! - Réessayer - Profil Préférences Préférences de compte Favoris @@ -239,16 +233,6 @@ Phrase à filtrer Ajouter un compte Ajouter un nouveau compte Mastodon - Listes - Impossible de créer la liste \"%1$s\": %2$s - Impossible de renommer la liste \"%1$s\": %2$s - Impossible de supprimer la liste \"%1$s\": %2$s - Créer une liste - Renommer la liste - Supprimer la liste - Chercher des personnes que vous suivez - Ajouter un compte à la liste - Supprimer un compte de la liste Publier en tant que %1$s Décrire pour les malvoyants (%d caractère maximum) @@ -314,7 +298,6 @@ Abonné·e·s Direct - Nom de la liste Hashtag sans # Nettoyer Filtrer @@ -371,7 +354,6 @@ Échec de récupération des messages Le rapport sera envoyé aux modérateur·rice·s de votre instance. Vous pouvez expliquer pourquoi vous signalez le compte ci-dessous : Êtes-vous sûr⋅e de vouloir bloquer %s en entier \? Vous ne verrez plus de contenu provenant de ce domaine, ni dans les fils publics, ni dans vos notifications. Vos abonné·e·s utilisant ce domaine seront retiré·e·s. - Terminé Le compte provient d’un autre serveur. Envoyez également une copie anonyme du rapport \? Mot entier Un mot-clé ou une phrase alphanumérique sera appliqué·e seulement s’il ou elle correspond au mot entier @@ -463,7 +445,6 @@ Cacher les statistiques quantitatives sur les messages Supprimer le signet Pièces jointes - Voulez-vous vraiment supprimer la liste %s \? S’abonner Supprimer cette conversation \? Animer les émojis personnalisés @@ -518,9 +499,6 @@ Une erreur est survenue en arrêtant de masquer #%s Une erreur est survenue en suivant #%s Une erreur est survenue en arrêtant de suivre #%s - Ajouter à ou retirer de la liste - Le compte n\'a pas pu être retiré de la liste - Le compte n\'a pas pu être ajouté à la liste #hashtag Suivre un hashtag Le contenu média devrait être décrit. @@ -567,7 +545,6 @@ Modification de %1$s Création par %1$s Enregistrer comme brouillon \? (Les pièces jointes seront à nouveau téléchargées lorsque le brouillon sera réouvert.) - Vous n\'avez aucune liste. %s (%s) Spam Autre @@ -578,7 +555,6 @@ Les status n\'ont pas pu être publiés, ils ont été sauvegardés dans les brouillons. \n \nLe serveur n\'est pas joignable, ou celui-ci a refusé la publication. - Actualiser Échec du détachement Montrer le nom d\'utilisateur dans la barre d\'outils La connexion à votre serveur a pris trop longtemps @@ -627,9 +603,6 @@ Publications en tendance Hashtags Traduire - Une erreur s\'est produite : %s - Une erreur réseau s\'est produite : %s - Votre serveur ne prend pas en charge cette fonctionnalité: %1$s Tendances Liens en tendance Liens @@ -650,7 +623,6 @@ Image Votre serveur ne supporte pas les filtres Supprimer le brouillon ? - Masquer du fil d\'actualité principal (Mis à jour : %1$s) Charger les nouvelles notifications Traduction échouée : %s diff --git a/app/src/main/res/values-fy/strings.xml b/app/src/main/res/values-fy/strings.xml index dca3cb8a9..0ad543ba6 100644 --- a/app/src/main/res/values-fy/strings.xml +++ b/app/src/main/res/values-fy/strings.xml @@ -11,15 +11,6 @@ Skets bewarje\? Fuortsmite Ûnderskrift pleatse - Account oan de list tafoegje - Sykje om minsken dy\'t jo folgje - Smyt de list fuort - Neam de list om - Meitsje in list oan - Koe list net fuortsmite \"%1$s\": %2$s - Koe list net omneame \"%1$s\": %2$s - Koe list net oanmeitsje \"%1$s\": %2$s - Listen Nij Mastodon Account Tafoegje Account Tafoegje Fernije @@ -165,8 +156,6 @@ Favoriten Account Foarkarren Foarkarren - Profyl - Opnij probearje TOOT! TOOT Fuortsmite en opnij opstelle @@ -180,7 +169,6 @@ Folgje Útlogge Gearstelle - Mear Net mear as favoryt oanmerke As favoryt oanmerke Reagearje @@ -192,7 +180,6 @@ %s folget jo %s hat jo toot as favoryt oanmurken Hjir is neat. Lûk nei ûnderen om te ferfarskjen! - Hjir is neat. Yntearre Ûttearre Minder sjen litte @@ -231,8 +218,6 @@ Dat type triem kin net upload wurde. De status is te lang! Koe gjin webblêder fine om te brûken. - In netwurk flater die harren foar! Kontrolearje jo ferbining en probearje it noch ris! - Der die harren in flater foar. Profylôfbylding Oer dy Hashtags diff --git a/app/src/main/res/values-ga/strings.xml b/app/src/main/res/values-ga/strings.xml index 8bce2eb59..cdf9e266a 100644 --- a/app/src/main/res/values-ga/strings.xml +++ b/app/src/main/res/values-ga/strings.xml @@ -128,8 +128,6 @@ Úsáideoirí fuaim Leabharmharcanna Toghanna - Próifíl - Atriail SÉID! SÉID Scrios agus athdhréachtú @@ -144,7 +142,6 @@ Lean An bhfuil tú cinnte gur mhaith leat logáil amach as an gcuntas %1$s\? Cum - Níos mó Bain togha Leabharmharc Togh @@ -152,9 +149,6 @@ Tá an stádas ró-fhada! Níorbh fhéidir brabhsálaí gréasáin a aimsiú le húsáid. Ní féidir leis seo a bheith folamh. - Tharla earráid líonra! Seiceáil do nasc agus bain triail eile as! - Tharla earráid. - Liostaí Athshocraigh Cuardaigh Cuir próifíl in eagar @@ -228,7 +222,6 @@ lean %s thú D\'athchraol %s do phostáil Níl aon rud anseo. Tarraingt anuas chun athnuachan a dhéanamh! - Níl aon rud anseo. Fill Nuair atá an eochairfhocal nó an frása alfa-uimhriúil amháin, ní chuirfear i bhfeidhm é ach má oireann sé don fhocal iomlán Postálacha @@ -271,15 +264,6 @@ Theip ar postálacha a ghabháil Seolfar an tuarascáil chuig do mhodhnóir freastalaí. Féadfaidh tú míniú a thabhairt ar an bhfáth go bhfuil tú ag tuairisciú an chuntais seo thíos: Cuir Cuntas Mastodon nua leis - Níorbh fhéidir liosta a chruthú \"%1$s\": %2$s - Níorbh fhéidir an liosta a athainmniú \"%1$s\": %2$s - Níorbh fhéidir an liosta a scriosadh \"%1$s\": %2$s - Cruthaigh liosta - Athainmnigh an liosta - Scrios an liosta - Cuardaigh daoine a leanann tú - Cuir cuntas leis an liosta - Bain cuntas ón liosta Postáil le cuntas %1$s Déan cur síos ar dhaoine lagamhairc @@ -340,7 +324,6 @@ Neamhliostaithe Leantóirí Díreach - Ainm liosta Cuir hashtag leis Hashtag gan # Roghnaigh liosta @@ -391,7 +374,6 @@ Lean ar aghaidh Ar ais - Déanta Tuairiscíodh go rathúil @%s Tuairimí Breise Seol ar aghaidh chuig %s diff --git a/app/src/main/res/values-gd/strings.xml b/app/src/main/res/values-gd/strings.xml index 2815928d9..76f3292bb 100644 --- a/app/src/main/res/values-gd/strings.xml +++ b/app/src/main/res/values-gd/strings.xml @@ -1,6 +1,5 @@ - Liostaichean Ath-shuidhich Lorg Roghainnean a’ chunntais @@ -25,8 +24,6 @@ Meur-chlàr Emoji Na lean tuilleadh Lean - Barrachd - Feuch ris a-rithist POSTAICH Sguab às Sguab às is dèan dreachd ùr air @@ -55,7 +52,6 @@ Cha b’ urrainn dhuinn am post a chur! Ceanglachain Fuaim - A bheil thu cinnteach gu bheil thu airson an liosta %s a sguabadh às\? 7 làithean 3 làithean Latha @@ -112,7 +108,6 @@ Sìn air adhart gu %s Beachdan a bharrachd Chaidh do gearan air @%s a chlàradh - Deiseil Air ais Air adhart @@ -167,7 +162,6 @@ Tagh liosta Taga hais gun # Cuir taga hais ris - Ainm na liosta Cunntas-bheachd le roghainnean: %1$s, %2$s, %3$s, %4$s; %5$s Dìreach ’Na chomharra-lìn @@ -230,15 +224,6 @@ Mìnich an t-susbaint dhan fheadhainn air a bheil cion-lèirsinn (%d caractar air a char as fhaide) A’ postadh mar %1$s - Thoir an cunntas air falbh on liosta - Cuir cunntas ris an liosta - Lorg daoine air a leanas tu - Sguab às an liosta - Ùraich an liosta - Cruthaich liosta - Cha b’ urrainn dhuinn an liosta a sguabadh às \"%1$s\": %2$s - Cha b’ urrainn dhuinn an liosta ùrachadh \"%1$s\": %2$s - Cha b’ urrainn dhuinn an liosta a chruthachadh \"%1$s\": %2$s Cuir cunntas Mastodon ùr ris Cuir cunntas ris An abairt ri chriathradh @@ -425,7 +410,6 @@ Cleachdaichean bacte Cleachdaichean mùchte Comharran-lìn - Pròifil A bheil thu cinnteach gu bheil thu airson clàradh a-mach à %1$s\? Thèid gach dàta ionadail a’ chunntais a sguabadh às, a’ gabhail a-staigh nan dreachdan is roghainnean. Thoir air falbh o na h-annsachdan Cuir ris na comharran-lìn @@ -439,7 +423,6 @@ Dh’iarr %s leantainn ort Lean %s ort Chan eil dad an-seo. Tarraing a-nuas airson ath-nuadhachadh! - Chan eil dad an-seo. Co-theannaich Leudaich Seall nas lugha dheth @@ -473,8 +456,6 @@ Tha am post ro fhada! Cha do lorg sinn brabhsair-lìn a chleachdadh sinn. Chan fhaod seo a bhith falamh. - Thachair mearachd leis an lìonra. Thoir sùil air a’ cheangal agad is feuch ris a-rithist. - Thachair mearachd. Ged nach eil an cunntas agad glaiste, tha sgioba %1$s dhen bheachd gum b’ fheàirrde thu lèirmheas a dhèanamh air na h-iarrtasan leantainn o na cunntasan seo a làimh. A bheil thu airson an còmhradh seo a sguabadh às\? Sguab às an còmhradh @@ -534,13 +515,11 @@ À comas <cha deach a shuidheachadh> <mì-dhligheach> - Cha deach leinn an cunntas a thoirt air falbh on liosta Deasachaidhean an-dràsta Cànan bunaiteach nam post Chruthaich %1$s Dheasaich %1$s - Chan eil liosta sam bith agad. %s (%s) Bu chòir dhan phort a bhith eadar %d is %d Cha chuir an t-ionstans seo taic ri leantainn thagaichean hais. @@ -559,8 +538,6 @@ Chan eil #%s a’ leantainn tuilleadh Chaidh a dheasachadh bhios gearan ùr ann - Cuir ris no thoir air falbh on liosta - Cha deach leinn an cunntas a chur ris an liosta Obraichidh seo mar as trice. Cha dèid dàta fhoillseachadh do dh’aplacaidean eile. Dh’fhaoidte gun cuir seo taic ri dòighean dearbhaidh a bharrachd ach bi feum air brabhsair a chuireas taic ris. Tilg air falbh na h-atharraichean @@ -585,7 +562,6 @@ Dealbh Thoir rabhadh Falaich - Ath-nuadhaich Neo-aithnichte Thug conaltradh ris an fhrithealaiche ro fhada chan eil fhios dè an t-adhbhar @@ -634,6 +610,5 @@ Brathan nuair a bhios Pachli ag obair sa chùlaibh A’ faighinn nam brathan… Obair-ghlèidhidh air an tasgadan… - Falaich o loidhne-ama na dachaigh Dh’fhàillig leis an luchdadh suas: %s diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml index 84f5c9513..c1fe334f2 100644 --- a/app/src/main/res/values-gl/strings.xml +++ b/app/src/main/res/values-gl/strings.xml @@ -35,8 +35,6 @@ Favoritos Preferencias da conta Preferencias - Perfil - Intenta outra vez TOOT! TOOT Eliminar e reescribir @@ -52,7 +50,6 @@ Tes a certeza de querer pechar a sesión %1$s\? Isto eliminará todos os datos locais da conta, incluíndo borradores e preferencias. Pechar sesión Redactar - Máis Eliminar favorito Marcar Favorito @@ -68,7 +65,6 @@ %s fixo favorita a publicación %s promoveu a túa publicación Nada por aquí. Arrastra hacia abaixo para actualizar! - Nada por aquí. Pregar Expandir Ver menos @@ -110,8 +106,6 @@ A publicación é demasiado longa! Non se atopou un navegador para utilizar. Esto non pode estar baleiro. - Houbo un fallo na rede. Comproba a conexión e inténtao outra vez. - Algo fallou. %1$s Desubscribir Subscribir @@ -129,7 +123,6 @@ Reenviar a %s Comentarios adicionais Denuncia feita sobre @%s - Feito Atrás Continuar @@ -174,7 +167,6 @@ Cancelos Cancelo sen # Engadir cancelo - Nome da lista Enquisa con opcións: %1$s, %2$s, %3$s, %4$s; %5$s Directo Seguidoras @@ -236,16 +228,6 @@ Describe para persoas con deficiencias visuais (%d caracteres como máximo) Publicar como %1$s - Eliminar conta da listaxe - Engadir conta á listaxe - Atopar persoas ás que segues - Eliminar a listaxe - Actualizar a listaxe - Crear unha listaxe - Non se puido eliminar a listaxe \"%1$s\": %2$s - Non se actualizou a listaxe \"%1$s\": %2$s - Non se puido crear a listaxe \"%1$s\": %2$s - Listaxes Engadir unha nova conta Mastodon Engadir conta Frase a filtrar @@ -388,7 +370,6 @@ Borrador eliminado Fallou a carga da información da Resposta Fallou o envío do toot! - Tes a certeza de querer eliminar a listaxe %s\? Non podes subir máis de %1$d anexo multimedia. Non podes subir máis de %1$d anexos multimedia. @@ -504,13 +485,9 @@ Nunca Notificacións sobre temas de moderación Spam - Engadir ou quitar da lista - Fallou a adición da conta á lista - Fallou a eliminación da conta da lista Non seguir #%s\? Idioma de publicación por defecto Denuncias - Non tes listas. %s (%s) Faltar a unha norma Outra @@ -569,7 +546,6 @@ \nPara atopar contas podes mirar nalgunha das outras cronoloxías. Por exemplo, na cronoloxía local da túa instancia [iconics gmd_group]. Ou buscalas polo seu nome [iconics gmd_search]; por exemplo busca Pachli para atopar a nosa conta en Mastodon. Imaxe O meu filtro - Actualizar Descoñecido Estamos tardando demasiado en conectar co servidor razón descoñecida @@ -614,6 +590,5 @@ Mantemento da caché… Fallou a subida: %s Eliminar - Agochar na cronoloxía de inicio Eliminar o filtro \'%1$s\'\? diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/main/res/values-hi/strings.xml index c21c73da5..c6949ffeb 100644 --- a/app/src/main/res/values-hi/strings.xml +++ b/app/src/main/res/values-hi/strings.xml @@ -22,20 +22,15 @@ डिलीट एवं रिड्राफ्ट करें टूट करें टूट! - पुनः प्रयास करें - प्रोफाइल अनुगामी अपलोड विफल रहा। मीडिया को स्टोर करने की अनुमति आवश्यक है। मीडिया पढ़ने की अनुमति आवश्यक है। वह फ़ाइल नहीं खोली जा सकी। उस प्रकार की फ़ाइल अपलोड नहीं की जा सकती। - एक त्रुटि हुई। रीसेट उपयोग करने के लिए वेब ब्राउज़र नहीं मिला। यह खाली नहीं हो सकता। - नेटवर्क त्रुटि हुई! कृपया अपना कनेक्शन जांचें और पुनः प्रयास करें! - सूचियाँ जनमत के विकल्प: %1$s, %2$s, %3$s, %4$s; %5$s बुकमार्क संपादित करें @@ -43,7 +38,6 @@ जनमत शुरू करें पोल खाता - पूर्ण पीछे जारी रखें वोट @@ -159,7 +153,6 @@ %s ने आपके टूट को पसंद किया %s ने आपके टूट को बढावा दिया यहाँ कुछ नहीं। ताज़ा करने के लिए नीचे खींचो! - यहाँ कुछ नहीं। कम दिखाएं और दिखाओ देखने के लिए क्लिक करें @@ -209,7 +202,6 @@ %1$s • %2$s सूची बुकमार्क किया हुआ - सूची का नाम कोई विवरण नहीं मीडिया: %s जानकारी जोड़ें @@ -280,15 +272,6 @@ \n(%d वर्ण सीमा) %1$s खाते के साथ पोस्ट कर रहे - सूची से खाता निकालें - सूची में खाता जोड़ें - उन लोगों की खोज करें जिन्हें आप फ़ॉलो करते हैं - सूची हटाएँ - सूची का नाम बदलें - एक सूची बनाएं - सूची नहीं हटाई जा सकी \"%1$s\": %2$s - सूची का नाम नहीं बदल सके \"%1$s\": %2$s - सूची नहीं बना सके \"%1$s\": %2$s नया मास्टोडन खाता जोड़ें फ़िल्टर करने के लिए वाक्यांश जब संकेत शब्द या वाक्यांश केवल अल्फ़ान्यूमेरिक होता है, तो यह केवल तभी लागू होगा जब यह पूरे शब्द से मेल खाता होगा diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml index 0633495c5..1cda40132 100644 --- a/app/src/main/res/values-hu/strings.xml +++ b/app/src/main/res/values-hu/strings.xml @@ -1,7 +1,5 @@ - Hiba történt. - Hálózati hiba történt. Kérjük, ellenőrizd a kapcsolatot, és próbáld meg újra. Ez nem lehet üres. Nem található használható böngésző. Túl hosszú a bejegyzés! @@ -39,7 +37,6 @@ Mutass kevesebbet Kibontás Összecsukás - Nincs itt semmi. Üres tartalom. Húzd le a frissítéshez! %s megtolta a bejegyzésedet %s kedvencnek jelölte a bejegyzésedet @@ -50,7 +47,6 @@ Válasz Megtolás Kedvencnek jelölés - Több Szerkesztés Kijelentkezés Biztosan ki szeretnél jelentkezni a következőből: %1$s? @@ -64,8 +60,6 @@ Törlés TÜLK TÜLK! - Próbáld újra - Profil Beállítások Fiókbeállítások Kedvencek @@ -207,7 +201,6 @@ Média Fiók hozzáadása Új Mastodon-fiók hozzáadása - Listák Törlés Fiók zárolása Elmented a piszkozatot\? @@ -271,12 +264,6 @@ Eltávolítás Frissítés Szűrendő kifejezés - Nem sikerült a lista létrehozása \"%1$s\": %2$s - Nem sikerült a lista átnevezése \"%1$s\": %2$s - Nem sikerült a lista törlése \"%1$s\": %2$s - Lista létrehozása - Lista átnevezése - Lista törlése Rejtett domainek Megtolás visszavonása Rejtett domainek @@ -292,9 +279,6 @@ %dmp múlva Teljes szó Ha a kulcsszó csak alfanumerikus karakterekből áll, csak teljes szóra fog illeszkedni - Általad követettek keresése - Fiók hozzáadása a listához - Fiók eltávolítása a listából Bejegyzés mint %1$s Tartalom leírása látássérültek számára (%d karakteres korlát) @@ -324,7 +308,6 @@ Listázatlan Közvetlen Szavazás válaszokkal: %1$s, %2$s, %3$s, %4$s; %5$s - Lista neve Hashtag # nélkül Törlés Szűrés @@ -361,7 +344,6 @@ Folytatás Vissza - Kész \@%s sikeresen bejelentettük Egyéb megjegyzések Továbbítás neki %s @@ -432,7 +414,6 @@ Piszkozat törölve Nem sikerült a Válasz információit betölteni Ezt a bejegyzést nem tudtuk elküldeni! - Tényleg le akarod törölni a %s listát\? Nem tölthetsz fel %1$d médiacsatolmányból többet. Nem tölthetsz fel %1$d médiacsatolmányból többet. @@ -509,8 +490,6 @@ Elmentsük a vázlatot\? (A mellékleteket újra feltöltjük, amikor a vázlatot visszaállítod.) Nem sikerült kitűzni Nem sikerült a kitűzés visszavonása - Hozzáadás vagy törlés a listáról - Nincs egy listád se. #%s követésének vége\? A médiához leírást is kell adni. van egy új bejelentés @@ -529,8 +508,6 @@ #%s kikövetve Bejelentések Értesítések moderációs bejelentésekről - Nem sikerült a fiókot a listához adni - Nem sikerült a fiókot levenni a listáról Spam Egyéb %s szerkesztve @@ -570,7 +547,6 @@ Összes fiók Hashtag követése #hashtag - Frissítés Ismeretlen Bejegyzés kedvencnek jelölése sikertelen: %s Bejegyzés megtolása sikertelen: %s diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml index e7f709f56..9e73e9756 100644 --- a/app/src/main/res/values-in/strings.xml +++ b/app/src/main/res/values-in/strings.xml @@ -35,7 +35,6 @@ Klik untuk melihat Tampilkan Lebih Banyak Tampilkan Lebih Sedikit - Tidak ada apa pun disini. %s mengikuti Anda Laporkan @%s Ikuti @@ -44,8 +43,6 @@ Buka blokir Laporkan Hapus - Coba lagi - Profil Preferensi Preferensi Akun Favorit @@ -115,19 +112,11 @@ 1+ Mengikuti Anda Tambahkan Akun Mastodon baru - Daftar - Tidak dapat mengubah nama daftar \"%1$s\": %2$s - Tidak dapat menghapus daftar \"%1$s\": %2$s - Buat daftar - Ubah nama daftar - Hapus daftar Kunci akun Bawaan sistem Tulis Mulai ulang Disimpan! - Terjadi kesalahan. - Terjadi kesalahan pada jaringan! Harap periksa koneksi Anda dan coba lagi! Gagal mengirim postingan. Pengguna dibisukan Pengumuman @@ -148,7 +137,6 @@ Favorit Gambar Tambah Akun - Tidak dapat membuat daftar \"%1$s\": %2$s Nanti Tulis Postingan Gambar dan video tidak dapat disematkan ke dalam post yang sama. @@ -171,7 +159,6 @@ Favorit Hapus favorit Hapus bookmark - Lebih Menyusun Keluar Apakah kamu yakin ingin keluar dari akun %1$s\? @@ -236,13 +223,10 @@ Tautan Sedang tren Postingan trending - Jaringan error: %s - Terjadi error: %s Sunting Tagar yang diikuti Upload gagal: %s Postingan - Server Anda tidak mendukung fitur ini: %1$s Tagar %s dilaporkan %s Ikuti tagar diff --git a/app/src/main/res/values-is/strings.xml b/app/src/main/res/values-is/strings.xml index d9f34f0a8..109a7860a 100644 --- a/app/src/main/res/values-is/strings.xml +++ b/app/src/main/res/values-is/strings.xml @@ -7,9 +7,6 @@ Eiginleikar notandaaðgangs Breyta notandasniði Leita - Listar - Villa kom upp. - Villa kom upp í netkerfi. Athugaðu nettenginguna þína og prófaðu svo aftur. Þetta má ekki vera tómt. Gat ekki fundið neinn vafra til að nota. Færslan er of löng! @@ -48,7 +45,6 @@ Sýna minna Fletta út Fella saman - Ekkert hér. Ekkert hér. Togaðu niður til að endurhlaða! %s endurbirti færsluna þína %s setti færslu frá þér í eftirlæti @@ -62,7 +58,6 @@ Eftirlæti Bókamerki Fjarlægja eftirlæti - Meira Semja skilaboð Ertu viss um að þú viljir skrá þig út af notandaaðgangnum %1$s\? Þetta mun eyða öllum staðværum gögnum af aðgangnum, þar með talið drögum og kjörstillingum. Fylgja @@ -77,8 +72,6 @@ Eyða og endurvinna drög BIRTA BIRTA! - Reyna aftur - Notandasnið Eftirlæti Bókamerki Þaggaðir notendur @@ -257,15 +250,6 @@ Frasi sem á að sía Bæta við aðgang Bæta við nýjum Mastodon-aðgangi - Ekki tókst að búa til lista \"%1$s\": %2$s - Ekki tókst að endurnefna lista \"%1$s\": %2$s - Ekki tókst að eyða lista \"%1$s\": %2$s - Búa til lista - Endurnefna listann - Eyða listanum - Leita að fólki sem þú fylgist með - Bæta notandaaðgangi á listann - Fjarlægja notandaaðganginn af listanum Sendi sem %1$s Lýstu þessu fyrir sjónskerta (hámark %d stafur) @@ -320,7 +304,6 @@ Fylgjendur Beint Könnun með valkostunum: %1$s, %2$s, %3$s, %4$s; %5$s - Heiti á lista Myllumerki án # Veldu lista Listi @@ -343,7 +326,6 @@ Könnuninni þinni er lokið Halda áfram Til baka - Lokið Tókst að kæra @%s Aðrar athugasemdir Áframsenda til %s @@ -437,7 +419,6 @@ Mistókst að senda þessa færslu! Viðhengi Hljóð - Ertu viss um að þú viljir eyða %s listanum\? Ótiltekið Tímalengd @@ -502,10 +483,6 @@ Setja virknistað Aldrei Birta notandanafn á verkfærastikum - Bæta við eða fjarlægja af lista - Mistókst að bæta notandaaðgangnum á listann - Mistókst að fjarlægja notandaaðganginn af listanum - Þú ert ekki með neina lista. Sjálfgefið tungumál færslna %s (%s) Þessi netþjónn styður ekki að fylgst sé með myllumerkjum. @@ -564,7 +541,6 @@ Fylgjast með myllumerki #myllumerki Óþekkt - Endurlesa Birta samt Síað: %s Notendasnið diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 2083034e9..c05c5e3c4 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -1,11 +1,8 @@ - Si è verificato un errore. - Si è verificato un errore di rete. Per favore controlla la tua connessione e riprova. Questo non può essere vuoto. Nessun browser web utilizzabile trovato. Il messaggio è troppo lungo! - Il tuo server non supporta questa feature: %1$s Quel tipo di file non può essere caricato. Non è stato possibile aprire quel file. È richiesto il permesso di leggere file. @@ -44,7 +41,6 @@ Mostra di meno Espandi Riduci - Qui non c\'è nulla. Qui non c\'è nulla. Trascina verso il basso per aggiornare! %s ha condiviso il tuo post %s ha apprezzato il tuo post @@ -57,7 +53,6 @@ Rimuovi condivisione Aggiungi ai post apprezzati Rimuovi apprezzamento - Di più Componi Disconnettiti Sei sicuro di volerti disconnettere dall\'account %1$s? @@ -73,8 +68,6 @@ Elimina TOOT TOOT! - Riprova - Profilo Preferenze Preferenze account Apprezzati @@ -253,16 +246,6 @@ Frase da filtrare Aggiungi account Aggiungi un nuovo Account Mastodon - Liste - Non è stato possibile creare la lista \"%1$s\": %2$s - Non è stato possibile rinominare la lista \"%1$s\": %2$s - Non è stato possibile eliminare la lista \"%1$s\": %2$s - Crea una lista - Rinomina la lista - Elimina la lista - Cerca tra le persone che segui - Aggiungi un account alla lista - Rimuovi un account dalla lista Pubblicando come %1$s Descrivi il contenuto per gli ipovedenti @@ -329,13 +312,11 @@ Non in elenco Solo seguaci Diretti - Nome della lista Scarica media Scaricando media Componi messaggio Componi Hashtag senza # - Nascondi dalla timeline della home Svuota Filtra Applica @@ -398,7 +379,6 @@ Continua Indietro - Fatto Segnalato @%s con successo Altri commenti Inoltra a %s @@ -476,7 +456,6 @@ Il messaggio a cui hai scritto una bozza di risposta è stato rimosso Bozza eliminata L\'invio di questo messaggio è fallito! - Sei sicuro di voler cancellare la lista %s? Indefinita Durata Allegati @@ -539,13 +518,9 @@ (nessuna modifica) Mostra nome utente nella barra strumenti \u0020(🔗 %s) - Aggiunti o rimuovi dalla lista - Aggiunta dell\'account alla lista fallita - Rimozione dell\'account dalla lista fallita Salvare bozza? (gli allegati verranno ricaricati quando ripristini la bozza.) Fissaggio fallito I media dovrebbero avere una descrizione. - Non hai alcuna lista. %s (%s) Lingua predefinita per i post creati Notifiche sulle segnalazioni da moderare @@ -601,7 +576,6 @@ %1$d persone parlano dell\'hashtag %2$s Utilizzo totale Account totali - Aggiorna Hashtag di tendenza Questa è la tua Timeline principale. Mostra i post più recenti degli account che segui. \n @@ -658,8 +632,6 @@ Collegamenti Non ricordarmelo per questa versione Aggiornamenti Software - Si è verificato un errore di rete: %s - Si è verificato un errore: %s Sempre Il caricamento è fallito: %s Mai diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index b0a17a440..ef1d556ca 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -1,6 +1,5 @@ - エラーが発生しました。 本文なしでは投稿できません。 ウェブブラウザが見つかりませんでした。 投稿文が長すぎます! @@ -37,7 +36,6 @@ 続きを隠す 続きを読む 閉じる - 何もありません。 現在投稿はありません。更新するにはプルダウンしてください! %sさんが投稿をブーストしました %sさんが投稿をお気に入りに登録しました @@ -48,7 +46,6 @@ 返信 ブースト お気に入り - その他 投稿する ログアウト アカウント %1$s からログアウトしてもよろしいですか?ログアウトすると、下書きや詳細設定を含めて、ローカルに保存されているアカウントの全てのデータが削除されます。 @@ -63,8 +60,6 @@ 削除して編集 トゥート トゥート! - 再試行 - プロフィール 設定 アカウント設定 お気に入り @@ -221,9 +216,6 @@ フィルターを編集 アカウントを追加 新しいMastodonアカウントを追加 - リスト - リスト名を変更できませんでした \"%1$s\": %2$s - リスト名の変更 %1$sとして投稿 視覚障害者のための説明 (%d文字まで) @@ -275,8 +267,6 @@ ダイレクト - リスト名 - ネットワークエラーが発生しました。接続を確認してもう一度試してください。 \@%s ブーストを解除 お気に入りを解除 @@ -316,13 +306,6 @@ この投稿を削除し、下書きに戻しますか? 削除 更新 - リストを作成できませんでした \"%1$s\": %2$s - リストを削除できませんでした \"%1$s\": %2$s - リストの作成 - リストの削除 - フォロワーを検索 - リストにアカウントを追加 - リストからアカウントを削除 参加した投票の結果がでました 作成した投票の結果がでました 投票 @@ -364,7 +347,6 @@ このアカウントは外部のサーバーにあります。匿名化された通報の複製をそちらにも送信しますか? 通報をサーバーのモデレーターに送信します。以下にこのアカウントを通報理由を入力できます: 投稿を取得できませんでした - 完了 戻る 続ける 投稿 @@ -418,7 +400,6 @@ 会話を削除 詳細情報 %sさんがサインアップしました - リストへの追加または削除 投稿言語 お気に入りに追加しました ブックマークに追加しました @@ -427,7 +408,6 @@ 14日間 30日間 60日間 - まだリストがありません。 ツールバーにユーザー名を表示する %s (%s) 下書きを保存しますか? (添付ファイルは下書きの復元時に再アップロードされます。) @@ -477,8 +457,6 @@ モデレーション報告に関する通知 添付ファイル 1+ - アカウントのリストへの追加に失敗しました - アカウントのリストからの削除に失敗しました アナウンスはありません。 編集しました お気に入りに追加する前に確認を表示する @@ -490,7 +468,6 @@ %1$d 個以上のメディア添付ファイルはアップロードできません。 - リスト %s を本当に削除しますか? この投稿の送信に失敗しました! 返信情報の読み込みに失敗しました 下書きを削除しました @@ -577,7 +554,6 @@ 警告付きで隠す 完全に隠す フィルターアクション - 再読み込み 投稿のブーストに失敗しました: %s 通知の消去に失敗しました: %s 投稿のお気に入りに失敗しました: %s @@ -609,9 +585,7 @@ トレンド トレンドの投稿 プロフィールの変更を保存しますか\? - エラーが発生しました: %s 投稿 - あなたのサーバーはこの機能をサポートしていません: %1$s ハッシュタグ 削除する %1$s %2$d @@ -621,7 +595,6 @@ %1$s %2$s サーバーへの接続に時間がかかりすぎました 最新のポストを読み込む - ネットワーク エラーが発生しました: %s フィルターの読み込みに失敗しました: %s #%s を非表示にしました (更新済み: %1$s) @@ -629,7 +602,6 @@ \n \nあなたのインスタンスのローカルタイムラインや他のタイムラインから、他のアカウントを見つけることができます([iconics gmd_group])。また、名前で検索することもできます([iconics gmd_search]);例えば、Pachliを検索すると、当社のMastodonアカウントを見つけることができます。 フォント - ホームタイムラインから隠す 選択肢付きの投票: %1$s, %2$s, %3$s, %4$s; %5$s 画像 フィルタ済み: %s diff --git a/app/src/main/res/values-kab/strings.xml b/app/src/main/res/values-kab/strings.xml index 04c662fc9..2eb4d0d08 100644 --- a/app/src/main/res/values-kab/strings.xml +++ b/app/src/main/res/values-kab/strings.xml @@ -7,7 +7,6 @@ Iɣewwaṛen n umiḍan Ẓreg amaɣnu Nadi - Tabdarin Izen-ik·im aṭas i ɣezzif! Agejdan Iccaren @@ -18,10 +17,8 @@ \@%s Zeṛ ugar Zeṛ kra kan - Ulac walu da. %s yeṭṭafar-ik·ikem-id Err - Ugar Azen Ḍfeṛ Ur ṭṭafar ara @@ -30,8 +27,6 @@ Kkes tɛiwdeḍ tira Jewweq JEWWEQ! - Ɛreḍ tikkelt-nniḍen - Amaɣnu Ismenyifen Ldi deg uminig Bḍu @@ -44,7 +39,6 @@ %1$s n ismenyifen Ur tesɛiḍ ara irewwayen. - Tella-d tucḍa. Tilɣa Ticraḍ Rnu ɣer ticraḍ @@ -113,13 +107,7 @@ Bḍu aseɣwen ɣer tijewwiqt Rnu amsizdeg Ẓreg amsizdeg - Snulfu-d tabdart - Snifel isem n tabdart - Kkes tabdart-a - Rnu yiwen umiḍan ɣer tabdart - Kkes amiḍan seg tabdart Rnu isefka - Isem n tebdart Fren tabdart Tabdart Sizdeg @@ -192,7 +180,6 @@ Tafrant %d Ig ṭṭafar Imeḍfaṛen - Nadi ɣef medden ar at ḍfereḍ Imeḍfaṛen Iseɣwan Tibdarin diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index 51bc149d2..2c6f53f68 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -1,7 +1,5 @@ - 오류가 발생했습니다. - 네트워크 오류가 발생했습니다! 인터넷 연결을 확인하고 다시 시도하십시오! 내용을 입력하십시오. 사용 가능한 웹 브라우저를 찾을 수 없습니다. 게시물 길이가 너무 깁니다! @@ -40,7 +38,6 @@ 숨기기 더 보기 줄이기 - 메시지가 없습니다. 게시물이 없습니다. 아래로 당겨서 새로고침하세요! %s님이 부스트 했습니다 %s님이 당신의 게시물을 좋아합니다 @@ -53,7 +50,6 @@ 부스트 해제 좋아요 좋아요 취소 - 더 보기 작성 로그아웃 정말로 %1$s에서 로그아웃하시겠습니까\? @@ -68,8 +64,6 @@ 지우고 다시 쓰기 툿! - 다시 시도 - 프로필 설정 계정 설정 좋아요 @@ -252,16 +246,6 @@ 필터링할 문구 입력 계정 추가 마스토돈 계정을 추가합니다 - 리스트 - 리스트를 만들 수 없습니다. \"%1$s\": %2$s - 리스트의 이름을 변경할 수 없습니다. \"%1$s\": %2$s - 리스트를 삭제할 수 없습니다. \"%1$s\": %2$s - 리스트 생성 - 리스트 이름 바꾸기 - 리스트 삭제 - 당신을 팔로우하는 사람 검색 - 리스트에 계정 추가 - 리스트에서 계정 삭제 %1$s로서 포스팅 시각 장애인을 위한 설명 @@ -321,7 +305,6 @@ 비공개 다이렉트 투표 선택지: %1$s, %2$s, %3$s, %4$s, %5$s - 리스트 이름 #를 제외한 해시태그 알림 지우기 필터 @@ -354,7 +337,6 @@ 다음 이전 - 완료 \@%s를 신고하였습니다 부가 설명 %s에 포워딩 diff --git a/app/src/main/res/values-lv/strings.xml b/app/src/main/res/values-lv/strings.xml index 5b983c000..72f5cfcca 100644 --- a/app/src/main/res/values-lv/strings.xml +++ b/app/src/main/res/values-lv/strings.xml @@ -26,7 +26,6 @@ Sakļaut Rādīt vairāk Rādīt mazāk - Šeit nekā nav. %s sāka tev sekot %s reģistrējās Šeit nekā nav. Pavelciet uz leju, lai atjauninātu! @@ -41,7 +40,6 @@ Pārtraukt sekošanu Labot Dzēst - Profils Dzēst sarunu Iestatījumi Paslēptie domēni @@ -110,15 +108,8 @@ Sarunas Noņemt Atjaunināt - Saraksti Labot filtru Pievienot kontu - Nevarēja dzēst sarakstu \"%1$s\": %2$s - Izveidot sarakstu - Pārsaukt sarakstu - Dzēst sarakstu - Pievienot kontu sarakstam - Noņemt kontu no saraksta Labot attēlu Sūta ierakstu… Sūtīšana atcelta @@ -133,7 +124,6 @@ %1$s, %2$s un %3$d citi Nav apraksta Ieraksta valoda - Saraksta nosaukums Izvēlies sarakstu Labots Atzīmēts ar grāmatzīmi @@ -144,7 +134,6 @@ Pielietot Turpināt Atpakaļ - Gatavs Papildu komentāri slēgta Balsot @@ -171,10 +160,7 @@ Noteikumu pārkāpums Cits Vai dzēst šo ieplānoto ierakstu\? - Notika kļūda. Augšupielāde neizdevās. - Nevarēja pārsaukt sarakstu \"%1$s\": %2$s - Pievienot vai noņemt no saraksta Labot Melnraksti Bloķēt @@ -187,8 +173,6 @@ Apvienotā Sekotāji Izplest - Vairāk - Mēģināt vēlreiz Grāmatzīmes Saglabāt Saites @@ -219,7 +203,6 @@ Melnraksts dzēsts Saglabā melnrakstu… Klikšķini, lai apskatītu - Radās tīkla kļūda! Lūdzu, pārbaudiet savienojumu un mēģiniet vēlreiz! Ziņojums tiks nosūtīts jūsu servera moderatoram. Zemāk var sniegt skaidrojumu, kāpēc ziņojat par šo kontu: Ja atslēgvārds vai frāze ir tikai burtciparu, to pielietos tikai tad, ja tas atbildīs visam vārdam Tālāk norādītā informācija var nepilnīgi atspoguļot lietotāja profilu. Nospiediet, lai pārlūkprogrammā atvērtu pilnu profilu. @@ -340,11 +323,8 @@ Mastodon minimālais ieplānošanas intervāls ir 5 minūtes. Tev nav ieplānotu ziņu. Tava privātā piezīme par šo kontu - Vai tiešām vēlies dzēst sarakstu %s\? Lai arī tavs konts nav privāts, %1$s amatpersonas uzskatīja, ka, iespējams, vēlēsies manuāli pārskatīt sekošanas pieprasījumus no šiem kontiem. Publicē kā %1$s - Neizdevās pievienot kontu sarakstam - Neizdevās noņemt kontu no saraksta Rakstīt ziņu Rakstīt Aptauja, kurā tu balsoji, ir noslēgusies @@ -389,7 +369,6 @@ Paziņojumi par tavu ierakstu pastiprināšanu Tev nav neviena melnraksta. Nav paziņojumu. - Tev nav neviena saraksta. Rādīt lietotājvārdu rīkjoslās Pirms pastiprināšanas rādīt apstiprināšanas dialogu Meklēšana neizdevās @@ -410,7 +389,6 @@ Aizvākt Vai atcelt sekošanas pieprasījumu\? Vai dzēst šo ierakstu un sākt no jauna\? - Meklēt personas, kurām seko Sūtot ziņu, radās kļūda %1$s ir pārcēlies uz: Piespraušana neizdevās @@ -430,7 +408,6 @@ Ielādē pavedienu pārtraukta sekošana #%s %s atcelta slēpšana - Nevarēja izveidot sarakstu \"%1$s\": %2$s Filtrējamā frāze Atspējots <nav iestatīts> @@ -531,7 +508,6 @@ Konti kopā Sekot tēmturim #tēmturis - Atsvaizdināt nezināms iemesls Tendenču tēmturi Pievienot diff --git a/app/src/main/res/values-ml/strings.xml b/app/src/main/res/values-ml/strings.xml index deb849592..7aed8c014 100644 --- a/app/src/main/res/values-ml/strings.xml +++ b/app/src/main/res/values-ml/strings.xml @@ -7,9 +7,6 @@ അക്കൗണ്ട് മുൻഗണനകൾ പ്രൊഫൈൽ തിരുത്തുക തിരയുക - പട്ടികകൾ - ഒരു പിഴവ് സംഭവിച്ചിരിക്കുന്നു. - ഒരു നെറ്റ്‌വർക്ക് പിഴവ് സംഭവിച്ചിരിക്കുന്നു! ദയവായി താങ്കളുടെ കണക്ഷൻ പരിശോധിച്ചിട്ട് വീണ്ടും ശ്രമിക്കൂ! ഇത് ശൂന്യമാവാൻ പാടില്ല. ഉപയോഗിക്കാനായി ഒരു വെബ് ബ്രൗസർ കണ്ടെത്താനായില്ല. ഈ സ്റ്റാറ്റസ് വളരെ നീളമേറിയതാണ്! @@ -41,15 +38,12 @@ ബൂസ്റ്റ് പിൻവലിക്കുക ഇഷ്ടപ്പെട്ടവ ഇഷ്ടപ്പെട്ടവയിൽ നിന്നും കളയുക - കൂടുതൽ പിന്തുടരുക പിന്‍തുടരുന്നത് അവസാനിപ്പിക്കുക - വീണ്ടും ശ്രമിക്കുക പിന്‍തുടരുവാനുള്ള അഭ്യര്‍ത്ഥനകള്‍ മറച്ചുവെച്ച ഡൊമൈനുകൾ പിന്തുടരുന്നവർ പുതിയത് ലഭിക്കാൻ താഴേക്ക് വലിക്കുക - ലഭ്യമല്ല ചുരുക്കുക വിപുലപ്പെടുത്തുക അൽപ്പം കാണിക്കൂ @@ -67,7 +61,6 @@ നിശ്ശബ്ദമാക്കിയ ഉപയോഗതാക്കൾ ബൂക്കമാർക്ക് ഇഷ്ടപ്പെട്ടത് - പ്രൊഫൈൽ ടൂട്ട്! ടൂട്ട് നീക്കം ചെയ്യത് പുതിയത് എഴുതുക diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml index 68cb88bff..aeaac4b24 100644 --- a/app/src/main/res/values-nb-rNO/strings.xml +++ b/app/src/main/res/values-nb-rNO/strings.xml @@ -1,7 +1,5 @@ - En feil har oppstått. - En nettverksfeil har oppstått. Sjekk tilkoblingen, og prøv igjen. Denne kan ikke være tom. Fant ingen nettleser som kunne brukes. Innlegget er for langt! @@ -39,7 +37,6 @@ Vis mindre Utvid Skjul - Ingenting her. Ingenting her. Dra ned for å oppdatere! %s delte innlegget ditt %s favoriserte innlegget ditt @@ -52,7 +49,6 @@ Fjern deling Legg til i favoritter Fjern favoritt - Mer Skriv Logg ut Er du sikker på at du vil logge ut fra kontoen %1$s\? Dette vil slette all lokal data for kontoen, som utkast og instillinger. @@ -66,8 +62,6 @@ Slett TUT TUT! - Prøv igjen - Profil Innstillinger Kontoinnstillinger Favoritter @@ -214,16 +208,6 @@ Filtrer frase Legg til konto Legg til ny Mastodon-konto - Lister - Kunne ikke opprette liste \"%1$s\": %2$s - Kunne ikke gi liste nytt navn \"%1$s\": %2$s - Kunne ikke slette liste \"%1$s\": %2$s - Opprett en liste - Gi listen nytt navn - Fjern listen - Søk etter personer du følger - Legg til konto i listen - Fjern konto fra listen Standardinnstilling for innlegg Nye nevnelser Varsler om nye nevnelser @@ -290,7 +274,6 @@ Ikke listet Følgere Direkte - Listenavn Emneord uten # Fjern Filter @@ -348,7 +331,6 @@ Avstemming med valg: %1$s, %2$s, %3$s, %4$s; %5$s Fortsett Tilbake - Ferdig \@%s er rapportert Flere kommentarer Videresend til %s @@ -445,7 +427,6 @@ Uendelig Varighet - Er du sikker på at du vil slette listen %s\? Vedlegg Lyd Innlegget du hadde opprettet et utkast som svar på har blitt fjernet @@ -504,11 +485,7 @@ Klarte ikke å feste Klarte ikke å løsne Legg til reaksjon - Legg til eller fjern fra liste - Klarte ikke å legge til kontoen til listen - Klarte ikke å fjerne kontoen fra listen Standardspråk på innlegg - Du har ingen lister. %s (%s) Redigert %s @@ -548,7 +525,6 @@ Skapt: %1$s Endret: %1$s Media bør ha en beskrivelse. - Oppdater Beskrivelse Bilde Å bokmerke innlegget misslyktes: %s diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 222e6c80c..3dc3c8d67 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -1,7 +1,5 @@ - Er deed zich een fout voor. - Er deed zich een netwerkfout voor. Controleer je verbinding en probeer opnieuw. Dit mag niet leeg zijn. Kon geen bruikbare webbrowser vinden. Tekst van dit bericht is te lang! @@ -39,7 +37,6 @@ Minder tonen Uitklappen Inklappen - Hier is niets. Niets te zien. Swipe naar beneden om te verversen! %s boostte jouw bericht %s markeerde jouw bericht als favoriet @@ -52,7 +49,6 @@ Boost verwijderen Als favoriet markeren Favoriet verwijderen - Meer Bericht schrijven Uitloggen Weet je zeker dat je %1$s wil afmelden\? Dit verwijdert alle lokale gegevens van het account, inclusief conceptberichten en voorkeuren. @@ -66,8 +62,6 @@ Verwijderen Toot Toot! - Opnieuw proberen - Profiel App-voorkeuren Accountvoorkeuren Favorieten @@ -228,7 +222,6 @@ Aan het reageren op @%s Account toevoegen Een nieuw Mastodonaccount toevoegen - Lijsten Berichten plaatsen als %1$s Omschrijf de inhoud voor iemand met een visuele beperking (tekenlimiet is %d) @@ -299,16 +292,6 @@ Verwijderen Bijwerken Zinsdeel om te filteren - Kon geen lijst aanmaken \"%1$s\": %2$s - Kan lijst niet updaten \"%1$s\": %2$s - Kon de lijst niet verwijderen \"%1$s\": %2$s - Lijst aanmaken - Lijst updaten - Lijst verwijderen - Naar mensen zoeken die je volgt - Account aan de lijst toevoegen - Account uit de lijst verwijderen - Naam van lijst Hashtag zonder # Verwijderen en herschrijven Dit bericht verwijderen en herschrijven\? @@ -359,7 +342,6 @@ Doorgaan Terug - Klaar Het rapporteren van @%s is geslaagd Extra opmerkingen Verder naar %s @@ -407,7 +389,6 @@ Abonneren Het bericht waarvoor jij een reactie had opgesteld, is verwijderd Het versturen van dit bericht is mislukt! - Weet je zeker dat je de lijst %s wilt verwijderen\? Je kan niet meer dan %1$d mediabijlage uploaden. Je kan niet meer dan %1$d mediabijlagen uploaden. @@ -505,11 +486,8 @@ Fout tijdens het volgen van #%s Fout tijdens het ontvolgen van #%s Dit ingeplande bericht verwijderen\? - Account toevoegen aan de lijst is mislukt - Toevoegen of verwijderen van lijst Kan niet vastmaken Uitgeschakeld - Account verwijderen van de lijst is mislukt Er zijn niet opgeslagen wijzigingen. Meldingen negeren Bewerkingen @@ -524,7 +502,6 @@ Kan niet losmaken %s (%s) Regelovertreding - Je hebt geen lijsten. nu ALT Ontvolg #%s\? @@ -562,7 +539,6 @@ Trending hashtags <niet ingesteld> <ongeldig> - Ververs Afbeelding Boosten bericht mislukt: %s Stemmen in peiling mislukt: %s @@ -629,9 +605,7 @@ %1$s %2$s Laad nieuwe posts Notificaties over moderatie rapporten - Er deed zich een netwerkfout voor: %s Wil je je profiel wijzigingen opslaan? - Er deed zich een fout voor: %s Post als favoriet markeren faalde: %s Bookmarken van post faalde: %s Voorlopige versie opslaan? (Bijlagen zullen worden geupload als je de versie herstelt.) @@ -651,9 +625,7 @@ \n \nOm meer accounts te vinden, kun je ze ontdekken in een van de andere tijdlijnen. Bijvoorbeeld de lokale tijdlijn van jouw instance [iconics gmd_group]. Of je kunt zoeken op naam [iconics gmd_search]; bijvoorbeeld als je zoekt op Pachli dan vind je ons Mastodon account. Eenmaal per versie - Je server beschikt niet over ondersteuning voor deze feature: %1$s Lettertype-familie - Verberg op de Thuis tijdlijn Volg verzoek geblokkeerd Vertalen Laden van gesprek diff --git a/app/src/main/res/values-oc/strings.xml b/app/src/main/res/values-oc/strings.xml index 6f83f23bd..a82076f41 100644 --- a/app/src/main/res/values-oc/strings.xml +++ b/app/src/main/res/values-oc/strings.xml @@ -1,6 +1,5 @@ - S\'es produch una error. Aquò pot pas èsser void. Cap de navegador web pas trobat d’utilizar. La publicacion es tròp longa ! @@ -43,7 +42,6 @@ Respondre Partejar Aimar - Mai Redactar Tampar la session Volètz vertadièrament vos desconnectar del compte %1$s ? @@ -57,8 +55,6 @@ Escafar TUT TUT ! - Tornar ensajar - Perfil Preferéncias Preferits Utilizaires silenciats @@ -194,7 +190,6 @@ En responsa a @%s Apondre un compte Apondre un nòu compte Mastodon - Listas Publicar coma %1$s Apondre una legenda Levar @@ -229,13 +224,11 @@ Las informacions çai-jos son pas lo rebat del perfil complèt de l’utilizaire. Tocatz per dobrir lo perfil complèt dins lo navigador. Tirar del perfil Penjar - Una error ret s’es producha ! Mercés de verificar la connexion e tornar ensajar ! Local Messatges dirèctes Onglets Penjats \@%s - Pas res aicí. Suprimir lo partatge Suprimir lo favorit Preferéncias del compte @@ -272,15 +265,6 @@ Suprimir Actualizar Frasa de filtrar - Creacion impossibla de la lsita \"%1$s\": %2$s - Impossible de renomenar la lista \"%1$s\": %2$s - Supression impossibla de la lista \"%1$s\": %2$s - Crear una lista - Renomenar la lista - Suprimir la lista - Cercar lo monde que seguètz - Ajustar un compte a la lista - Suprimir aqueste compte de la lista Descriure lo contengut pels mal vesents (%d caractèr maximum) Descriure los contenguts pels mal vesents (%d caractèrs maximum) @@ -307,7 +291,6 @@ Pas listada Seguidors Dirècte - Nom de la lista Etiquetas sens # Escriure una publicacion Redactar @@ -353,7 +336,6 @@ Sondatge amb opcion : %1$s, %2$s, %3$s, %4$s; %5$s Contunhar Tornar - Acabat \@%s corrèctament senhalat Comentaris suplementaris Transferir a %s @@ -412,7 +394,6 @@ Borrolhon suprimit Fracàs del cargament de las info de responsa Fracàs de l’enviament ! - Volètz vertadièrament suprimir la lista %s \? Repassar las notificacions Enregistrat ! Vòstra nòta privada tocant aqueste compte @@ -484,9 +465,7 @@ 180 jorns 365 jorns Los fichièrs video e àudio pòdon pas despassar %s. - Apondre o suprimir de la lista Tocatz o lisatz lo cercle per causir lo punt focal que deu aparéisser sus las miniaturas. - Avètz pas cap de lista. Mostrar lo nom d’utilizaire dins la barra d’aisinas Quand mai d’un compte es connectat Posicionar lo punt focal @@ -507,8 +486,6 @@ Senhalaments Violacion de las règlas Autre - Fracàs de l’apondon del compte a la lista - Fracàs de la supression del compte de la lista Notificacions quand qualqu’un crèa un compte novèl Notificacions a prepaus dels senhalament a la moderacion Notificacions quand una publicacion ont avètz reagit es modificada @@ -570,7 +547,6 @@ Utilizacion totala Total de comptes Hashtags populars - Actualizar Desconegut La connexion al vòstre servidor a pres tròp de temps Marcatge impossibla de la publicacion : %s diff --git a/app/src/main/res/values-or/strings.xml b/app/src/main/res/values-or/strings.xml index 5026ac90d..02accdc90 100644 --- a/app/src/main/res/values-or/strings.xml +++ b/app/src/main/res/values-or/strings.xml @@ -5,13 +5,11 @@ ପ୍ରସାରଣ ସଙ୍କୋଚନ ପ୍ରତ୍ୟୁତ୍ତର - ପୁନଃଚେଷ୍ଟା କରିବା ମିଡ଼ିଆ ଲୁଚାଅ ସମ୍ପାଦନା ପୂର୍ଵଵତ୍ ସନ୍ଧାନ - ଅଧିକ ସମ୍ପାଦନା ମିଡ଼ିଆ ଵିଵରଣୀ - \ No newline at end of file + diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index c303dedbb..53f213445 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -1,6 +1,5 @@ - Wystąpił błąd. To nie może pozostać puste. Nie znaleziono przeglądarki internetowej. Zbyt długi wpis! @@ -42,7 +41,6 @@ Odpowiedz Podbij Dodaj do ulubionych - Więcej Napisz Wyloguj się Czy na pewno chcesz wylogować się z konta %1$s? @@ -56,8 +54,6 @@ Usuń Wyślij Wyślij! - Spróbuj ponownie - Profil Preferencje Ulubione Wyciszeni użytkownicy @@ -198,7 +194,6 @@ Odpowiadasz na wpis autorstwa @%s Dodaj konto Dodaj nowe Konto Mastodon - Listy Publikowanie jako %1$s Ustaw podpis Usuń @@ -229,12 +224,10 @@ dodaj dane Nazwa Zawartość - Wystąpił problem z łącznością! Sprawdź swoje połączenie internetowe i spróbuj ponownie! Bezpośrednie wiadomości Przypięte Rozwiń Zwiń - Nic tu nie ma. Usuń z ulubionych Usuń i przeredaguj Ustawienia konta @@ -288,15 +281,6 @@ Całe słowo Kiedy słowo kluczowe lub fraza jest tylko alfanumeryczna, filtr będzie zastosowany jeśli pasuje do całego słowa Fraza, która ma być filtrowana - Tworzenie listy nie powiodło się \"%1$s\": %2$s - Zmiana nazwy listy nie powiodła się \"%1$s\": %2$s - Usunięcie listy nie powiodło się \"%1$s\": %2$s - Stwórz listę - Zmień nazwę listy - Usuń listę - Szukaj osób, których obserwujesz - Dodaj konto do listy - Usuń konto z listy Wprowadź opis dla niewidomych i niedowidzących \n(maksymalna długość: %d) @@ -337,7 +321,6 @@ Obserwujący Bezpośrednio Głosowanie z opcjami: %1$s, %2$s, %3$s, %4$s; %5$s - Nazwa listy Hashtag bez # Wyczyść Filtr @@ -384,7 +367,6 @@ Kontynuuj Wstecz - Zakończ Zgłoszenie @%s powiodło się Dodatkowe komentarze Wyślij zgłoszenie do %s @@ -450,7 +432,6 @@ Nie udało się załadować informacji o odpowiedzi Przesłanie wpisu nie powiodło się! - Czy na pewno chcesz usunąć listę %s\? Nie ma ogłoszeń. Ogranicz liczbę powiadomień o zmianach na osi czasu Czas trwania @@ -524,9 +505,6 @@ Wystąpił błąd podczas obserwowania #%s Wystąpił błąd podczas odobserwowywania #%s Naciśnij lub przeciągnij kółko, aby wybrać punkt centralny, który będzie zawsze widoczny w miniaturkach. - Dodaj lub usuń z listy - Nie udało się dodać konta do listy - Nie udało się usunąć konta z listy Odobserwuj #%s\? Domyślny język wpisów Nigdy @@ -544,7 +522,6 @@ Ta instancja nie wspiera obserwowania hashtagów. Obserwowane hashtagi Ładowanie wątku - Nie masz żadnych list. Wycisz powiadomienia %1$s edytował %1$s stworzył @@ -605,7 +582,6 @@ Zarządzaj listami Nieznane Całkowite użycie - Odśwież Dodaj słowo kluczowe Opis nieznany powód diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 967b821c4..062e7e6cb 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -1,6 +1,5 @@ - Um erro ocorreu. Não pode estar vazio. Nenhum navegador foi encontrado. O Toot é muito longo! @@ -46,7 +45,6 @@ Desfazer Boost Favoritar Desfavoritar - Mais Compor Sair Tem certeza que deseja sair da conta %1$s? Isso excluirá todos os dados locais da conta, incluindo rascunhos e preferências. @@ -60,8 +58,6 @@ Excluir TOOT! TOOT! - Tentar novamente - Perfil Preferências Favoritos Usuários silenciados @@ -216,7 +212,6 @@ Respondendo @%s Adicionar conta Adicionar nova conta Mastodon - Listas Postando como %1$s Descrever Remover @@ -252,12 +247,10 @@ Favoritado por Público Seguidores - Ocorreu um erro de rede. Por favor, verifique tua Internet e tente novamente. Fixado \@%s Mostrar mais Mostrar menos - Nada aqui. Excluir e rascunhar Preferências da conta Hashtags @@ -280,15 +273,6 @@ Excluir Atualizar Frase para filtrar - Não foi possível criar a lista \"%1$s\": %2$s - Não foi possível renomear a lista \"%1$s\": %2$s - Não foi possível excluir a lista \"%1$s\": %2$s - Criar uma lista - Renomear lista - Excluir lista - Pesquisar pessoas que você segue - Adicionar conta à lista - Remover conta da lista Descreva para pessoa com deficiência visual (até %d caracteres) Descreva para pessoas com deficiência visual (até %d caracteres) @@ -317,7 +301,6 @@ Favoritado Não-listado Direto - Nome da lista Hashtag sem # Limpar notificações Filtra notificações @@ -362,7 +345,6 @@ Enquete com as opções: %1$s, %2$s, %3$s, %4$s; %5$s Continuar Voltar - Pronto \@%s denunciado com sucesso Comentários adicionais Encaminhar para %s @@ -473,7 +455,6 @@ Animar Emojis personalizados Excluir esta conversa\? Excluir conversa - Deseja excluir a lista %s\? Remover do Salvos Solicitar confirmação antes de favoritar 30 dias @@ -500,7 +481,6 @@ Carregando fio Toque ou arraste o círculo para escolher o ponto focal que estará sempre visível nas miniaturas. %s (%s) - Adicionar ou remover da lista Você se conectou novamente à tua conta atual para conceder permissão de assinatura Push à Pachli. No entanto, ainda tem outras contas que não foram migradas dessa forma. Alterne para elas e autentique novamente uma por uma para habilitar o suporte às notificações UnifiedPush. Para usar notificações Push via UnifiedPush, Pachli precisa de permissão para assinar notificações em teu servidor Mastodon. Isso requer uma nova autenticação para alterar os escopos OAuth concedidos à Pachli. Usar a opção de reautenticar aqui ou nas preferências da conta preservará todos os teus rascunhos e cache locais. Falha ao fixar @@ -526,10 +506,8 @@ Mostrar rascunhos Entrou em %1$s Silenciar notificações - Falha ao adicionar a conta à lista Funciona na maioria dos casos. Nenhum dado é vazado para outros aplicativos. Pode oferecer suporte a métodos de autenticação adicionais, mas requer um navegador compatível. - Falha ao remover a conta da lista %1$s editou Continuar editando Você tem alterações não salvas. @@ -540,7 +518,6 @@ Compartilhar nome de usuário da conta %s (%s) Editado %s - Não tem lista alguma. %s editou teu Toot Esta instância não oferece o recurso de seguir Hashtags. um Toot que eu interagi foi editado @@ -606,9 +583,7 @@ Gerenciar listas Carregar Toots mais recentes Notificações sobre denúncias da moderação - Ocorreu um erro de rede: %s Quer salvar as alterações do teu perfil? - Ocorreu um erro: %s reagir Favoritar o Toot falhou: %s Salvar Toot falhou: %s @@ -618,7 +593,6 @@ O carregamento falhou: %s Nunca %s (palavra inteira) - Atualizar Adicionar palavra-chave Palavras-chave ou frases para filtrar Alguém dando Boost no próprio Toot @@ -645,13 +619,11 @@ %s · %d Toots anexados Compartilhar URL da conta para… Imagem - Tua instância não suporta este recurso: %1$s Ocultar Nome Família da fonte Notificações quando Toots com os quais interagiu são editados Notificações quando Pachli está trabalhando em segundo plano - Ocultar da linha do tempo inicial Mostrar mesmo assim Erro ao carregar as listas Falha ao aceitar a solicitação de seguir: %s diff --git a/app/src/main/res/values-pt-rPT/strings.xml b/app/src/main/res/values-pt-rPT/strings.xml index 98de73a3d..5f890f341 100644 --- a/app/src/main/res/values-pt-rPT/strings.xml +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -17,7 +17,6 @@ %1$s e %2$s Bem-estar Escrever Toot - Pretende remover a lista %s\? Apesar do seu perfil não ser privado, %1$s exige que você reveja manualmente as solicitações para te seguir destes perfis. Subscrever Remover subscrição @@ -60,7 +59,6 @@ Anúncios \@%s %s deu boost - Nada aqui. Nada para ver aqui. Arraste para baixo para atualizar! %s deu boost ao seu toot %s adicionou o seu toot aos favoritos @@ -79,7 +77,6 @@ Remover dos favoritos Guardar Remover dos itens guardados - Mais Escrever Sair Tem a certeza que deseja sair da conta %1$s\? @@ -96,8 +93,6 @@ Apagar e criar novo rascunho TOOT TOOT! - Tentar novamente - Perfil Configurações Configurações da Conta Favoritos @@ -292,16 +287,6 @@ Frase para filtrar Adicionar Conta Adicionar nova Conta Mastodon - Não foi possível renomear a lista \"%1$s\": %2$s - Listas - Não foi possível criar a lista \"%1$s\": %2$s - Não foi possível apagar a lista \"%1$s\": %2$s - Criar uma lista - Renomear a lista - Apagar a lista - Pesquisar pessoas que você segue - Adicionar conta à lista - Remover conta da lista Publicar com a conta %1$s Descrição para deficientes visuais @@ -365,7 +350,6 @@ Privado Direto Votação com as opções: %1$s, %2$s, %3$s, %4$s; %5$s - Nome da lista Adicionar hashtag Hashtag sem # Hashtags @@ -416,7 +400,6 @@ Continuar Retroceder - Feito \@%s denunciado com sucesso Comentários adicionais Encaminhar para %s @@ -477,8 +460,6 @@ Erro ao carregar informação de resposta Rascunho apagado O toot para o qual escreveu um rascunho foi apagado - Ocorreu um erro. - Ocorreu um erro de conetividade! Por favor, verifique a sua ligação e tente novamente! Isto não pode estar vazio. Não foi possível encontrar um navegador. Guardar diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 763f44f0a..162a0a698 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -1,7 +1,5 @@ - Произошла ошибка. - Произошла ошибка сети! Пожалуйста, проверьте интернет-соединение и попробуйте снова! Не может быть пустым. Не удается найти веб-браузер. Статус слишком длинный! @@ -39,7 +37,6 @@ Показать меньше Развернуть Свернуть - Ничего нет. Ничего нет. Потяните вниз, чтобы обновить! %s продвинул(а) вашу запись %s понравился ваша запись @@ -52,7 +49,6 @@ Убрать продвижение Нравится Убрать из избранного - Больше Сочинить Выйти Вы действительно хотите выйти из учётной записи %1$s? @@ -67,8 +63,6 @@ Удалить и исправить ТРУБИТЬ ТРУБИТЬ! - Повторить - Профиль Предпочтения Предпочтения учетной записи Избранное @@ -264,16 +258,6 @@ Слова на фильтр Добавить аккаунт Добавить новый акканут Mastodon - Списки - Не удалось создать список \"%1$s\": %2$s - Не удалось переименовать список \"%1$s\": %2$s - Не удалось удалить список \"%1$s\": %2$s - Создать список - Переименовать список - Удалить список - Поиск по вашим подпискам - Добавить аккаунт в список - Удалить аккаунт из списка Отправка от имени %1$s Добавить примечание Удалить @@ -340,7 +324,6 @@ Неизвестно Подписчики Непосредственно - Название списка Хэштег без # Очистить Фильтр @@ -365,7 +348,6 @@ Созданный вами опрос завершился Продолжить Назад - Готово Дополнительные комментарии Скрытые домены Скрытые области @@ -473,7 +455,6 @@ Не удалось загрузить информацию об ответе Черновик удалён Этот гудок не удалось отправить! - Вы действительно хотите удалить список %s\? Скрыть количественную статистику по профилям пользователей Ограничение уведомлений в ленте Просмотр уведомлений diff --git a/app/src/main/res/values-sa/strings.xml b/app/src/main/res/values-sa/strings.xml index 1870f3e6f..fe48bc183 100644 --- a/app/src/main/res/values-sa/strings.xml +++ b/app/src/main/res/values-sa/strings.xml @@ -13,10 +13,7 @@ नैतादृशा सञ्चिका उपारोपणीया । प्रयोजनार्थं जालसञ्चारकं न लब्धम् । नैतद्रिक्तं भवितुमर्हति । - दोषो जातः । कृपया भवतोऽन्तर्जालीयसम्पर्कं परीक्ष्य पुनश्च यत्यताम् ! - दोषो जातः । न किमप्यत्र । नवीकरणार्थमाकृष्यतामधः ! - न किमप्यत्र । संनिपत्यताम् विस्तार्यताम् स्वल्पं दृश्यताम् @@ -62,7 +59,6 @@ नूनमेव बहिर्गन्तुमीहते %1$s इति व्यक्तित्वलेखात् \? बहिर्गम्यताम् रच्यताम् - अधिकम् प्रियता निष्क्रियताम् पुटचिह्नं क्रियताम् प्रियम् @@ -84,8 +80,6 @@ प्रियाः लेखाविन्यासाः विन्यासाः - व्यक्तिविवरणम् - पुनः यत्यताम् %s सशब्दं क्रियताम् सशब्दम् निःशब्दम् @@ -169,15 +163,7 @@ अवारोप्यताम् उपारोप्यमाणम्… सामग्रीणामुपारोपणसिद्धिः वर्तमाना - येषामुसरणं करोषि तेष्वन्विष्यताम् - सूचिर्नश्यताम् - पुनः सूचिनामकरणं क्रियताम् - सूचिः निर्मीयताम् - सूचिर्नष्टुमशक्या \"%1$s\": %2$s - पुनः सूचिनामकरणं कर्तुमशक्यम् \"%1$s\": %2$s - सूचिनिर्माणं कर्तुमशक्यम् \"%1$s\": %2$s अनुसरणानुरोधो नश्यताम् \? - सूचयः नवमास्टोडोनलेखा युज्यताम् नवलेखा युज्यताम् शोधनार्थं वाक्यांशः @@ -299,8 +285,6 @@ \n(%d परिमिता न्यूनाक्षरसङ्ख्या) %1$s लेखया प्रकटनं क्रियते - सूच्याः लेखा नश्यताम् - सूच्यां लेखा स्थाप्यताम् अवारोपणे दोषः पुनः प्रारभ्यताम् पश्चात् @@ -348,7 +332,6 @@ अस्मै पुरस्क्रियताम् %s अन्याः टिप्पण्यः साफल्येनाऽऽवेदनं दत्तमस्य @%s - कृतम् पूर्वम् निरन्तरम् @@ -393,7 +376,6 @@ निश्रेणिचिह्नशीर्षकाः # चिह्नं विना प्रचलितम् प्रचलितं युज्यताम् - सूचिनाम मतदाने मतानि- %1$s, %2$s, %3$s, %4$s; %5$s प्रत्यक्षम् अनुसर्तारः diff --git a/app/src/main/res/values-si/strings.xml b/app/src/main/res/values-si/strings.xml index e031c6853..72f0fecb0 100644 --- a/app/src/main/res/values-si/strings.xml +++ b/app/src/main/res/values-si/strings.xml @@ -51,7 +51,6 @@ පෙරහන සංස්කරණය %1$s, %2$s, සහ %3$s %1$s • %2$s - යළි උත්සාහය ගිණුම අගුළුලන්න මාධ්‍ය සැඟවී ඇත පිළිතුර සාර්ථකව යැවිණි. @@ -82,7 +81,6 @@ ජන්ද %s ජන්ද %s - තව පොත්යොමු %s ඔබව සඳහන් කළා %1$s ගිණුම සමඟ පළකරන්න @@ -168,7 +166,6 @@ පැය %d සැකසුම් සමමුහූර්ත වීමට අසමත් විය පිළිතුරු පෙන්වන්න - පැතිකඩ නව සැඳහුම් පිළිබඳව දැනුම්දීම් සොයන්න ලෙස බෙදාගන්න … @@ -237,7 +234,6 @@ පසුව සංස්කරණය අඳුරු - කිසිවක් නැත. ටූට් යැවෙමින්… පද්ධති පෙරනිමිය සඳැහුම diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index 7187e85b2..76a8e557e 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -6,8 +6,6 @@ Nastavenia účtu Upraviť profil Hľadať - Zoznamy - Vyskytla sa chyba. Oznámenia Priame správy S odpoveďmi @@ -25,7 +23,6 @@ Rýchla odpoveď Odpovedať Obľúbené - Vyskytla sa chyba v sieti! Prosím skontrolujte svoje pripojenie a skúste to znova! Toto nemôže byť prázdne. Súbor sa nepodarilo otvoriť. Domov diff --git a/app/src/main/res/values-sl/strings.xml b/app/src/main/res/values-sl/strings.xml index dd403bc38..19ccf32bb 100644 --- a/app/src/main/res/values-sl/strings.xml +++ b/app/src/main/res/values-sl/strings.xml @@ -1,7 +1,5 @@ - Pojavila se je napaka. - Prišlo je do omrežne napake! Preverite povezavo in poskusite znova! To ne sme biti prazno. Spletnega brskalnika ni bilo mogoče najti. Status je predolgo! @@ -38,7 +36,6 @@ Pokaži manj Razširi Strni - Tukaj ni ničesar. Tukaj ni ničesar. Potegnite navzdol za osvežitev! %s je spodbudil tvoj tut %s je vzljubil vaš tut @@ -50,7 +47,6 @@ Spodbudi Odstrani spodbudo Vzljubi - Več Sestavi Odjava Ali ste prepričani, da se želite odjaviti iz računa %1$s\? @@ -64,8 +60,6 @@ Izbriši TUTNI TUTNI! - Poskusi znova - Profil Možnosti Možnosti računa Priljubljeni @@ -216,16 +210,6 @@ Filtriraj frazo Dodaj račun Dodaj nov Mastodon račun - Seznami - Seznama ni bilo mogoče ustvariti \"%1$s\": %2$s - Seznama ni bilo mogoče preimenovati \"%1$s\": %2$s - Seznama ni bilo mogoče izbrisati \"%1$s\": %2$s - Ustvari seznam - Preimenuj seznam - Izbriši seznam - Poiščite osebe, katerim sledite - Dodaj račun na seznam - Odstrani račun iz seznama Objavljanje z računom %1$s Opišite za slabovidne @@ -284,7 +268,6 @@ Ni prikazano Sledilci Neposredno - Ime seznama Ključnik brez # Počisti Filter @@ -352,7 +335,6 @@ Anketa z izbiro: %1$s, %2$s, %3$s, %4$s; %5$s Nadaljuj Nazaj - Končano \@%s je uspešno prijavljen Dodatni komentarji Posreduj %s diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index 8f3400b0a..55e20054d 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -1,7 +1,5 @@ - Ett fel har uppstått. - Ett nätverksfel uppstod. Kontrollera din anslutning och försök igen. Detta kan inte vara tomt. Det gick inte att hitta en webbläsare. Inlägget är för långt! @@ -39,7 +37,6 @@ Visa mindre Expandera Dölj - Ingenting här. Inget här. Dra ner för att uppdatera! %s puffade ditt inlägg %s favoritmarkerade ditt inlägg @@ -52,7 +49,6 @@ Ta bort knuff Favorit Ta bort favorit - Mer Skriv Logga ut Är du säker på att du vill logga ut från kontot %1$s? @@ -66,8 +62,6 @@ Radera TOOT TOOT! - Försök igen - Profil Inställningar Kontospecifika inställningar Favoriter @@ -236,16 +230,6 @@ Filtrera fras Lägg till konto Lägg till ett nytt Mastodon-konto - Listor - Kunde inte skapa lista \"%1$s\": %2$s - Kunde inte byta namn på lista \"%1$s\": %2$s - Kunde inte radera lista \"%1$s\": %2$s - Skapa en lista - Byt namn på listan - Ta bort listan - Sök efter personer du följer - Lägg till konto i listan - Ta bort kontot från listan Publicerar som %1$s Beskriv innehåll för synskadade (max %d tecken) @@ -312,7 +296,6 @@ Direkt - Listnamn Ladda ned media Laddar ned media Hashtag utan # @@ -365,7 +348,6 @@ Dölj hela domänen Fortsätt Tillbaka - Klar Anmälan av @%s har lyckats Ytterligare kommentarer Vidarebefordra till %s @@ -481,7 +463,6 @@ (Ingen ändring) Visa användarnamn i verktygsrader Visa bekräftelse före favoritmarkering - Vill du verkligen radera listan %s\? Det här inlägget kunde inte skickas! Kunde inte ladda information om svar Utkast raderat @@ -516,10 +497,6 @@ Kunde inte lossa lägg till reaktion Regelbrott - Lägg till eller ta bort från lista - Kunde inte lägga till kontot till listan - Kunde inte ta bort kontot från listan - Du har inga listor. Sluta följa #%s\? nu Ny rapport för %s @@ -609,7 +586,6 @@ Aviseringar när Pachli arbetar i bakgrunden Hämtar aviseringar… Cacheunderhåll… - Uppdatera Att knuffa inlägg misslyckades: %s Rösta i omröstning misslyckades: %s Acceptera följarförfrågan misslyckades: %s @@ -643,9 +619,7 @@ Trendande toots %1$s %2$s Ladda de nyaste inläggen - Ett nätverksfel har uppstått: %s Vill du spara dina profiländringar? - Ett fel har uppstått: %s Alltid Uppladdning misslyckades: %s Aldrig @@ -658,9 +632,7 @@ (Uppdaterad: %1$s) Toots En gång per version - Din server stöder inte denna funktion: %1$s Fontfamilj - Dölj från hemtidlinjen Översätta En uppdatering är tillgänglig Hashtaggar diff --git a/app/src/main/res/values-ta/strings.xml b/app/src/main/res/values-ta/strings.xml index 652df23d8..e5bb81f9f 100644 --- a/app/src/main/res/values-ta/strings.xml +++ b/app/src/main/res/values-ta/strings.xml @@ -1,6 +1,5 @@ - பிழை ஏற்பட்டது. இது காலியாக இருக்க கூடாது. வலை உலாவிகள் ஏதுமில்லை நிலை மிக நீளமாக உள்ளது! @@ -40,7 +39,6 @@ பதிலளி மேலேற்று பிடித்தவை - மேலும் எழுது வெளியேறு நீங்கள் %1$s கணக்கிலிருந்து வெளியேற விரும்புகிறீர்களா? @@ -52,8 +50,6 @@ மேலேற்றத்தை காட்டு புகார் நீக்கு - மீண்டும் முயற்சி - சுயவிவரம் முன்னுரிமைகள் விரும்பியவை ஒலி நீக்கபட்ட பயனர்கள் @@ -188,7 +184,6 @@ \@%s -க்கு பதிலளி கணக்கை சேர்க்க புதிய Mastodon கணக்கைச் சேர்க்க - பட்டியல்கள் %1$s கணக்குடன் பதிவிட தலைப்பை அமை நீக்கு @@ -224,7 +219,6 @@ விடுவி பொருத்து கணக்கரின் முன்னுரிமைகள் - பிணைய பிழை ஏற்பட்டது! உங்கள் இணைப்பைச் சரிபார்த்து மீண்டும் முயற்சிக்கவும்! டூத் அனுப்புவதில் பிழை ஏற்பட்டுள்ளது நேரடி தகவல் பட்டைகள் diff --git a/app/src/main/res/values-th/strings.xml b/app/src/main/res/values-th/strings.xml index 413892b41..cdd8a4b61 100644 --- a/app/src/main/res/values-th/strings.xml +++ b/app/src/main/res/values-th/strings.xml @@ -19,7 +19,6 @@ ส่งต่อไปยัง %s ความคิดเห็นเพิ่มเติม รายงาน @%s เรียบร้อยแล้ว - ทำ ย้อนกลับ ต่อไป @@ -58,7 +57,6 @@ แฮชแท็ก แฮชแท็กโดยไม่มี # เพิ่มแฮชแท็ก - ชื่อรายการ โพลกับตัวเลือก: %1$s, %2$s, %3$s, %4$s; %5$s ไดเร็กต์ ผู้ติดตาม @@ -119,15 +117,6 @@ \n(จำกัด %d ตัวอักขระ) โพสต์ด้วยบัญชี %1$s - ลบบัญชีออกจากรายการ - เพิ่มบัญชีไปใส่รายการ - ค้นหาผู้ติดตาม - ลบรายการ - เปลี่ยนชื่อรายการ - สร้างรายการ - ไม่สามารถลบรายการได้ \"%1$s\": %2$s - ไม่สามารถเปลี่ยนชื่อรายการได้ \"%1$s\": %2$s - ไม่สามารถสร้างรายการได้ \"%1$s\": %2$s เพิ่มบัญชี Mastodon ใหม่ เพิ่มบัญชี วลีที่ต้องการกรอง @@ -311,8 +300,6 @@ ผู้ใช้ที่ปิดเสียงไว้ ที่คั่นหน้า ชื่นชอบ - โปรไฟล์ - ลองอีกครั้ง โพสต์! โพสต์ ลบแล้วร่างใหม่ @@ -327,7 +314,6 @@ ติดตาม คุณต้องการออกจากระบบของบัญชี %1$s หรือไม่\? เขียนโพสต์ใหม่ - อื่น ๆ เลิกชื่นชอบ คั่นหน้า ชื่นชอบ @@ -342,7 +328,6 @@ %s ได้ชื่นชอบโพสต์ของคุณ %s ได้ดันโพสต์ของคุณ ไม่มีอะไรที่นี่ ลากลงเพื่อรีเฟรช! - ไม่มีอะไรที่นี่ ย่อ ขยาย แสดงน้อยลง @@ -381,9 +366,6 @@ ข้อความสถานะยาวเกินไป! ไม่พบเว็บเบราว์เซอร์ที่จะใช้งาน ต้องใส่ข้อความ - เกิดข้อผิดพลาดเครือข่าย! กรุณาตรวจสอบการเชื่อมต่อและลองอีกครั้ง! - เกิดข้อผิดพลาด - รายการ ล้างค่า ค้นหา แก้ไขโปรไฟล์ @@ -427,7 +409,6 @@ โพสต์ที่คุณได้ร่างตอบไว้ ถูกลบแลัว ลบฉบับร่างแล้ว ล้มเหลวในการโหลดข้อมูลตอบกลับ - คุณต้องการลบลิสต์ %s ใช่ไหม\? คุณไม่สามารถอัปโหลดไฟล์แนบมากกว่า %1$d ได้ diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index ddc8379f7..cbb5630f4 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -1,7 +1,5 @@ - 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. Kullanılabilir web tarayıcısı bulunamadı. Gönderi çok uzun! @@ -39,7 +37,6 @@ Daha az göster Genişlet Daralt - Burada hiçbir şey yok. Burada henüz hiç birşey yok. Yenilemek için aşağıya çekin! %s gönderinizi paylaştı %s gönderinizi gözdelerilerine ekledi @@ -50,7 +47,6 @@ Yanıtla Yeniden Paylaş Gözdele - Devamı Oluştur Oturumu kapat Bu oturumu sonlandırmak istediğinizden emin misiniz%1$s\? Bu, taslaklar ve tercihler dahil olmak üzere hesabın tüm yerel verilerini silecektir. @@ -64,8 +60,6 @@ Sil GÖNDER GÖNDER! - Tekrar dene - Profil Tercihler Hesap tercihleri Gözdeler @@ -213,7 +207,6 @@ Medya Hesap Ekle Yeni Mastodon hesabı ekle - Listeler %1$s hesabıyla gönderiliyor İçeriği görme engelliler için açıkla (%d karakter limiti) @@ -293,15 +286,6 @@ Tüm dünya Bir anahtar kelime veya kelime öbeği sadece alfanümerik olduğunda, yalnızca tüm kelimeyle eşleşirse uygulanır Süzgeçlenecek ifade - Liste oluşturulamadı \"%1$s\": %2$s - Liste oluşturulamadı \"%1$s\": %2$s - Liste silinemedi \"%1$s\": %2$s - Liste oluştur - Listeyi güncelle - Listeyi sil - Takip ettiğim kişilerde ara - Listeye hesap ekle - Hesabı listeden kaldır Ortam: %s İçerik uyarısı: %s Açıklama yok @@ -312,7 +296,6 @@ Takipçiler Doğrudan Seçenekli anket: %1$s, %2$s, %3$s, %4$s; %5$s - Liste adı # Etiket olmadan Temizle Süzgeçle @@ -348,7 +331,6 @@ Devam Geri - Tamam \@%s başarıyla bildirildi Ek Yorumlar %s adresine ilet @@ -458,11 +440,7 @@ Bu zamanlanmış yayını sil\? etkileşimde bulunduğun bir gönderi düzenlendi Küçük görsellerde her zaman görülebilecek odak noktasını seçmek için daireye dokunun veya sürükleyin. - Listeden ekle veya kaldır - Hesap listeye eklenemedi - Hesap listeden kaldırılamadı Hiç duyuru yok. - Listen yok. 30 gün Taslağı kurtarmak mı\? (Taslağı geri yüklediğinizde ekler yeniden yüklenir.) Kullanıcı adını araç çubuklarında göster @@ -484,7 +462,6 @@ \n - Takipçi/Gönderi istatistikleri \n \nBesleme bildirimleri etkilenmeyecek , ama manuel olarak tercihlerinizi gözden geçirebilirsiniz. - %s listesini gerçekten silmek istiyor musunuz\? Profillerdeki niceliksel istatistikleri gizle Gönderi Oluştur Taslağı kaydediyor… @@ -549,7 +526,6 @@ #etiket Kaydedilmemiş değişikliklerin var. %1$s düzenledi - Yenile Düzenlemeler Açıklama Görsel @@ -620,6 +596,5 @@ \n \nBu Mastodon sorununu #25398. Yükleme başarısız oldu: %s - Anasayfa ağ akışından gizle Oynatma başarısız oldu: %s diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index b8b7dab46..1f5e7cd39 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -1,6 +1,5 @@ - Сталася помилка. \@%s Редагувати профіль Запити на стеження @@ -23,8 +22,6 @@ Допис задовгий! Не вдалося знайти браузер, який можна використати. Не може бути порожнім. - Сталася помилка мережі. Перевірте інтернет-з\'єднання та спробуйте знову. - Списки Скинути Пошук Редагувати профіль @@ -68,8 +65,6 @@ Заблоковані користувачі Закладки Вподобане - Профіль - Повторити Видалити та перестворити Видалити Змінити @@ -90,7 +85,6 @@ %s надсилає запит на підписку %s підписується на вас Тут нічого немає. Потягніть вниз, щоб оновити! - Нічого немає. Згорнути Розгорнути Натисніть для перегляду @@ -117,7 +111,6 @@ ПОШИРИТИ Показати поширення Сховати поширення - Розгорнути Скасувати поширення Поширити %s вподобує ваш допис @@ -191,7 +184,6 @@ Не вдалося звітувати Додаткові коментарі Звіт @%s надіслано - Готово Назад Продовжити @@ -253,15 +245,6 @@ Помилка надсилання допису Надсилання допису… Публікування як %1$s - Вилучити обліковий запис зі списку - Додати обліковий запис до списку - Пошук серед тих, на кого ви підписані - Видалити список - Оновити список - Створити список - Не вдалося видалити список \"%1$s\": %2$s - Не вдалося оновити список \"%1$s\": %2$s - Не вдалося створити список \"%1$s\": %2$s Додати новий обліковий запис Mastodon Додати обліковий запис Фільтрувати фразу @@ -417,7 +400,6 @@ Чернетку видалено Не вдалося завантажити дані відповіді Не вдалося надіслати цей допис! - Ви дійсно хочете видалити список %s\? Ви не можете завантажити більше ніж %1$d медіавкладення. Ви не можете завантажити більше ніж %1$d медіавкладення. @@ -453,7 +435,6 @@ Вибрати список Хештег без # Додати хештег - Назва списку Опитування з варіантами: %1$s, %2$s, %3$s, %4$s; %5$s Безпосередньо Додано до закладок @@ -526,9 +507,6 @@ додати реакцію Нова скарга %s Порушення правил - Додати або вилучити зі списку - Не вдалося додати обліковий запис до списку - Не вдалося вилучити обліковий запис зі списку Не слідкувати за #%s\? зараз %s скаржиться %s @@ -537,7 +515,6 @@ з\'явилася нова скарга Скарги Сповіщення про звіти про модерацію - У вас немає списків. Спам Інше Цей сервер не підтримує слідкування за хештегами. @@ -585,7 +562,6 @@ Усього облікових записів Стежити за хештегом #hashtag - Оновити Невідомо Надто тривала спроба з\'єднання з вашим сервером невідома причина @@ -635,5 +611,4 @@ \n \nЦе помилка #25398 у Mastodon. Не вдалося вивантажити: %s - Сховати з домашньої стрічки diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index 88e39819f..027ae348a 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -19,9 +19,6 @@ %s đăng lại tút của bạn Máy chủ %s không có emoji tùy chỉnh Lỗi đăng tút - Không thể xóa danh sách \"%1$s\": %2$s - Không thể cập nhật danh sách \"%1$s\": %2$s - Không thể tạo danh sách \"%1$s\": %2$s Xảy ra lỗi khi đăng tút. Tải lên không thành công. Không thể đính kèm ảnh và video cùng một lúc. @@ -32,16 +29,12 @@ Vượt quá số ký tự cho phép! Không tìm thấy trình duyệt web. Không được để trống. - Rớt mạng! Xin kiểm tra kết nối và thử lại! - Đã có lỗi xảy ra. - Danh sách Làm tươi Tìm kiếm Hồ sơ Cá nhân Cài đặt Đăng xuất - Xong ĐĂNG Quay lại Tiếp tục @@ -120,8 +113,6 @@ Những người đã ẩn Lưu Thích - Trang hồ sơ - Thử lại Xóa & viết lại Xóa Sửa @@ -134,7 +125,6 @@ Theo dõi Bạn có muốn đăng xuất tài khoản %1$s\? Dữ liệu của tài khoản sẽ bị xóa, bao gồm những bản nháp và thiết lập. Soạn tút - Thêm Bỏ lưu Lưu Thích @@ -145,7 +135,6 @@ Ghi chú\? Báo cáo @%s Trượt xuống để tải nội dung! - Trống. Thu gọn Tiếp tục đọc Thu gọn @@ -339,7 +328,6 @@ Hashtag Không cần dấu # Thêm hashtag - Tên danh sách Lượt bình chọn: %1$s, %2$s, %3$s, %4$s; %5$s Nhắn riêng Người theo dõi @@ -393,12 +381,6 @@ \n(Tối đa %d ký tự) Đăng với tư cách %1$s - Thêm người này vào danh sách - Xóa người này khỏi danh sách - Tìm người để theo dõi - Xóa danh sách - Cập nhật danh sách - Tạo danh sách Thêm tài khoản Mastodon Thêm tài khoản Cụm từ muốn lọc @@ -433,7 +415,6 @@ Vĩnh viễn Thời hạn - Bạn thật sự muốn xóa danh sách %s\? Đính kèm Âm thanh Đã xóa tút trả lời nháp @@ -493,9 +474,6 @@ Không thể ghim biểu cảm Thông báo báo cáo kiểm duyệt - Thêm hoặc xoá khỏi danh sách - Không thể thêm người vào danh sách - Không thể xoá người khỏi danh sách Bỏ theo dõi #%s\? vừa xong Báo cáo mới trên %s @@ -504,7 +482,6 @@ Đã bỏ theo dõi #%s có một báo cáo mới Báo cáo - Chưa có danh sách nào. Vi phạm nội quy máy chủ Spam Khác @@ -553,7 +530,6 @@ người dùng Theo dõi hashtag #hashtag - Làm mới Chưa biết Mất thời gian kết nối quá lâu chưa rõ lý do @@ -603,7 +579,6 @@ Đang nạp thông báo… Bảo trì bộ nhớ đệm… Không thể tải lên: %s - Ẩn khỏi bảng tin Không thể phát: %s Xóa bộ lọc \'%1$s\'\? Xóa diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 5bf415104..d3759b88a 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -1,7 +1,5 @@ - 出错了。 - 网络请求出错,请检查互联网连接并重试。 内容不能为空。 找不到可用的浏览器。 嘟文太长了! @@ -39,7 +37,6 @@ 折叠内容 展开 折叠 - 还没有内容。 还没有内容,向下拉动即可刷新! %s 转嘟了你的嘟文 %s 喜欢了你的嘟文 @@ -52,7 +49,6 @@ 取消转嘟 喜欢 取消喜欢 - 更多 发表嘟文 注销 你确定要退出登录 %1$s 吗?这会删除账户的所有本地数据,包括草稿和选项。 @@ -67,8 +63,6 @@ 删除并重新编辑 嘟嘟 嘟嘟! - 重试 - 个人资料 设置 账户设置 喜欢 @@ -242,16 +236,6 @@ 需要过滤的文字 添加账号 添加新的 Mastodon 账号 - 列表 - 无法新建列表 \"%1$s\": %2$s - 无法更新列表 \"%1$s\": %2$s - 无法删除列表 \"%1$s\": %2$s - 新建列表 - 更新列表 - 删除列表 - 搜索已关注的用户 - 添加用户到列表 - 从列表中移除用户 以 %1$s 身份发布嘟文 为视觉障碍用户描述内容(最多 %d 个字符) @@ -316,7 +300,6 @@ 私信 - 列表名 话题名(不含前面的 # 号) 清空 分类 @@ -370,7 +353,6 @@ 列表 继续 返回 - 完成 成功举报 @%s 附加留言 转发到 %s @@ -429,7 +411,6 @@ 草稿已删除 加载回复信息失败 嘟文发送失败! - 确认删除列表 %s? 最多只可上传 %1$d 个媒体附件。 @@ -510,10 +491,6 @@ %s 报告了 %s 有新报告 报告 - 从列表中添加或删除 - 未能将账户添加到列表 - 未能从列表中删除账户 - 你没有任何列表。 取关 #%s 吗? 立即 附上了 %s · %d 个嘟文 @@ -567,7 +544,6 @@ 总账户 #hashtag 关注话题标签 - 刷新 未知 联系你的服务器花了太长时间 未知原因 @@ -617,7 +593,6 @@ 缓存维护… 后台活动 上传失败了:%s - 不出现在首页时间线中 播放失败了:%s 删除筛选器\'%1$s\'吗? 删除 diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index be135ea9c..3b6a5ecd3 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -1,7 +1,5 @@ - 應用程式出現異常。 - 網絡請求出錯,請檢查互聯網連接並重試! 內容不能為空。 沒有可用的瀏覽器。 嘟文太長了! @@ -39,7 +37,6 @@ 摺疊內容 展開 摺疊 - 沒有內容。 還沒有內容,向下拉動即可重新整理! %s 轉嘟了你的嘟文 %s 把你的嘟文加入了最愛 @@ -52,7 +49,6 @@ 取消轉嘟 收藏 取消收藏 - 更多 撰寫嘟文 登出 確定要登出 %1$s 嗎? @@ -67,8 +63,6 @@ 刪除並重新編輯 嘟嘟 嘟嘟! - 重試 - 個人資料 設定 帳戶設定 我的收藏 @@ -241,16 +235,6 @@ 需要過濾的文字 加入帳號 加入新的 Mastodon 帳號 - 列表 - 無法新建列表 \"%1$s\": %2$s - 無法重命名列表 \"%1$s\": %2$s - 無法刪除列表 \"%1$s\": %2$s - 新建列表 - 重命名列表 - 刪除列表 - 搜索已關注的用戶 - 添加用戶到列表 - 從列表中移除用戶 以 %1$s 發嘟文 為視覺障礙用戶提供的描述\n(限制 %d 字) @@ -327,7 +311,6 @@ 私信 - 列表名 話題名(不含前面的 # 號) 清空 分類 @@ -399,7 +382,6 @@ 草稿已刪除 載入回覆資訊失敗 這條嘟文發送失敗! - 你確定要刪除列表 %s? 你無法上傳超過 %1$d 媒體附件。 @@ -433,7 +415,6 @@ 轉送至 %s 額外的評論 成功回報 @%s - 完成 返回 繼續 diff --git a/app/src/main/res/values-zh-rMO/strings.xml b/app/src/main/res/values-zh-rMO/strings.xml index bc8a00fc7..79f7d3a4c 100644 --- a/app/src/main/res/values-zh-rMO/strings.xml +++ b/app/src/main/res/values-zh-rMO/strings.xml @@ -1,7 +1,5 @@ - 應用程式出現異常 - 網絡請求出錯,請檢查互聯網連接並重試 內容不能為空 沒有可用的瀏覽器 嘟文太長了! @@ -39,7 +37,6 @@ 摺疊內容 展開 摺疊 - 沒有內容 還沒有內容,向下拉動即可重新整理 %s 轉嘟了你的嘟文 %s 收藏了你的嘟文 @@ -52,7 +49,6 @@ 取消轉嘟 收藏 取消收藏 - 更多 新嘟文 登出 確定要登出 %1$s 嗎? @@ -67,8 +63,6 @@ 刪除並重新編輯 嘟嘟 嘟嘟! - 重試 - 個人資料 設定 帳戶設定 我的收藏 @@ -241,16 +235,6 @@ 需要過濾的文字 加入帳號 加入新的 Mastodon 帳號 - 列表 - 無法新建列表 \"%1$s\": %2$s - 無法重命名列表 \"%1$s\": %2$s - 無法刪除列表 \"%1$s\": %2$s - 新建列表 - 重命名列表 - 刪除列表 - 搜索已關注的用戶 - 添加用戶到列表 - 從列表中移除用戶 以 %1$s 發嘟文 為視覺障礙用戶提供的描述\n(限制 %d 字) @@ -325,7 +309,6 @@ 私信 - 列表名 話題名(不含前面的 # 號) 清空 分類 diff --git a/app/src/main/res/values-zh-rSG/strings.xml b/app/src/main/res/values-zh-rSG/strings.xml index 768e90aa8..a9c175376 100644 --- a/app/src/main/res/values-zh-rSG/strings.xml +++ b/app/src/main/res/values-zh-rSG/strings.xml @@ -1,7 +1,5 @@ - 应用程序出现异常 - 网络请求出错,请检查互联网连接并重试 内容不能为空 没有可用的浏览器 嘟文太长了! @@ -39,7 +37,6 @@ 折叠内容 展开 折叠 - 还没有内容 还没有内容,向下拉动即可刷新 %s 转嘟了你的嘟文 %s 喜欢了你的嘟文 @@ -52,7 +49,6 @@ 取消转嘟 喜欢 取消喜欢 - 更多 新嘟文 退出登录 确定要退出账号 %1$s 吗? @@ -67,8 +63,6 @@ 删除并重新编辑 嘟嘟 嘟嘟! - 重试 - 个人资料 设置 帐户设置 喜欢 @@ -242,16 +236,6 @@ 需要过滤的文字 添加账号 添加新的 Mastodon 账号 - 列表 - 无法新建列表 \"%1$s\": %2$s - 无法重命名列表 \"%1$s\": %2$s - 无法删除列表 \"%1$s\": %2$s - 新建列表 - 重命名列表 - 删除列表 - 搜索已关注的用户 - 添加用户到列表 - 从列表中移除用户 以 %1$s 发布嘟文 为视觉障碍用户提供的描述\n(限制 %d 字) @@ -324,7 +308,6 @@ 私信 - 列表名 话题名(不含前面的 # 号) 清空 分类 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 260e659b5..811c5f961 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -1,7 +1,5 @@ - 應用程式出現異常。 - 網絡請求出錯,請檢查互聯網連接並重試! 內容不能為空。 沒有可用的瀏覽器。 嘟文太長了! @@ -39,7 +37,6 @@ 摺疊內容 展開 摺疊 - 沒有內容。 還沒有內容,向下拉動即可重新整理! %s 轉嘟了你的嘟文 %s 最愛了你的嘟文 @@ -52,7 +49,6 @@ 取消轉嘟 最愛 取消最愛 - 更多 撰寫嘟文 登出 確定要登出 %1$s 嗎? @@ -67,8 +63,6 @@ 刪除並重新編輯 嘟嘟 嘟嘟! - 重試 - 個人資料 設定 帳戶設定 我的最愛 @@ -241,16 +235,6 @@ 需要過濾的文字 加入帳號 加入新的 Mastodon 帳號 - 列表 - 無法新建列表 \"%1$s\": %2$s - 無法重命名列表 \"%1$s\": %2$s - 無法刪除列表 \"%1$s\": %2$s - 新建列表 - 重命名列表 - 刪除列表 - 搜索已關注的用戶 - 添加用戶到列表 - 從列表中移除用戶 以 %1$s 發嘟文 為視覺障礙用戶提供的描述 @@ -326,7 +310,6 @@ 私信 - 列表名 話題名(不含前面的 # 號) 清空 分類 @@ -373,7 +356,6 @@ 圖片 %s 的動作 繼續 返回 - 完成 成功回報 @%s 附加留言 轉發到 %s @@ -410,7 +392,6 @@ 這條嘟文發送失敗! 附件 錄音 - 你確定要刪除列表 %s? 7 天 3 天 1 天 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e94b9a089..1e1e6cf11 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -15,15 +15,10 @@ ~ You should have received a copy of the GNU General Public License along with Pachli; if not, ~ see . --> - An error occurred. - An error occurred: %s - A network error occurred. Please check your connection and try again. - A network error occurred: %s This cannot be empty. Couldn\'t find a web browser to use. The post is too long! Video and audio files cannot exceed %s MB in size. - Your server does not support this feature: %1$s The image could not be edited. That type of file cannot be uploaded. That file could not be opened. @@ -84,7 +79,6 @@ Expand Collapse Edited %s - Nothing here. Nothing here. Pull down to refresh! %s boosted your post %s favorited your post @@ -106,7 +100,6 @@ Remove favorite Bookmark Remove bookmark - More Compose Log out Are you sure you want to log out of %1$s? This will delete all local data of the account, including drafts and preferences. @@ -134,8 +127,6 @@ Continue editing TOOT TOOT! - Retry - Profile Preferences Account preferences Favorites @@ -392,22 +383,9 @@ %s (%s) Add Account Add new Mastodon Account - Lists Lists - loading… Lists - failed to load Manage lists - Could not create list \"%1$s\": %2$s - Could not update list \"%1$s\": %2$s - Could not delete list \"%1$s\": %2$s - Create a list - Update the list - Delete the list - Search for people you follow - Add account to the list - Remove account from the list - Add or remove from list - Failed to add the account to the list - Failed to remove the account from the list Posting as %1$s Describe content for the visually impaired (%d character limit) @@ -506,7 +484,6 @@ Post language Works in most cases. No data is leaked to other apps. May support additional authentication methods, but requires a supported browser. - List name Add hashtag Hashtag without # Hashtags @@ -514,7 +491,6 @@ You have no lists, yet Manage lists Error loading lists - Hide from the home timeline List Delete notifications Filter notifications @@ -558,7 +534,6 @@ Continue Back - Done Successfully reported @%s Additional comments Forward to %s @@ -594,7 +569,6 @@ You don\'t have any drafts. You don\'t have any scheduled posts. There are no announcements. - You don\'t have any lists. Mastodon has a minimum scheduling interval of 5 minutes. Show username in toolbars Show link previews in timelines @@ -618,7 +592,6 @@ You cannot upload more than %1$d media attachment. You cannot upload more than %1$d media attachments. - Do you really want to delete the list %s? This post failed to send! Failed loading Reply information Draft deleted @@ -641,7 +614,6 @@ Spam Other Unfollow #%s? - Refresh Mute notifications Edited: %1$s @@ -718,8 +690,4 @@ Next scheduled check: %1$s Could not download %1$s: %2$d %3$s - Show replies to: - Any followed user - Members of the list - No one diff --git a/app/src/main/java/app/pachli/util/Lazy.kt b/core/common/src/main/kotlin/app/pachli/core/common/util/Lazy.kt similarity index 81% rename from app/src/main/java/app/pachli/util/Lazy.kt rename to core/common/src/main/kotlin/app/pachli/core/common/util/Lazy.kt index c1445a001..57fc0747f 100644 --- a/app/src/main/java/app/pachli/util/Lazy.kt +++ b/core/common/src/main/kotlin/app/pachli/core/common/util/Lazy.kt @@ -1,4 +1,4 @@ -package app.pachli.util +package app.pachli.core.common.util @Suppress("NOTHING_TO_INLINE") inline fun unsafeLazy(noinline initializer: () -> T): Lazy = diff --git a/core/designsystem/lint-baseline.xml b/core/designsystem/lint-baseline.xml index b012cffe3..1323f1839 100644 --- a/core/designsystem/lint-baseline.xml +++ b/core/designsystem/lint-baseline.xml @@ -1,5 +1,5 @@ - + @@ -19,7 +19,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/core/designsystem/src/main/res/values/colors.xml b/core/designsystem/src/main/res/values/colors.xml index 3731f7020..5fb7a2cec 100644 --- a/core/designsystem/src/main/res/values/colors.xml +++ b/core/designsystem/src/main/res/values/colors.xml @@ -92,15 +92,6 @@ #8f000000 #44000000 - - #121419 - @color/tusky_blue - #9BAEC8 - #8192A6 - #7F90A4 - #CAD4E0 - #d9e1e8 - #09497b #39acff diff --git a/core/network/src/main/kotlin/app/pachli/core/network/extensions/ThrowableExtensions.kt b/core/network/src/main/kotlin/app/pachli/core/network/extensions/ThrowableExtensions.kt new file mode 100644 index 000000000..cd75824a6 --- /dev/null +++ b/core/network/src/main/kotlin/app/pachli/core/network/extensions/ThrowableExtensions.kt @@ -0,0 +1,43 @@ +/* + * Copyright 2024 Pachli Association + * + * This file is a part of Pachli. + * + * This program is free software; you can redistribute it and/or modify it under the terms of the + * GNU General Public License as published by the Free Software Foundation; either version 3 of the + * License, or (at your option) any later version. + * + * Pachli is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even + * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General + * Public License for more details. + * + * You should have received a copy of the GNU General Public License along with Pachli; if not, + * see . + */ + +package app.pachli.core.network.extensions + +import org.json.JSONException +import org.json.JSONObject +import retrofit2.HttpException + +/** + * checks if this throwable indicates an error causes by a 4xx/5xx server response and + * tries to retrieve the error message the server sent + * @return the error message, or null if this is no server error or it had no error message + */ +fun Throwable.getServerErrorMessage(): String? { + if (this is HttpException) { + val errorResponse = response()?.errorBody()?.string() + return if (!errorResponse.isNullOrBlank()) { + try { + JSONObject(errorResponse).getString("error") + } catch (e: JSONException) { + null + } + } else { + null + } + } + return null +} diff --git a/core/ui/build.gradle.kts b/core/ui/build.gradle.kts index 5b42ad6c0..5bfd0614e 100644 --- a/core/ui/build.gradle.kts +++ b/core/ui/build.gradle.kts @@ -25,14 +25,22 @@ android { defaultConfig { testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + vectorDrawables.useSupportLibrary = true } } dependencies { // Calls "openLink" from projects.core.activity implementation(projects.core.activity) + implementation(projects.core.common) implementation(projects.core.designsystem) + // Uses HttpException from Retrofit + implementation(projects.core.network) + // Some views inherit from AndroidX views implementation(libs.bundles.androidx) + + implementation(libs.material.iconics) + implementation(libs.material.typeface) } diff --git a/core/ui/lint-baseline.xml b/core/ui/lint-baseline.xml index f32fed49a..e596e7ba8 100644 --- a/core/ui/lint-baseline.xml +++ b/core/ui/lint-baseline.xml @@ -1,4 +1,202 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/ui/src/main/kotlin/app/pachli/core/ui/BackgroundMessageView.kt b/core/ui/src/main/kotlin/app/pachli/core/ui/BackgroundMessageView.kt new file mode 100644 index 000000000..139c66693 --- /dev/null +++ b/core/ui/src/main/kotlin/app/pachli/core/ui/BackgroundMessageView.kt @@ -0,0 +1,123 @@ +/* + * Copyright 2024 Pachli Association + * + * This file is a part of Pachli. + * + * This program is free software; you can redistribute it and/or modify it under the terms of the + * GNU General Public License as published by the Free Software Foundation; either version 3 of the + * License, or (at your option) any later version. + * + * Pachli is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even + * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General + * Public License for more details. + * + * You should have received a copy of the GNU General Public License along with Pachli; if not, + * see . + */ + +package app.pachli.core.ui + +import android.content.Context +import android.os.Build +import android.text.Spannable +import android.text.SpannableStringBuilder +import android.text.method.LinkMovementMethod +import android.text.style.DynamicDrawableSpan +import android.text.style.ImageSpan +import android.util.AttributeSet +import android.view.Gravity +import android.view.LayoutInflater +import android.view.View +import android.widget.LinearLayout +import android.widget.TextView +import androidx.annotation.DrawableRes +import androidx.annotation.StringRes +import app.pachli.core.common.extensions.visible +import app.pachli.core.ui.databinding.ViewBackgroundMessageBinding +import app.pachli.core.ui.extensions.getDrawableRes +import app.pachli.core.ui.extensions.getErrorString +import com.mikepenz.iconics.IconicsDrawable +import com.mikepenz.iconics.typeface.library.googlematerial.GoogleMaterial +import java.util.regex.Pattern + +/** + * This view is used for screens with content which may be empty or might have failed to download. + */ +class BackgroundMessageView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0, +) : LinearLayout(context, attrs, defStyleAttr) { + + private val binding = ViewBackgroundMessageBinding.inflate(LayoutInflater.from(context), this) + + init { + gravity = Gravity.CENTER_HORIZONTAL + orientation = VERTICAL + + if (isInEditMode) { + setup(app.pachli.core.ui.R.drawable.errorphant_offline, app.pachli.core.ui.R.string.error_network) {} + } + } + + fun setup(throwable: Throwable, listener: ((v: View) -> Unit)? = null) { + setup(throwable.getDrawableRes(), throwable.getErrorString(context), listener) + } + + fun setup( + @DrawableRes imageRes: Int, + @StringRes messageRes: Int, + clickListener: ((v: View) -> Unit)? = null, + ) = setup(imageRes, context.getString(messageRes), clickListener) + + /** + * Setup image, message and button. + * If [clickListener] is `null` then the button will be hidden. + */ + fun setup( + @DrawableRes imageRes: Int, + message: String, + clickListener: ((v: View) -> Unit)? = null, + ) { + binding.messageTextView.text = message + binding.messageTextView.movementMethod = LinkMovementMethod.getInstance() + binding.imageView.setImageResource(imageRes) + binding.button.setOnClickListener(clickListener) + binding.button.visible(clickListener != null) + } + + fun showHelp(@StringRes helpRes: Int) { + val size: Int = binding.helpText.textSize.toInt() + 2 + val color = binding.helpText.currentTextColor + val text = context.getText(helpRes) + val textWithDrawables = addDrawables(text, color, size, context) + + binding.helpText.setText(textWithDrawables, TextView.BufferType.SPANNABLE) + + binding.helpText.visible(true) + } + + /** + * Replaces text of the form [iconics name] with their spanned counterparts (ImageSpan). + */ + private fun addDrawables(text: CharSequence, color: Int, size: Int, context: Context): Spannable { + val alignment = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) DynamicDrawableSpan.ALIGN_CENTER else DynamicDrawableSpan.ALIGN_BASELINE + + val builder = SpannableStringBuilder(text) + + val pattern = Pattern.compile("\\[iconics ([0-9a-z_]+)\\]") + val matcher = pattern.matcher(builder) + while (matcher.find()) { + val resourceName = matcher.group(1) + ?: continue + + val drawable = IconicsDrawable(context, GoogleMaterial.getIcon(resourceName)) + drawable.setBounds(0, 0, size, size) + drawable.setTint(color) + + builder.setSpan(ImageSpan(drawable, alignment), matcher.start(), matcher.end(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE) + } + + return builder + } +} diff --git a/app/src/main/java/app/pachli/util/BindingHolder.kt b/core/ui/src/main/kotlin/app/pachli/core/ui/BindingHolder.kt similarity index 87% rename from app/src/main/java/app/pachli/util/BindingHolder.kt rename to core/ui/src/main/kotlin/app/pachli/core/ui/BindingHolder.kt index 87dd843d9..661fdb18c 100644 --- a/app/src/main/java/app/pachli/util/BindingHolder.kt +++ b/core/ui/src/main/kotlin/app/pachli/core/ui/BindingHolder.kt @@ -1,4 +1,4 @@ -package app.pachli.util +package app.pachli.core.ui import androidx.recyclerview.widget.RecyclerView import androidx.viewbinding.ViewBinding diff --git a/core/ui/src/main/kotlin/app/pachli/core/ui/AlertDialogExtensions.kt b/core/ui/src/main/kotlin/app/pachli/core/ui/extensions/AlertDialogExtensions.kt similarity index 98% rename from core/ui/src/main/kotlin/app/pachli/core/ui/AlertDialogExtensions.kt rename to core/ui/src/main/kotlin/app/pachli/core/ui/extensions/AlertDialogExtensions.kt index 934df47e5..df222410e 100644 --- a/core/ui/src/main/kotlin/app/pachli/core/ui/AlertDialogExtensions.kt +++ b/core/ui/src/main/kotlin/app/pachli/core/ui/extensions/AlertDialogExtensions.kt @@ -15,7 +15,7 @@ * see . */ -package app.pachli.core.ui +package app.pachli.core.ui.extensions import android.content.DialogInterface import androidx.annotation.StringRes diff --git a/core/ui/src/main/kotlin/app/pachli/core/ui/extensions/ThrowableExtensions.kt b/core/ui/src/main/kotlin/app/pachli/core/ui/extensions/ThrowableExtensions.kt new file mode 100644 index 000000000..007680028 --- /dev/null +++ b/core/ui/src/main/kotlin/app/pachli/core/ui/extensions/ThrowableExtensions.kt @@ -0,0 +1,44 @@ +/* + * Copyright 2024 Pachli Association + * + * This file is a part of Pachli. + * + * This program is free software; you can redistribute it and/or modify it under the terms of the + * GNU General Public License as published by the Free Software Foundation; either version 3 of the + * License, or (at your option) any later version. + * + * Pachli is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even + * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General + * Public License for more details. + * + * You should have received a copy of the GNU General Public License along with Pachli; if not, + * see . + */ + +package app.pachli.core.ui.extensions + +import android.content.Context +import app.pachli.core.network.extensions.getServerErrorMessage +import app.pachli.core.ui.R +import java.io.IOException +import retrofit2.HttpException + +/** @return A drawable resource to accompany the error message for this throwable */ +fun Throwable.getDrawableRes(): Int = when (this) { + is IOException -> app.pachli.core.ui.R.drawable.errorphant_offline + is HttpException -> { + if (this.code() == 404) { + app.pachli.core.ui.R.drawable.elephant_friend_empty + } else { + app.pachli.core.ui.R.drawable.errorphant_offline + } + } + else -> app.pachli.core.ui.R.drawable.errorphant_error +} + +/** @return A string error message for this throwable */ +fun Throwable.getErrorString(context: Context): String = getServerErrorMessage() ?: when (this) { + is IOException -> context.getString(app.pachli.core.ui.R.string.error_network_fmt, this.message) + is HttpException -> if (this.code() == 404) context.getString(R.string.error_404_not_found_fmt, this.message) else context.getString(R.string.error_generic_fmt, this.message) + else -> context.getString(R.string.error_generic_fmt, this.message) +} diff --git a/core/ui/src/main/kotlin/app/pachli/core/ui/ViewPager2Extensions.kt b/core/ui/src/main/kotlin/app/pachli/core/ui/extensions/ViewPager2Extensions.kt similarity index 98% rename from core/ui/src/main/kotlin/app/pachli/core/ui/ViewPager2Extensions.kt rename to core/ui/src/main/kotlin/app/pachli/core/ui/extensions/ViewPager2Extensions.kt index 9e7148fbd..e1f019a7e 100644 --- a/core/ui/src/main/kotlin/app/pachli/core/ui/ViewPager2Extensions.kt +++ b/core/ui/src/main/kotlin/app/pachli/core/ui/extensions/ViewPager2Extensions.kt @@ -15,7 +15,7 @@ * see . */ -package app.pachli.core.ui +package app.pachli.core.ui.extensions import androidx.recyclerview.widget.RecyclerView import androidx.viewpager2.widget.ViewPager2 diff --git a/app/src/main/res/drawable/elephant_friend_empty.xml b/core/ui/src/main/res/drawable/elephant_friend_empty.xml similarity index 100% rename from app/src/main/res/drawable/elephant_friend_empty.xml rename to core/ui/src/main/res/drawable/elephant_friend_empty.xml diff --git a/app/src/main/res/drawable/errorphant_error.xml b/core/ui/src/main/res/drawable/errorphant_error.xml similarity index 100% rename from app/src/main/res/drawable/errorphant_error.xml rename to core/ui/src/main/res/drawable/errorphant_error.xml diff --git a/app/src/main/res/drawable/errorphant_offline.xml b/core/ui/src/main/res/drawable/errorphant_offline.xml similarity index 100% rename from app/src/main/res/drawable/errorphant_offline.xml rename to core/ui/src/main/res/drawable/errorphant_offline.xml diff --git a/app/src/main/res/drawable/ic_check_24dp.xml b/core/ui/src/main/res/drawable/ic_check_24dp.xml similarity index 100% rename from app/src/main/res/drawable/ic_check_24dp.xml rename to core/ui/src/main/res/drawable/ic_check_24dp.xml diff --git a/app/src/main/res/drawable/ic_clear_24dp.xml b/core/ui/src/main/res/drawable/ic_clear_24dp.xml similarity index 100% rename from app/src/main/res/drawable/ic_clear_24dp.xml rename to core/ui/src/main/res/drawable/ic_clear_24dp.xml diff --git a/app/src/main/res/drawable/ic_close_24dp.xml b/core/ui/src/main/res/drawable/ic_close_24dp.xml similarity index 100% rename from app/src/main/res/drawable/ic_close_24dp.xml rename to core/ui/src/main/res/drawable/ic_close_24dp.xml diff --git a/app/src/main/res/drawable/ic_list.xml b/core/ui/src/main/res/drawable/ic_list.xml similarity index 100% rename from app/src/main/res/drawable/ic_list.xml rename to core/ui/src/main/res/drawable/ic_list.xml diff --git a/app/src/main/res/drawable/ic_more_horiz_24dp.xml b/core/ui/src/main/res/drawable/ic_more_horiz_24dp.xml similarity index 100% rename from app/src/main/res/drawable/ic_more_horiz_24dp.xml rename to core/ui/src/main/res/drawable/ic_more_horiz_24dp.xml diff --git a/app/src/main/res/drawable/ic_person_add_24dp.xml b/core/ui/src/main/res/drawable/ic_person_add_24dp.xml similarity index 100% rename from app/src/main/res/drawable/ic_person_add_24dp.xml rename to core/ui/src/main/res/drawable/ic_person_add_24dp.xml diff --git a/app/src/main/res/drawable/ic_plus_24dp.xml b/core/ui/src/main/res/drawable/ic_plus_24dp.xml similarity index 100% rename from app/src/main/res/drawable/ic_plus_24dp.xml rename to core/ui/src/main/res/drawable/ic_plus_24dp.xml diff --git a/app/src/main/res/layout/view_background_message.xml b/core/ui/src/main/res/layout/view_background_message.xml similarity index 100% rename from app/src/main/res/layout/view_background_message.xml rename to core/ui/src/main/res/layout/view_background_message.xml diff --git a/core/ui/src/main/res/values-ar/strings.xml b/core/ui/src/main/res/values-ar/strings.xml new file mode 100644 index 000000000..23b573e45 --- /dev/null +++ b/core/ui/src/main/res/values-ar/strings.xml @@ -0,0 +1,14 @@ + + + حدث خطأ في الشبكة! يرجى التحقق من اتصالك ثم أعد المحاولة! + وقع خطأ في الشبكة: %s + وقع خطأ: %s + خادمك لا يدعم هذه الميزة: %1$s + وقع هناك خطأ. + لا شيء هنا. + أعد المحاولة + تم + الملف التعريفي + المزيد + إنعاش + diff --git a/core/ui/src/main/res/values-be/strings.xml b/core/ui/src/main/res/values-be/strings.xml new file mode 100644 index 000000000..2217e825c --- /dev/null +++ b/core/ui/src/main/res/values-be/strings.xml @@ -0,0 +1,11 @@ + + + Здарылася сеткавая памылка! Калі ласка, праверце злучэнне і паспрабуйце зноў! + Здарылася памылка. + Тут нічога няма. + Паўтарыць + Гатова + Профіль + Разгарнуць + Абнавіць + diff --git a/core/ui/src/main/res/values-ber/strings.xml b/core/ui/src/main/res/values-ber/strings.xml new file mode 100644 index 000000000..da8154140 --- /dev/null +++ b/core/ui/src/main/res/values-ber/strings.xml @@ -0,0 +1,5 @@ + + + ⵝⴻⵍⵍⴰ ⴷ ⵝⵓⵛⴹⴰ. + ⴰⵎⴻⵖⵏⵓ + diff --git a/core/ui/src/main/res/values-bg/strings.xml b/core/ui/src/main/res/values-bg/strings.xml new file mode 100644 index 000000000..5722bd655 --- /dev/null +++ b/core/ui/src/main/res/values-bg/strings.xml @@ -0,0 +1,10 @@ + + + Възникна грешка в мрежата! Моля, проверете връзката си и опитайте отново! + Възникна грешка. + Нищо тук. + Повторен опит + Готово + Профил + Още + diff --git a/core/ui/src/main/res/values-bn-rBD/strings.xml b/core/ui/src/main/res/values-bn-rBD/strings.xml new file mode 100644 index 000000000..e48fcb502 --- /dev/null +++ b/core/ui/src/main/res/values-bn-rBD/strings.xml @@ -0,0 +1,10 @@ + + + একটি নেটওয়ার্ক ত্রুটি ঘটেছে! আপনার সংযোগ পরীক্ষা করে আবার চেষ্টা করুন! + একটি ত্রুটি ঘটেছে। + এখানে কিছুই নেই। + পুনরায় চেষ্টা কর + সম্পন্ন + প্রোফাইল + অধিক + diff --git a/core/ui/src/main/res/values-bn-rIN/strings.xml b/core/ui/src/main/res/values-bn-rIN/strings.xml new file mode 100644 index 000000000..059663d9b --- /dev/null +++ b/core/ui/src/main/res/values-bn-rIN/strings.xml @@ -0,0 +1,10 @@ + + + একটি নেটওয়ার্ক ত্রুটি ঘটেছে! আপনার সংযোগ পরীক্ষা করে আবার চেষ্টা করুন! + একটি ত্রুটি ঘটেছে। + এখানে কিছুই নেই। + পুনরায় চেষ্টা করা + সম্পন্ন + প্রোফাইল + অধিক + diff --git a/core/ui/src/main/res/values-ca/strings.xml b/core/ui/src/main/res/values-ca/strings.xml new file mode 100644 index 000000000..fd1ebff5e --- /dev/null +++ b/core/ui/src/main/res/values-ca/strings.xml @@ -0,0 +1,11 @@ + + + S\'ha produït un error de connexió! Comproveu la connexió i torneu-ho a provar! + S\'ha produït un error. + No hi ha res aquí. + Torna a intentar-ho + Fet + Perfil + Més + Actualitzar + diff --git a/core/ui/src/main/res/values-ckb/strings.xml b/core/ui/src/main/res/values-ckb/strings.xml new file mode 100644 index 000000000..9c83726ab --- /dev/null +++ b/core/ui/src/main/res/values-ckb/strings.xml @@ -0,0 +1,10 @@ + + + هەڵەیەک لە پەیوەندییەکەدا ڕوویدا. تکایە دڵنیا ببەوە لە بەردەستبوونی هێڵی ئینتەرنێت. + هەڵەیەک ڕوویدا. + هیچ شتێک لێرە نیە. + دووبارە هەوڵ بدە + تەواوبوو + پرۆفایل + زیاتر + diff --git a/core/ui/src/main/res/values-cs/strings.xml b/core/ui/src/main/res/values-cs/strings.xml new file mode 100644 index 000000000..ca53fb8d8 --- /dev/null +++ b/core/ui/src/main/res/values-cs/strings.xml @@ -0,0 +1,10 @@ + + + Vyskytla se chyba sítě! Prosím zkontrolujte své připojení a zkuste to znovu! + Vyskytla se chyba. + Tady nic není. + Zkusit znovu + Hotovo + Profil + Více + diff --git a/core/ui/src/main/res/values-cy/strings.xml b/core/ui/src/main/res/values-cy/strings.xml new file mode 100644 index 000000000..8fe6d328b --- /dev/null +++ b/core/ui/src/main/res/values-cy/strings.xml @@ -0,0 +1,11 @@ + + + Digwyddodd gwall rhwydwaith. Gwiriwch eich cysylltiad a cheisiwch eto. + Bu gwall. + Dim byd yma. + Ceisio eto + Wedi gorffen + Proffil + Mwy + Adnewyddu + diff --git a/core/ui/src/main/res/values-de/strings.xml b/core/ui/src/main/res/values-de/strings.xml new file mode 100644 index 000000000..a1ea6ac84 --- /dev/null +++ b/core/ui/src/main/res/values-de/strings.xml @@ -0,0 +1,14 @@ + + + Ein Netzwerkfehler ist aufgetreten. Bitte überprüfe deine Internetverbindung und versuche es erneut. + Ein Netzwerkfehler ist aufgetreten: %s + Es ist ein Fehler aufgetreten: %s + Dein Server unterstützt diese Funktion nicht: %1$s + Ein Fehler ist aufgetreten. + Hier ist nichts. + Erneut versuchen + Fertig + Profil + Mehr + Aktualisieren + diff --git a/core/ui/src/main/res/values-el/strings.xml b/core/ui/src/main/res/values-el/strings.xml new file mode 100644 index 000000000..a6f7fce6a --- /dev/null +++ b/core/ui/src/main/res/values-el/strings.xml @@ -0,0 +1,8 @@ + + + Προέκυψε σφάλμα δικτύου! Παρακαλώ ελέγξτε τη σύνδεσή σας και προσπαθήστε ξανά. + Προέκυψε ένα σφάλμα. + Προσπαθήστε ξανά + Προφίλ + Περισσότερα + diff --git a/core/ui/src/main/res/values-en-rGB/strings.xml b/core/ui/src/main/res/values-en-rGB/strings.xml new file mode 100644 index 000000000..181933188 --- /dev/null +++ b/core/ui/src/main/res/values-en-rGB/strings.xml @@ -0,0 +1,7 @@ + + + A network error occurred! Please check your connection and try again! + An error occurred: %s + Your server does not support this feature: %1$s + An error occurred. + diff --git a/core/ui/src/main/res/values-eo/strings.xml b/core/ui/src/main/res/values-eo/strings.xml new file mode 100644 index 000000000..2b72612c5 --- /dev/null +++ b/core/ui/src/main/res/values-eo/strings.xml @@ -0,0 +1,10 @@ + + + Reta eraro okazis! Bonvolu kontroli vian konekton kaj klopodi denove! + Eraro okazis. + Nenio tie ĉi. + Reprovi + Farita + Profilo + Pli + diff --git a/core/ui/src/main/res/values-es/strings.xml b/core/ui/src/main/res/values-es/strings.xml new file mode 100644 index 000000000..73ec69b12 --- /dev/null +++ b/core/ui/src/main/res/values-es/strings.xml @@ -0,0 +1,14 @@ + + + Ha ocurrido un error de red. Por favor, comprueba tu conexión e inténtalo de nuevo. + Ha ocurrido un error de red: %s + Ha ocurrido un error: %s + Su servidor no soporta esta función: %1$s + Ha ocurrido un error. + Nada aquí. + Reintentar + Hecho + Perfil + Más + Recargar + diff --git a/core/ui/src/main/res/values-eu/strings.xml b/core/ui/src/main/res/values-eu/strings.xml new file mode 100644 index 000000000..f515e0ff3 --- /dev/null +++ b/core/ui/src/main/res/values-eu/strings.xml @@ -0,0 +1,10 @@ + + + Sareko errore bat sortu da! Zure konexioa ziurta ezazu berriro, mesedez! + Errorea gertatu da. + Kilkerrak besterik ez hemen. + Berriz saiatu + Eginda + Profila + Gehiago + diff --git a/core/ui/src/main/res/values-fa/strings.xml b/core/ui/src/main/res/values-fa/strings.xml new file mode 100644 index 000000000..dfee09d9e --- /dev/null +++ b/core/ui/src/main/res/values-fa/strings.xml @@ -0,0 +1,11 @@ + + + خطای شبکه‌ای رخ داد. لطفاً اتصالتان را بررسی و دوباره تلاش کنید. + خطایی رخ داد. + این‌جا هیچ‌چیزی نیست. + تلاش دوباره + تمام + نمایه + بیش‌تر + نوسازی + diff --git a/core/ui/src/main/res/values-fi/strings.xml b/core/ui/src/main/res/values-fi/strings.xml new file mode 100644 index 000000000..1bdb7904d --- /dev/null +++ b/core/ui/src/main/res/values-fi/strings.xml @@ -0,0 +1,14 @@ + + + Verkkovirhe. Tarkista yhteytesi ja yritä uudelleen. + Tapahtui verkkovirhe: %s + Tapahtui virhe: %s + Palvelimesi ei tue tätä ominaisuutta: %1$s + Tapahtui virhe. + Täällä ei ole mitään. + Yritä uudelleen + Valmis + Profiili + Enemmän + Päivitä + diff --git a/core/ui/src/main/res/values-fr/strings.xml b/core/ui/src/main/res/values-fr/strings.xml new file mode 100644 index 000000000..addfb603b --- /dev/null +++ b/core/ui/src/main/res/values-fr/strings.xml @@ -0,0 +1,14 @@ + + + Une erreur réseau s’est produite ! Veuillez vérifier votre connexion puis réessayez ! + Une erreur réseau s\'est produite : %s + Une erreur s\'est produite : %s + Votre serveur ne prend pas en charge cette fonctionnalité: %1$s + Une erreur s’est produite. + Rien ici. + Réessayer + Terminé + Profil + Plus + Actualiser + diff --git a/core/ui/src/main/res/values-fy/strings.xml b/core/ui/src/main/res/values-fy/strings.xml new file mode 100644 index 000000000..be98691f6 --- /dev/null +++ b/core/ui/src/main/res/values-fy/strings.xml @@ -0,0 +1,9 @@ + + + In netwurk flater die harren foar! Kontrolearje jo ferbining en probearje it noch ris! + Der die harren in flater foar. + Hjir is neat. + Opnij probearje + Profyl + Mear + diff --git a/core/ui/src/main/res/values-ga/strings.xml b/core/ui/src/main/res/values-ga/strings.xml new file mode 100644 index 000000000..c15f12574 --- /dev/null +++ b/core/ui/src/main/res/values-ga/strings.xml @@ -0,0 +1,10 @@ + + + Tharla earráid líonra! Seiceáil do nasc agus bain triail eile as! + Tharla earráid. + Níl aon rud anseo. + Atriail + Déanta + Próifíl + Níos mó + diff --git a/core/ui/src/main/res/values-gd/strings.xml b/core/ui/src/main/res/values-gd/strings.xml new file mode 100644 index 000000000..18127cfda --- /dev/null +++ b/core/ui/src/main/res/values-gd/strings.xml @@ -0,0 +1,11 @@ + + + Thachair mearachd leis an lìonra. Thoir sùil air a’ cheangal agad is feuch ris a-rithist. + Thachair mearachd. + Chan eil dad an-seo. + Feuch ris a-rithist + Deiseil + Pròifil + Barrachd + Ath-nuadhaich + diff --git a/core/ui/src/main/res/values-gl/strings.xml b/core/ui/src/main/res/values-gl/strings.xml new file mode 100644 index 000000000..49166fe70 --- /dev/null +++ b/core/ui/src/main/res/values-gl/strings.xml @@ -0,0 +1,11 @@ + + + Houbo un fallo na rede. Comproba a conexión e inténtao outra vez. + Algo fallou. + Nada por aquí. + Intenta outra vez + Feito + Perfil + Máis + Actualizar + diff --git a/core/ui/src/main/res/values-hi/strings.xml b/core/ui/src/main/res/values-hi/strings.xml new file mode 100644 index 000000000..f39ceba03 --- /dev/null +++ b/core/ui/src/main/res/values-hi/strings.xml @@ -0,0 +1,9 @@ + + + नेटवर्क त्रुटि हुई! कृपया अपना कनेक्शन जांचें और पुनः प्रयास करें! + एक त्रुटि हुई। + यहाँ कुछ नहीं। + पुनः प्रयास करें + पूर्ण + प्रोफाइल + diff --git a/core/ui/src/main/res/values-hu/strings.xml b/core/ui/src/main/res/values-hu/strings.xml new file mode 100644 index 000000000..8e6da0206 --- /dev/null +++ b/core/ui/src/main/res/values-hu/strings.xml @@ -0,0 +1,11 @@ + + + Hálózati hiba történt. Kérjük, ellenőrizd a kapcsolatot, és próbáld meg újra. + Hiba történt. + Nincs itt semmi. + Próbáld újra + Kész + Profil + Több + Frissítés + diff --git a/core/ui/src/main/res/values-in/strings.xml b/core/ui/src/main/res/values-in/strings.xml new file mode 100644 index 000000000..88f1ddb96 --- /dev/null +++ b/core/ui/src/main/res/values-in/strings.xml @@ -0,0 +1,12 @@ + + + Terjadi kesalahan pada jaringan! Harap periksa koneksi Anda dan coba lagi! + Jaringan error: %s + Terjadi error: %s + Server Anda tidak mendukung fitur ini: %1$s + Terjadi kesalahan. + Tidak ada apa pun disini. + Coba lagi + Profil + Lebih + diff --git a/core/ui/src/main/res/values-is/strings.xml b/core/ui/src/main/res/values-is/strings.xml new file mode 100644 index 000000000..46294f4f0 --- /dev/null +++ b/core/ui/src/main/res/values-is/strings.xml @@ -0,0 +1,11 @@ + + + Villa kom upp í netkerfi. Athugaðu nettenginguna þína og prófaðu svo aftur. + Villa kom upp. + Ekkert hér. + Reyna aftur + Lokið + Notandasnið + Meira + Endurlesa + diff --git a/core/ui/src/main/res/values-it/strings.xml b/core/ui/src/main/res/values-it/strings.xml new file mode 100644 index 000000000..f40fbaa3b --- /dev/null +++ b/core/ui/src/main/res/values-it/strings.xml @@ -0,0 +1,14 @@ + + + Si è verificato un errore di rete. Per favore controlla la tua connessione e riprova. + Si è verificato un errore di rete: %s + Si è verificato un errore: %s + Il tuo server non supporta questa feature: %1$s + Si è verificato un errore. + Qui non c\'è nulla. + Riprova + Fatto + Profilo + Di più + Aggiorna + diff --git a/core/ui/src/main/res/values-ja/strings.xml b/core/ui/src/main/res/values-ja/strings.xml new file mode 100644 index 000000000..93ddd6933 --- /dev/null +++ b/core/ui/src/main/res/values-ja/strings.xml @@ -0,0 +1,14 @@ + + + ネットワークエラーが発生しました。接続を確認してもう一度試してください。 + ネットワーク エラーが発生しました: %s + エラーが発生しました: %s + あなたのサーバーはこの機能をサポートしていません: %1$s + エラーが発生しました。 + 何もありません。 + 再試行 + 完了 + プロフィール + その他 + 再読み込み + diff --git a/core/ui/src/main/res/values-kab/strings.xml b/core/ui/src/main/res/values-kab/strings.xml new file mode 100644 index 000000000..33fb0f187 --- /dev/null +++ b/core/ui/src/main/res/values-kab/strings.xml @@ -0,0 +1,8 @@ + + + Tella-d tucḍa. + Ulac walu da. + Ɛreḍ tikkelt-nniḍen + Amaɣnu + Ugar + diff --git a/core/ui/src/main/res/values-ko/strings.xml b/core/ui/src/main/res/values-ko/strings.xml new file mode 100644 index 000000000..778dafd5b --- /dev/null +++ b/core/ui/src/main/res/values-ko/strings.xml @@ -0,0 +1,10 @@ + + + 네트워크 오류가 발생했습니다! 인터넷 연결을 확인하고 다시 시도하십시오! + 오류가 발생했습니다. + 메시지가 없습니다. + 다시 시도 + 완료 + 프로필 + 더 보기 + diff --git a/core/ui/src/main/res/values-lv/strings.xml b/core/ui/src/main/res/values-lv/strings.xml new file mode 100644 index 000000000..35ad53199 --- /dev/null +++ b/core/ui/src/main/res/values-lv/strings.xml @@ -0,0 +1,11 @@ + + + Radās tīkla kļūda! Lūdzu, pārbaudiet savienojumu un mēģiniet vēlreiz! + Notika kļūda. + Šeit nekā nav. + Mēģināt vēlreiz + Gatavs + Profils + Vairāk + Atsvaizdināt + diff --git a/core/ui/src/main/res/values-ml/strings.xml b/core/ui/src/main/res/values-ml/strings.xml new file mode 100644 index 000000000..78834731e --- /dev/null +++ b/core/ui/src/main/res/values-ml/strings.xml @@ -0,0 +1,9 @@ + + + ഒരു നെറ്റ്‌വർക്ക് പിഴവ് സംഭവിച്ചിരിക്കുന്നു! ദയവായി താങ്കളുടെ കണക്ഷൻ പരിശോധിച്ചിട്ട് വീണ്ടും ശ്രമിക്കൂ! + ഒരു പിഴവ് സംഭവിച്ചിരിക്കുന്നു. + ലഭ്യമല്ല + വീണ്ടും ശ്രമിക്കുക + പ്രൊഫൈൽ + കൂടുതൽ + diff --git a/core/ui/src/main/res/values-nb-rNO/strings.xml b/core/ui/src/main/res/values-nb-rNO/strings.xml new file mode 100644 index 000000000..63aba082e --- /dev/null +++ b/core/ui/src/main/res/values-nb-rNO/strings.xml @@ -0,0 +1,11 @@ + + + En nettverksfeil har oppstått. Sjekk tilkoblingen, og prøv igjen. + En feil har oppstått. + Ingenting her. + Prøv igjen + Ferdig + Profil + Mer + Oppdater + diff --git a/core/ui/src/main/res/values-nl/strings.xml b/core/ui/src/main/res/values-nl/strings.xml new file mode 100644 index 000000000..df117fa01 --- /dev/null +++ b/core/ui/src/main/res/values-nl/strings.xml @@ -0,0 +1,14 @@ + + + Er deed zich een netwerkfout voor. Controleer je verbinding en probeer opnieuw. + Er deed zich een netwerkfout voor: %s + Er deed zich een fout voor: %s + Je server beschikt niet over ondersteuning voor deze feature: %1$s + Er deed zich een fout voor. + Hier is niets. + Opnieuw proberen + Klaar + Profiel + Meer + Ververs + diff --git a/core/ui/src/main/res/values-oc/strings.xml b/core/ui/src/main/res/values-oc/strings.xml new file mode 100644 index 000000000..7f06ba77a --- /dev/null +++ b/core/ui/src/main/res/values-oc/strings.xml @@ -0,0 +1,11 @@ + + + Una error ret s’es producha ! Mercés de verificar la connexion e tornar ensajar ! + S\'es produch una error. + Pas res aicí. + Tornar ensajar + Acabat + Perfil + Mai + Actualizar + diff --git a/core/ui/src/main/res/values-or/strings.xml b/core/ui/src/main/res/values-or/strings.xml new file mode 100644 index 000000000..c177f372a --- /dev/null +++ b/core/ui/src/main/res/values-or/strings.xml @@ -0,0 +1,5 @@ + + + ପୁନଃଚେଷ୍ଟା କରିବା + ଅଧିକ + diff --git a/core/ui/src/main/res/values-pl/strings.xml b/core/ui/src/main/res/values-pl/strings.xml new file mode 100644 index 000000000..c88167b82 --- /dev/null +++ b/core/ui/src/main/res/values-pl/strings.xml @@ -0,0 +1,11 @@ + + + Wystąpił problem z łącznością! Sprawdź swoje połączenie internetowe i spróbuj ponownie! + Wystąpił błąd. + Nic tu nie ma. + Spróbuj ponownie + Zakończ + Profil + Więcej + Odśwież + diff --git a/core/ui/src/main/res/values-pt-rBR/strings.xml b/core/ui/src/main/res/values-pt-rBR/strings.xml new file mode 100644 index 000000000..cf5657796 --- /dev/null +++ b/core/ui/src/main/res/values-pt-rBR/strings.xml @@ -0,0 +1,14 @@ + + + Ocorreu um erro de rede. Por favor, verifique tua Internet e tente novamente. + Ocorreu um erro de rede: %s + Ocorreu um erro: %s + Tua instância não suporta este recurso: %1$s + Um erro ocorreu. + Nada aqui. + Tentar novamente + Pronto + Perfil + Mais + Atualizar + diff --git a/core/ui/src/main/res/values-pt-rPT/strings.xml b/core/ui/src/main/res/values-pt-rPT/strings.xml new file mode 100644 index 000000000..21c661ad9 --- /dev/null +++ b/core/ui/src/main/res/values-pt-rPT/strings.xml @@ -0,0 +1,10 @@ + + + Ocorreu um erro de conetividade! Por favor, verifique a sua ligação e tente novamente! + Ocorreu um erro. + Nada aqui. + Tentar novamente + Feito + Perfil + Mais + diff --git a/core/ui/src/main/res/values-ru/strings.xml b/core/ui/src/main/res/values-ru/strings.xml new file mode 100644 index 000000000..af4d30b75 --- /dev/null +++ b/core/ui/src/main/res/values-ru/strings.xml @@ -0,0 +1,10 @@ + + + Произошла ошибка сети! Пожалуйста, проверьте интернет-соединение и попробуйте снова! + Произошла ошибка. + Ничего нет. + Повторить + Готово + Профиль + Больше + diff --git a/core/ui/src/main/res/values-sa/strings.xml b/core/ui/src/main/res/values-sa/strings.xml new file mode 100644 index 000000000..b5f407bd0 --- /dev/null +++ b/core/ui/src/main/res/values-sa/strings.xml @@ -0,0 +1,10 @@ + + + दोषो जातः । कृपया भवतोऽन्तर्जालीयसम्पर्कं परीक्ष्य पुनश्च यत्यताम् ! + दोषो जातः । + न किमप्यत्र । + पुनः यत्यताम् + कृतम् + व्यक्तिविवरणम् + अधिकम् + diff --git a/core/ui/src/main/res/values-si/strings.xml b/core/ui/src/main/res/values-si/strings.xml new file mode 100644 index 000000000..8b6a204cf --- /dev/null +++ b/core/ui/src/main/res/values-si/strings.xml @@ -0,0 +1,7 @@ + + + කිසිවක් නැත. + යළි උත්සාහය + පැතිකඩ + තව + diff --git a/core/ui/src/main/res/values-sk/strings.xml b/core/ui/src/main/res/values-sk/strings.xml new file mode 100644 index 000000000..f3c93b756 --- /dev/null +++ b/core/ui/src/main/res/values-sk/strings.xml @@ -0,0 +1,5 @@ + + + Vyskytla sa chyba v sieti! Prosím skontrolujte svoje pripojenie a skúste to znova! + Vyskytla sa chyba. + diff --git a/core/ui/src/main/res/values-sl/strings.xml b/core/ui/src/main/res/values-sl/strings.xml new file mode 100644 index 000000000..ae21f4d46 --- /dev/null +++ b/core/ui/src/main/res/values-sl/strings.xml @@ -0,0 +1,10 @@ + + + Prišlo je do omrežne napake! Preverite povezavo in poskusite znova! + Pojavila se je napaka. + Tukaj ni ničesar. + Poskusi znova + Končano + Profil + Več + diff --git a/core/ui/src/main/res/values-sv/strings.xml b/core/ui/src/main/res/values-sv/strings.xml new file mode 100644 index 000000000..4e3ae23f3 --- /dev/null +++ b/core/ui/src/main/res/values-sv/strings.xml @@ -0,0 +1,14 @@ + + + Ett nätverksfel uppstod. Kontrollera din anslutning och försök igen. + Ett nätverksfel har uppstått: %s + Ett fel har uppstått: %s + Din server stöder inte denna funktion: %1$s + Ett fel har uppstått. + Ingenting här. + Försök igen + Klar + Profil + Mer + Uppdatera + diff --git a/core/ui/src/main/res/values-ta/strings.xml b/core/ui/src/main/res/values-ta/strings.xml new file mode 100644 index 000000000..4b4b85766 --- /dev/null +++ b/core/ui/src/main/res/values-ta/strings.xml @@ -0,0 +1,8 @@ + + + பிணைய பிழை ஏற்பட்டது! உங்கள் இணைப்பைச் சரிபார்த்து மீண்டும் முயற்சிக்கவும்! + பிழை ஏற்பட்டது. + மீண்டும் முயற்சி + சுயவிவரம் + மேலும் + diff --git a/core/ui/src/main/res/values-th/strings.xml b/core/ui/src/main/res/values-th/strings.xml new file mode 100644 index 000000000..287e72d95 --- /dev/null +++ b/core/ui/src/main/res/values-th/strings.xml @@ -0,0 +1,10 @@ + + + เกิดข้อผิดพลาดเครือข่าย! กรุณาตรวจสอบการเชื่อมต่อและลองอีกครั้ง! + เกิดข้อผิดพลาด + ไม่มีอะไรที่นี่ + ลองอีกครั้ง + ทำ + โปรไฟล์ + อื่น ๆ + diff --git a/core/ui/src/main/res/values-tr/strings.xml b/core/ui/src/main/res/values-tr/strings.xml new file mode 100644 index 000000000..172642656 --- /dev/null +++ b/core/ui/src/main/res/values-tr/strings.xml @@ -0,0 +1,11 @@ + + + Bir ağ hatası oluştu. Lütfen bağlantını kontrol et ve tekrar dene. + Bir hata oluştu. + Burada hiçbir şey yok. + Tekrar dene + Tamam + Profil + Devamı + Yenile + diff --git a/core/ui/src/main/res/values-uk/strings.xml b/core/ui/src/main/res/values-uk/strings.xml new file mode 100644 index 000000000..770a2548b --- /dev/null +++ b/core/ui/src/main/res/values-uk/strings.xml @@ -0,0 +1,11 @@ + + + Сталася помилка мережі. Перевірте інтернет-з\'єднання та спробуйте знову. + Сталася помилка. + Нічого немає. + Повторити + Готово + Профіль + Розгорнути + Оновити + diff --git a/core/ui/src/main/res/values-vi/strings.xml b/core/ui/src/main/res/values-vi/strings.xml new file mode 100644 index 000000000..e0b7026bc --- /dev/null +++ b/core/ui/src/main/res/values-vi/strings.xml @@ -0,0 +1,11 @@ + + + Rớt mạng! Xin kiểm tra kết nối và thử lại! + Đã có lỗi xảy ra. + Trống. + Thử lại + Xong + Trang hồ sơ + Thêm + Làm mới + diff --git a/core/ui/src/main/res/values-zh-rCN/strings.xml b/core/ui/src/main/res/values-zh-rCN/strings.xml new file mode 100644 index 000000000..49ddf90f4 --- /dev/null +++ b/core/ui/src/main/res/values-zh-rCN/strings.xml @@ -0,0 +1,11 @@ + + + 网络请求出错,请检查互联网连接并重试。 + 出错了。 + 还没有内容。 + 重试 + 完成 + 个人资料 + 更多 + 刷新 + diff --git a/core/ui/src/main/res/values-zh-rHK/strings.xml b/core/ui/src/main/res/values-zh-rHK/strings.xml new file mode 100644 index 000000000..a46e8f307 --- /dev/null +++ b/core/ui/src/main/res/values-zh-rHK/strings.xml @@ -0,0 +1,10 @@ + + + 網絡請求出錯,請檢查互聯網連接並重試! + 應用程式出現異常。 + 沒有內容。 + 重試 + 完成 + 個人資料 + 更多 + diff --git a/core/ui/src/main/res/values-zh-rMO/strings.xml b/core/ui/src/main/res/values-zh-rMO/strings.xml new file mode 100644 index 000000000..89b46f37d --- /dev/null +++ b/core/ui/src/main/res/values-zh-rMO/strings.xml @@ -0,0 +1,9 @@ + + + 網絡請求出錯,請檢查互聯網連接並重試 + 應用程式出現異常 + 沒有內容 + 重試 + 個人資料 + 更多 + diff --git a/core/ui/src/main/res/values-zh-rSG/strings.xml b/core/ui/src/main/res/values-zh-rSG/strings.xml new file mode 100644 index 000000000..50cbf434f --- /dev/null +++ b/core/ui/src/main/res/values-zh-rSG/strings.xml @@ -0,0 +1,9 @@ + + + 网络请求出错,请检查互联网连接并重试 + 应用程序出现异常 + 还没有内容 + 重试 + 个人资料 + 更多 + diff --git a/core/ui/src/main/res/values-zh-rTW/strings.xml b/core/ui/src/main/res/values-zh-rTW/strings.xml new file mode 100644 index 000000000..a46e8f307 --- /dev/null +++ b/core/ui/src/main/res/values-zh-rTW/strings.xml @@ -0,0 +1,10 @@ + + + 網絡請求出錯,請檢查互聯網連接並重試! + 應用程式出現異常。 + 沒有內容。 + 重試 + 完成 + 個人資料 + 更多 + diff --git a/core/ui/src/main/res/values/colors.xml b/core/ui/src/main/res/values/colors.xml new file mode 100644 index 000000000..c4ecb4396 --- /dev/null +++ b/core/ui/src/main/res/values/colors.xml @@ -0,0 +1,27 @@ + + + + + #121419 + @color/tusky_blue + #9BAEC8 + #8192A6 + #7F90A4 + #CAD4E0 + #d9e1e8 + diff --git a/core/ui/src/main/res/values/strings.xml b/core/ui/src/main/res/values/strings.xml new file mode 100644 index 000000000..8673000f8 --- /dev/null +++ b/core/ui/src/main/res/values/strings.xml @@ -0,0 +1,14 @@ + + + A network error occurred. Please check your connection and try again. + A network error occurred: %s + An error occurred: %s + Your server does not support this feature: %1$s + An error occurred. + Nothing here. + Retry + Done + Profile + More + Refresh + diff --git a/feature/about/src/main/kotlin/app/pachli/feature/about/AboutActivity.kt b/feature/about/src/main/kotlin/app/pachli/feature/about/AboutActivity.kt index 0adf5f126..831eff7c2 100644 --- a/feature/about/src/main/kotlin/app/pachli/feature/about/AboutActivity.kt +++ b/feature/about/src/main/kotlin/app/pachli/feature/about/AboutActivity.kt @@ -26,7 +26,7 @@ import androidx.fragment.app.FragmentActivity import androidx.viewpager2.adapter.FragmentStateAdapter import app.pachli.core.activity.BottomSheetActivity import app.pachli.core.designsystem.R as DR -import app.pachli.core.ui.reduceSwipeSensitivity +import app.pachli.core.ui.extensions.reduceSwipeSensitivity import app.pachli.feature.about.databinding.ActivityAboutBinding import com.bumptech.glide.request.target.FixedSizeDrawable import com.google.android.material.tabs.TabLayoutMediator diff --git a/feature/about/src/main/kotlin/app/pachli/feature/about/NotificationFragment.kt b/feature/about/src/main/kotlin/app/pachli/feature/about/NotificationFragment.kt index 2188854cf..afb5c2929 100644 --- a/feature/about/src/main/kotlin/app/pachli/feature/about/NotificationFragment.kt +++ b/feature/about/src/main/kotlin/app/pachli/feature/about/NotificationFragment.kt @@ -29,7 +29,7 @@ import androidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener import app.pachli.core.activity.CustomFragmentStateAdapter import app.pachli.core.activity.RefreshableFragment import app.pachli.core.common.extensions.viewBinding -import app.pachli.core.ui.reduceSwipeSensitivity +import app.pachli.core.ui.extensions.reduceSwipeSensitivity import app.pachli.feature.about.databinding.FragmentNotificationBinding import com.google.android.material.color.MaterialColors import com.google.android.material.tabs.TabLayoutMediator diff --git a/feature/about/src/main/kotlin/app/pachli/feature/about/NotificationLogFragment.kt b/feature/about/src/main/kotlin/app/pachli/feature/about/NotificationLogFragment.kt index 0ac70baa9..d7ae47300 100644 --- a/feature/about/src/main/kotlin/app/pachli/feature/about/NotificationLogFragment.kt +++ b/feature/about/src/main/kotlin/app/pachli/feature/about/NotificationLogFragment.kt @@ -50,7 +50,7 @@ import app.pachli.core.activity.RefreshableFragment import app.pachli.core.common.extensions.viewBinding import app.pachli.core.database.dao.LogEntryDao import app.pachli.core.database.model.LogEntryEntity -import app.pachli.core.ui.await +import app.pachli.core.ui.extensions.await import app.pachli.feature.about.databinding.FragmentNotificationLogBinding import app.pachli.feature.about.databinding.ItemLogEntryBinding import com.google.android.material.snackbar.Snackbar diff --git a/feature/lists/build.gradle.kts b/feature/lists/build.gradle.kts new file mode 100644 index 000000000..1e11ddd17 --- /dev/null +++ b/feature/lists/build.gradle.kts @@ -0,0 +1,32 @@ +plugins { + alias(libs.plugins.pachli.android.library) + alias(libs.plugins.pachli.android.hilt) + alias(libs.plugins.kotlin.parcelize) +} + +android { + namespace = "app.pachli.feature.lists" + + defaultConfig { + testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + consumerProguardFiles("consumer-rules.pro") + } +} + +dependencies { + implementation(projects.core.activity) + implementation(projects.core.common) + implementation(projects.core.data) + implementation(projects.core.designsystem) + implementation(projects.core.navigation) + implementation(projects.core.network) + implementation(projects.core.ui) + + // TODO: These dependencies are required by BottomSheetActivity, + // make this part of the projects.core.activity API? + implementation(projects.core.preferences) + implementation(libs.bundles.androidx) + + implementation(libs.material.typeface) + implementation(libs.material.iconics) +} diff --git a/feature/lists/lint-baseline.xml b/feature/lists/lint-baseline.xml new file mode 100644 index 000000000..81d0f0aab --- /dev/null +++ b/feature/lists/lint-baseline.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/feature/lists/src/main/AndroidManifest.xml b/feature/lists/src/main/AndroidManifest.xml new file mode 100644 index 000000000..8bdb7e14b --- /dev/null +++ b/feature/lists/src/main/AndroidManifest.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/java/app/pachli/AccountsInListFragment.kt b/feature/lists/src/main/kotlin/app/pachli/feature/lists/AccountsInListFragment.kt similarity index 90% rename from app/src/main/java/app/pachli/AccountsInListFragment.kt rename to feature/lists/src/main/kotlin/app/pachli/feature/lists/AccountsInListFragment.kt index 9a3f57579..bd96c223d 100644 --- a/app/src/main/java/app/pachli/AccountsInListFragment.kt +++ b/feature/lists/src/main/kotlin/app/pachli/feature/lists/AccountsInListFragment.kt @@ -1,5 +1,5 @@ /* - * Copyright 2017 Andrew Dawson + * Copyright 2024 Pachli Association * * This file is a part of Pachli. * @@ -15,7 +15,7 @@ * see . */ -package app.pachli +package app.pachli.feature.lists import android.os.Bundle import android.view.LayoutInflater @@ -38,19 +38,16 @@ import app.pachli.core.common.extensions.hide import app.pachli.core.common.extensions.show import app.pachli.core.common.extensions.viewBinding import app.pachli.core.common.extensions.visible +import app.pachli.core.common.util.unsafeLazy import app.pachli.core.data.repository.ListsError import app.pachli.core.designsystem.R as DR import app.pachli.core.network.model.TimelineAccount import app.pachli.core.network.retrofit.apiresult.ApiError import app.pachli.core.preferences.PrefKeys import app.pachli.core.preferences.SharedPreferencesRepository -import app.pachli.databinding.FragmentAccountsInListBinding -import app.pachli.databinding.ItemFollowRequestBinding -import app.pachli.util.BindingHolder -import app.pachli.util.unsafeLazy -import app.pachli.viewmodel.Accounts -import app.pachli.viewmodel.AccountsInListViewModel -import app.pachli.viewmodel.SearchResults +import app.pachli.core.ui.BindingHolder +import app.pachli.feature.lists.databinding.FragmentAccountsInListBinding +import app.pachli.feature.lists.databinding.ItemAccountInListBinding import com.github.michaelbull.result.Result import com.github.michaelbull.result.get import com.github.michaelbull.result.mapBoth @@ -225,25 +222,24 @@ class AccountsInListFragment : DialogFragment() { } } - inner class Adapter : ListAdapter>( + inner class Adapter : ListAdapter>( AccountDiffer, ) { - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BindingHolder { - val binding = ItemFollowRequestBinding.inflate(LayoutInflater.from(parent.context), parent, false) + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BindingHolder { + val binding = ItemAccountInListBinding.inflate(LayoutInflater.from(parent.context), parent, false) val holder = BindingHolder(binding) - binding.notificationTextView.hide() - binding.acceptButton.hide() - binding.rejectButton.setOnClickListener { + binding.addButton.hide() + binding.removeButton.setOnClickListener { onRemoveFromList(getItem(holder.bindingAdapterPosition).id) } - binding.rejectButton.contentDescription = + binding.removeButton.contentDescription = binding.root.context.getString(R.string.action_remove_from_list) return holder } - override fun onBindViewHolder(holder: BindingHolder, position: Int) { + override fun onBindViewHolder(holder: BindingHolder, position: Int) { val account = getItem(position) holder.binding.displayNameTextView.text = account.name.emojify(account.emojis, holder.binding.displayNameTextView, animateEmojis) holder.binding.usernameTextView.text = account.username @@ -262,16 +258,15 @@ class AccountsInListFragment : DialogFragment() { } } - inner class SearchAdapter : ListAdapter>( + inner class SearchAdapter : ListAdapter>( SearchDiffer, ) { - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BindingHolder { - val binding = ItemFollowRequestBinding.inflate(LayoutInflater.from(parent.context), parent, false) + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BindingHolder { + val binding = ItemAccountInListBinding.inflate(LayoutInflater.from(parent.context), parent, false) val holder = BindingHolder(binding) - binding.notificationTextView.hide() - binding.acceptButton.hide() - binding.rejectButton.setOnClickListener { + binding.addButton.hide() + binding.removeButton.setOnClickListener { val (account, inAList) = getItem(holder.bindingAdapterPosition) if (inAList) { onRemoveFromList(account.id) @@ -283,7 +278,7 @@ class AccountsInListFragment : DialogFragment() { return holder } - override fun onBindViewHolder(holder: BindingHolder, position: Int) { + override fun onBindViewHolder(holder: BindingHolder, position: Int) { val (account, inAList) = getItem(position) holder.binding.displayNameTextView.text = account.name.emojify(account.emojis, holder.binding.displayNameTextView, animateEmojis) @@ -291,12 +286,12 @@ class AccountsInListFragment : DialogFragment() { loadAvatar(account.avatar, holder.binding.avatar, radius, animateAvatar) holder.binding.avatarBadge.visible(account.bot) - holder.binding.rejectButton.apply { + holder.binding.removeButton.apply { contentDescription = if (inAList) { - setImageResource(R.drawable.ic_reject_24dp) + setImageResource(app.pachli.core.ui.R.drawable.ic_clear_24dp) getString(R.string.action_remove_from_list) } else { - setImageResource(R.drawable.ic_plus_24dp) + setImageResource(app.pachli.core.ui.R.drawable.ic_plus_24dp) getString(R.string.action_add_to_list) } } diff --git a/app/src/main/java/app/pachli/viewmodel/AccountsInListViewModel.kt b/feature/lists/src/main/kotlin/app/pachli/feature/lists/AccountsInListViewModel.kt similarity index 99% rename from app/src/main/java/app/pachli/viewmodel/AccountsInListViewModel.kt rename to feature/lists/src/main/kotlin/app/pachli/feature/lists/AccountsInListViewModel.kt index f29d4ce64..bcfe3c701 100644 --- a/app/src/main/java/app/pachli/viewmodel/AccountsInListViewModel.kt +++ b/feature/lists/src/main/kotlin/app/pachli/feature/lists/AccountsInListViewModel.kt @@ -15,7 +15,7 @@ * see . */ -package app.pachli.viewmodel +package app.pachli.feature.lists import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope diff --git a/app/src/main/java/app/pachli/ListsActivity.kt b/feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsActivity.kt similarity index 94% rename from app/src/main/java/app/pachli/ListsActivity.kt rename to feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsActivity.kt index a134e5733..e3b79c632 100644 --- a/app/src/main/java/app/pachli/ListsActivity.kt +++ b/feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsActivity.kt @@ -1,5 +1,5 @@ /* - * Copyright 2017 Andrew Dawson + * Copyright 2024 Pachli Association * * This file is a part of Pachli. * @@ -15,7 +15,7 @@ * see . */ -package app.pachli +package app.pachli.feature.lists import android.app.Dialog import android.os.Bundle @@ -49,11 +49,9 @@ import app.pachli.core.network.model.MastoList import app.pachli.core.network.model.UserListRepliesPolicy import app.pachli.core.network.retrofit.apiresult.ApiError import app.pachli.core.network.retrofit.apiresult.NetworkError -import app.pachli.core.ui.await -import app.pachli.databinding.ActivityListsBinding -import app.pachli.databinding.DialogListBinding -import app.pachli.viewmodel.Error -import app.pachli.viewmodel.ListsViewModel +import app.pachli.core.ui.extensions.await +import app.pachli.feature.lists.databinding.ActivityListsBinding +import app.pachli.feature.lists.databinding.DialogListBinding import com.github.michaelbull.result.Result import com.github.michaelbull.result.onFailure import com.github.michaelbull.result.onSuccess @@ -196,7 +194,7 @@ class ListsActivity : BaseActivity(), MenuProvider { val result = AlertDialog.Builder(this) .setMessage(getString(R.string.dialog_delete_list_warning, list.title)) .create() - .await(R.string.action_delete, android.R.string.cancel) + .await(R.string.action_delete_list, android.R.string.cancel) if (result == AlertDialog.BUTTON_POSITIVE) viewModel.deleteList(list.id, list.title) } @@ -207,11 +205,11 @@ class ListsActivity : BaseActivity(), MenuProvider { binding.swipeRefreshLayout.isRefreshing = false if (it is NetworkError) { - binding.messageView.setup(R.drawable.errorphant_offline, R.string.error_network) { + binding.messageView.setup(app.pachli.core.ui.R.drawable.errorphant_offline, app.pachli.core.ui.R.string.error_network) { viewModel.refresh() } } else { - binding.messageView.setup(R.drawable.errorphant_error, R.string.error_generic) { + binding.messageView.setup(app.pachli.core.ui.R.drawable.errorphant_error, app.pachli.core.ui.R.string.error_generic) { viewModel.refresh() } } @@ -225,8 +223,8 @@ class ListsActivity : BaseActivity(), MenuProvider { if (lists.lists.isEmpty()) { binding.messageView.show() binding.messageView.setup( - R.drawable.elephant_friend_empty, - R.string.message_empty, + app.pachli.core.ui.R.drawable.elephant_friend_empty, + app.pachli.core.ui.R.string.message_empty, null, ) } else { diff --git a/app/src/main/java/app/pachli/components/account/list/ListsForAccountFragment.kt b/feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsForAccountFragment.kt similarity index 91% rename from app/src/main/java/app/pachli/components/account/list/ListsForAccountFragment.kt rename to feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsForAccountFragment.kt index 26a324b1b..48a7b85e3 100644 --- a/app/src/main/java/app/pachli/components/account/list/ListsForAccountFragment.kt +++ b/feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsForAccountFragment.kt @@ -1,4 +1,5 @@ -/* Copyright 2022 kyori19 +/* + * Copyright 2024 Pachli Association * * This file is a part of Pachli. * @@ -14,7 +15,7 @@ * see . */ -package app.pachli.components.account.list +package app.pachli.feature.lists import android.os.Bundle import android.view.LayoutInflater @@ -27,17 +28,16 @@ import androidx.lifecycle.lifecycleScope import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.ListAdapter -import app.pachli.R -import app.pachli.components.account.list.ListsForAccountViewModel.Error -import app.pachli.components.account.list.ListsForAccountViewModel.FlowError import app.pachli.core.common.extensions.hide import app.pachli.core.common.extensions.show import app.pachli.core.common.extensions.viewBinding import app.pachli.core.common.extensions.visible import app.pachli.core.designsystem.R as DR -import app.pachli.databinding.FragmentListsForAccountBinding -import app.pachli.databinding.ItemAddOrRemoveFromListBinding -import app.pachli.util.BindingHolder +import app.pachli.core.ui.BindingHolder +import app.pachli.feature.lists.ListsForAccountViewModel.Error +import app.pachli.feature.lists.ListsForAccountViewModel.FlowError +import app.pachli.feature.lists.databinding.FragmentListsForAccountBinding +import app.pachli.feature.lists.databinding.ItemAddOrRemoveFromListBinding import com.github.michaelbull.result.Result import com.github.michaelbull.result.onFailure import com.github.michaelbull.result.onSuccess @@ -101,14 +101,14 @@ class ListsForAccountFragment : DialogFragment() { when (error) { is Error.AddAccounts -> { Snackbar.make(binding.root, R.string.failed_to_add_to_list, Snackbar.LENGTH_INDEFINITE) - .setAction(R.string.action_retry) { + .setAction(app.pachli.core.ui.R.string.action_retry) { viewModel.addAccountToList(error.listId) } .show() } is Error.DeleteAccounts -> { Snackbar.make(binding.root, R.string.failed_to_remove_from_list, Snackbar.LENGTH_INDEFINITE) - .setAction(R.string.action_retry) { + .setAction(app.pachli.core.ui.R.string.action_retry) { viewModel.deleteAccountFromList(error.listId) } .show() @@ -140,7 +140,7 @@ class ListsForAccountFragment : DialogFragment() { binding.progressBar.hide() if (it.listsWithMembership.isEmpty()) { binding.messageView.show() - binding.messageView.setup(R.drawable.elephant_friend_empty, R.string.no_lists) { + binding.messageView.setup(app.pachli.core.ui.R.drawable.elephant_friend_empty, R.string.no_lists) { load() } } else { diff --git a/app/src/main/java/app/pachli/components/account/list/ListsForAccountViewModel.kt b/feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsForAccountViewModel.kt similarity index 99% rename from app/src/main/java/app/pachli/components/account/list/ListsForAccountViewModel.kt rename to feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsForAccountViewModel.kt index 2abc10511..b4a7990a6 100644 --- a/app/src/main/java/app/pachli/components/account/list/ListsForAccountViewModel.kt +++ b/feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsForAccountViewModel.kt @@ -15,7 +15,7 @@ * see . */ -package app.pachli.components.account.list +package app.pachli.feature.lists import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope diff --git a/app/src/main/java/app/pachli/viewmodel/ListsViewModel.kt b/feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsViewModel.kt similarity index 99% rename from app/src/main/java/app/pachli/viewmodel/ListsViewModel.kt rename to feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsViewModel.kt index 4906782df..c11790a22 100644 --- a/app/src/main/java/app/pachli/viewmodel/ListsViewModel.kt +++ b/feature/lists/src/main/kotlin/app/pachli/feature/lists/ListsViewModel.kt @@ -15,7 +15,7 @@ * see . */ -package app.pachli.viewmodel +package app.pachli.feature.lists import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope diff --git a/app/src/main/res/layout/activity_lists.xml b/feature/lists/src/main/res/layout/activity_lists.xml similarity index 77% rename from app/src/main/res/layout/activity_lists.xml rename to feature/lists/src/main/res/layout/activity_lists.xml index 10f0f7731..968e9f7fc 100644 --- a/app/src/main/res/layout/activity_lists.xml +++ b/feature/lists/src/main/res/layout/activity_lists.xml @@ -1,4 +1,21 @@ + + - + + - + + - + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/item_add_or_remove_from_list.xml b/feature/lists/src/main/res/layout/item_add_or_remove_from_list.xml similarity index 100% rename from app/src/main/res/layout/item_add_or_remove_from_list.xml rename to feature/lists/src/main/res/layout/item_add_or_remove_from_list.xml diff --git a/app/src/main/res/layout/item_list.xml b/feature/lists/src/main/res/layout/item_list.xml similarity index 100% rename from app/src/main/res/layout/item_list.xml rename to feature/lists/src/main/res/layout/item_list.xml diff --git a/app/src/main/res/menu/activity_lists.xml b/feature/lists/src/main/res/menu/activity_lists.xml similarity index 100% rename from app/src/main/res/menu/activity_lists.xml rename to feature/lists/src/main/res/menu/activity_lists.xml diff --git a/feature/lists/src/main/res/menu/list_actions.xml b/feature/lists/src/main/res/menu/list_actions.xml new file mode 100644 index 000000000..c28d70f08 --- /dev/null +++ b/feature/lists/src/main/res/menu/list_actions.xml @@ -0,0 +1,29 @@ + + + + + + + + diff --git a/feature/lists/src/main/res/values-ar/strings.xml b/feature/lists/src/main/res/values-ar/strings.xml new file mode 100644 index 000000000..d56ed1052 --- /dev/null +++ b/feature/lists/src/main/res/values-ar/strings.xml @@ -0,0 +1,20 @@ + + + اسم القائمة + إخفاء مِن الخيط الرئيس + القوائم + %2$s: \"%1$s\" لا يمكن إنشاء قائمة + %2$s: \"%1$s\" لا يمكن حذف القائمة + %2$s: \"%1$s\" لا يمكن إعادة تسمية القائمة + إعادة تسمية القائمة + إنشاء قائمة + أتريد حقا حذف القائمة %s؟ + إزالة الحساب مِن القائمة + إضافة الحساب إلى القائمة + حذف القائمة + فشل إضافة الحساب إلى القائمة + فشل إزالة الحساب من القائمة + ليس لديك أي قوائم. + البحث عن أشخاص قصد متابعتهم + إضافة أو إزالة من القائمة + diff --git a/feature/lists/src/main/res/values-be/strings.xml b/feature/lists/src/main/res/values-be/strings.xml new file mode 100644 index 000000000..11a96f3ed --- /dev/null +++ b/feature/lists/src/main/res/values-be/strings.xml @@ -0,0 +1,19 @@ + + + Назва спіса + Спісы + Не атрымалася стварыць спіс \"%1$s\": %2$s + Не атрымалася выдаліць спіс \"%1$s\": %2$s + Не атрымалася перайменаваць спіс \"%1$s\": %2$s + Перайменаваць спіс + Стварыць спіс + Вы ўпэўнены, што жадаеце выдаліць спіс %s\? + Выдаліць уліковы запіс са спіса + Дадаць уліковы запіс у спіс + Выдаліць спіс + Не атрымалася дадаць уліковы запіс у спіс + Не атрымалася выдаліць уліковы запіс са спіса + У Вас няма спісаў. + Пошук сярод вашых падпісак + Дадаць ці выдаліць са спіса + diff --git a/feature/lists/src/main/res/values-ber/strings.xml b/feature/lists/src/main/res/values-ber/strings.xml new file mode 100644 index 000000000..039137eb6 --- /dev/null +++ b/feature/lists/src/main/res/values-ber/strings.xml @@ -0,0 +1,4 @@ + + + ⵝⴰⴲⴸⴰⵔⵉⵏ + diff --git a/feature/lists/src/main/res/values-bg/strings.xml b/feature/lists/src/main/res/values-bg/strings.xml new file mode 100644 index 000000000..fc262ad90 --- /dev/null +++ b/feature/lists/src/main/res/values-bg/strings.xml @@ -0,0 +1,15 @@ + + + Име на списък + Списъци + Списъкът не можа да се създаде \"%1$s\": %2$s + Списъкът не можа да се изтрие \"%1$s\": %2$s + Списъкът не можа да се преименува \"%1$s\": %2$s + Преименуване на списъка + Създаване на списък + Наистина ли искате да изтриете списъка %s\? + Премахване на акаунт от списъка + Добавяне на акаунт към списъка + Изтриване на списъка + Търсене на хора, които следвате + diff --git a/feature/lists/src/main/res/values-bn-rBD/strings.xml b/feature/lists/src/main/res/values-bn-rBD/strings.xml new file mode 100644 index 000000000..faf31570e --- /dev/null +++ b/feature/lists/src/main/res/values-bn-rBD/strings.xml @@ -0,0 +1,14 @@ + + + নামের তালিকা + তালিকাসমূহ + তালিকা তৈরি করা যায়নি \"%1$s\": %2$s + তালিকা মুছে ফেলা যায়নি \"%1$s\": %2$s + তালিকা নামকরণ করা যায়নি \"%1$s\": %2$s + তালিকা পুনঃ নামকরণ কর + একটি তালিকা তৈরি করুন + তালিকা থেকে অ্যাকাউন্ট সরান + তালিকায় অ্যাকাউন্ট যোগ করুন + তালিকা মুছে দিন + আপনি অনুসরণ মানুষের জন্য অনুসন্ধান করুন + diff --git a/feature/lists/src/main/res/values-bn-rIN/strings.xml b/feature/lists/src/main/res/values-bn-rIN/strings.xml new file mode 100644 index 000000000..faf31570e --- /dev/null +++ b/feature/lists/src/main/res/values-bn-rIN/strings.xml @@ -0,0 +1,14 @@ + + + নামের তালিকা + তালিকাসমূহ + তালিকা তৈরি করা যায়নি \"%1$s\": %2$s + তালিকা মুছে ফেলা যায়নি \"%1$s\": %2$s + তালিকা নামকরণ করা যায়নি \"%1$s\": %2$s + তালিকা পুনঃ নামকরণ কর + একটি তালিকা তৈরি করুন + তালিকা থেকে অ্যাকাউন্ট সরান + তালিকায় অ্যাকাউন্ট যোগ করুন + তালিকা মুছে দিন + আপনি অনুসরণ মানুষের জন্য অনুসন্ধান করুন + diff --git a/feature/lists/src/main/res/values-ca/strings.xml b/feature/lists/src/main/res/values-ca/strings.xml new file mode 100644 index 000000000..bc57ff95b --- /dev/null +++ b/feature/lists/src/main/res/values-ca/strings.xml @@ -0,0 +1,19 @@ + + + Nom de la llista + Llistes + És impossible crear la llista \"%1$s\": %2$s + És impossible suprimir la llista \"%1$s\": %2$s + Impossible reanomenar la llista \"%1$s\": %2$s + Reanomenar la llista + Crear una llista + Segur que voleu esborrar la llista %s\? + Suprimir un compte de la llista + Afegir un compte a la llista + Suprimir la llista + No s\'ha pogut afegir el compte a la llista + No s\'ha pogut eliminar el compte de la llista + No tens cap llista. + Cercar persones que segueixes + Afegeix o elimina de la llista + diff --git a/feature/lists/src/main/res/values-ckb/strings.xml b/feature/lists/src/main/res/values-ckb/strings.xml new file mode 100644 index 000000000..9c113304a --- /dev/null +++ b/feature/lists/src/main/res/values-ckb/strings.xml @@ -0,0 +1,14 @@ + + + ناوی لیست + لیستەکان + %2$s: \"%1$s\" نەیتوانی لیست دروست بکات + %2$s: \"%1$s\" نەیتوانی لیستەکە بسڕێتەوە + %2$s: \"%1$s\" نەیتوانی ناوی لیست بنووسرێ + ناونانەوەی لیستەکە + دروستکردنی لیستێک + لابردنی ئەژمێر لە لیستەکە + زیادکردنی ئەژمێر بۆ لیستەکە + سڕینەوەی لیستەکە + گەڕان بەدوای ئەو کەسانەی کە پەیڕەوی ان دەکەیت + diff --git a/feature/lists/src/main/res/values-cs/strings.xml b/feature/lists/src/main/res/values-cs/strings.xml new file mode 100644 index 000000000..777327c45 --- /dev/null +++ b/feature/lists/src/main/res/values-cs/strings.xml @@ -0,0 +1,15 @@ + + + Název seznamu + Seznamy + Nelze vytvořit seznam \"%1$s\": %2$s + Nelze smazat seznam \"%1$s\": %2$s + Nelze přejmenovat seznam \"%1$s\": %2$s + Přejmenovat seznam + Vytvořit seznam + Opravdu chcete smazat seznam %s\? + Odstranit účet ze seznamu + Přidat účet na seznam + Smazat seznam + Hledejte mezi lidmi, které sledujete + diff --git a/feature/lists/src/main/res/values-cy/strings.xml b/feature/lists/src/main/res/values-cy/strings.xml new file mode 100644 index 000000000..b70c861ed --- /dev/null +++ b/feature/lists/src/main/res/values-cy/strings.xml @@ -0,0 +1,20 @@ + + + Enw rhestr + Cuddio o\'r ffrwd cartref + Rhestrau + Methu creu rhestr \"%1$s\": %2$s + Methu dileu\'r rhestr \"%1$s\": %2$s + Methu diweddaru\'r rhestr \"%1$s\": %2$s + Diweddaru\'r rhestr + Creu rhestr + Ydych chi wir eisiau dileu rhestr %s\? + Tynnu cyfrif o\'r rhestr + Ychwanegwch gyfrif at y rhestr + Dileu\'r rhestr + Wedi methu ag ychwanegu\'r cyfrif at y rhestr + Wedi methu tynnu\'r cyfrif o\'r rhestr + Nid oes gennych unrhyw restrau. + Chwilio am bobl rydych chi\'n eu dilyn + Ychwanegu at neu dynnu oddi ar restr + diff --git a/feature/lists/src/main/res/values-de/strings.xml b/feature/lists/src/main/res/values-de/strings.xml new file mode 100644 index 000000000..3c68dff9c --- /dev/null +++ b/feature/lists/src/main/res/values-de/strings.xml @@ -0,0 +1,20 @@ + + + Listenname + Nicht in der Startseite anzeigen + Listen + Liste konnte nicht erstellt werden \"%1$s\": %2$s + Liste konnte nicht gelöscht werden \"%1$s\": %2$s + Liste konnte nicht aktualisiert werden \"%1$s\": %2$s + Liste aktualisieren + Liste erstellen + Möchtest du die Liste %s wirklich löschen\? + Konto aus der Liste entfernen + Konto zur Liste hinzufügen + Liste löschen + Das Konto konnte nicht zur Liste hinzugefügt werden + Das Konto konnte nicht aus der Liste entfernt werden + Du hast keine Listen. + Suche nach Leuten, denen du folgst + Zur Liste hzfg. / aus Liste entf. + diff --git a/feature/lists/src/main/res/values-eo/strings.xml b/feature/lists/src/main/res/values-eo/strings.xml new file mode 100644 index 000000000..68aa98ca9 --- /dev/null +++ b/feature/lists/src/main/res/values-eo/strings.xml @@ -0,0 +1,15 @@ + + + Nomo de la listo + Listoj + Ne povis krei la liston \"%1$s\": %2$s + Ne povis forigi la liston \"%1$s\": %2$s + Ne povis ŝanĝi la nomon de la listo \"%1$s\": %2$s + Ŝanĝi la nomon de la listo + Krei liston + Ĉu vi vere volas forigi la liston %s\? + Forigi konton el la listo + Aldoni konton al la listo + Forigi la liston + Serĉi homojn, kiujn vi sekvas + diff --git a/feature/lists/src/main/res/values-es/strings.xml b/feature/lists/src/main/res/values-es/strings.xml new file mode 100644 index 000000000..b5b622f48 --- /dev/null +++ b/feature/lists/src/main/res/values-es/strings.xml @@ -0,0 +1,20 @@ + + + Nombre de la lista + Oculta de la cronología de inicio + Listas + No se pudo crear la lista \"%1$s\": %2$s + No se pudo eliminar la lista \"%1$s\": %2$s + No se pudo renombrar la lista \"%1$s\": %2$s + Renombrar la lista + Crear una lista + ¿Realmente quieres eliminar la lista %s\? + Eliminar cuenta de la lista + Añadir cuenta a la lista + Eliminar la lista + Falló añadir la cuenta a la lista + Falló al eliminar la cuenta de la lista + No tienes ninguna lista. + Buscar personas que sigues + Añadir o quitar de la lista + diff --git a/feature/lists/src/main/res/values-eu/strings.xml b/feature/lists/src/main/res/values-eu/strings.xml new file mode 100644 index 000000000..ae765a8db --- /dev/null +++ b/feature/lists/src/main/res/values-eu/strings.xml @@ -0,0 +1,15 @@ + + + Zerrendaren izena + Zerrendak + Ezin izan da zerrenda sortu \"%1$s\": %2$s + Ezin izan da zerrenda ezabatu \"%1$s\": %2$s + Ezin izan da zerrendaren izena aldatu \"%1$s\": %2$s + Zerrenda berrizendatu + Zerrenda sortu + Ziur %s zerrenda ezabatu nahi duzula\? + Kendu kontua zerrendatik + Gehitu kontua zerrendan + Ezabatu zerrenda + Bilatu jarraitzen dituzun pertsonak + diff --git a/feature/lists/src/main/res/values-fa/strings.xml b/feature/lists/src/main/res/values-fa/strings.xml new file mode 100644 index 000000000..6aef12469 --- /dev/null +++ b/feature/lists/src/main/res/values-fa/strings.xml @@ -0,0 +1,20 @@ + + + نام سیاهه + نهفتن از خط زمانی خانگی + سیاهه‌ها + %2$s: \"%1$s\" نتوانست سیاهه را ایجاد کند + %2$s: \"%1$s\" نتوانست سیاهه را حذف کند + %2$s: \"%1$s\" نتوانست سیاهه را به‌روز کند + به‌روز رسانی‌سیاهه + ایجاد سیاهه + واقعاً می‌خواهید سیاههٔ %s را حذف کنید؟ + برداشتن حساب از سیاهه + افزودن حساب به سیاهه + حذف سیاهه + شکست در افزودن حساب به سیاهه + شکست در برداشتن حساب از سیاهه + هیچ سیاهه‌ای ندارید. + جست‌وجوی افرادی که پی می‌گیرید + افزودن یا برداشتن از سیاهه + diff --git a/feature/lists/src/main/res/values-fi/strings.xml b/feature/lists/src/main/res/values-fi/strings.xml new file mode 100644 index 000000000..7bcc315fe --- /dev/null +++ b/feature/lists/src/main/res/values-fi/strings.xml @@ -0,0 +1,20 @@ + + + Listan nimi + Piilota kotiaikajanalta + Listat + Listaa ei voitu luoda \"%1$s\": %2$s + Listaa ei voitu poistaa \"%1$s\": %2$s + Listaa ei voitu päivittää \"%1$s\": %2$s + Muuta listan nimeä + Luo lista + Haluatko todella poistaa listan %s? + Poista tili listalta + Lisää tili listalle + Poista lista + Tilin lisääminen listalle epäonnistui + Tilin poisto listalta epäonnistui + Sinulla ei ole listoja. + Hae seuraamiasi henkilöitä + Lisää tai poista listalta + diff --git a/feature/lists/src/main/res/values-fr/strings.xml b/feature/lists/src/main/res/values-fr/strings.xml new file mode 100644 index 000000000..82e1273be --- /dev/null +++ b/feature/lists/src/main/res/values-fr/strings.xml @@ -0,0 +1,20 @@ + + + Nom de la liste + Masquer du fil d\'actualité principal + Listes + Impossible de créer la liste \"%1$s\": %2$s + Impossible de supprimer la liste \"%1$s\": %2$s + Impossible de renommer la liste \"%1$s\": %2$s + Renommer la liste + Créer une liste + Voulez-vous vraiment supprimer la liste %s \? + Supprimer un compte de la liste + Ajouter un compte à la liste + Supprimer la liste + Le compte n\'a pas pu être ajouté à la liste + Le compte n\'a pas pu être retiré de la liste + Vous n\'avez aucune liste. + Chercher des personnes que vous suivez + Ajouter à ou retirer de la liste + diff --git a/feature/lists/src/main/res/values-fy/strings.xml b/feature/lists/src/main/res/values-fy/strings.xml new file mode 100644 index 000000000..c9452f568 --- /dev/null +++ b/feature/lists/src/main/res/values-fy/strings.xml @@ -0,0 +1,12 @@ + + + Listen + Koe list net oanmeitsje \"%1$s\": %2$s + Koe list net fuortsmite \"%1$s\": %2$s + Koe list net omneame \"%1$s\": %2$s + Neam de list om + Meitsje in list oan + Account oan de list tafoegje + Smyt de list fuort + Sykje om minsken dy\'t jo folgje + diff --git a/feature/lists/src/main/res/values-ga/strings.xml b/feature/lists/src/main/res/values-ga/strings.xml new file mode 100644 index 000000000..6b6a45595 --- /dev/null +++ b/feature/lists/src/main/res/values-ga/strings.xml @@ -0,0 +1,14 @@ + + + Ainm liosta + Liostaí + Níorbh fhéidir liosta a chruthú \"%1$s\": %2$s + Níorbh fhéidir an liosta a scriosadh \"%1$s\": %2$s + Níorbh fhéidir an liosta a athainmniú \"%1$s\": %2$s + Athainmnigh an liosta + Cruthaigh liosta + Bain cuntas ón liosta + Cuir cuntas leis an liosta + Scrios an liosta + Cuardaigh daoine a leanann tú + diff --git a/feature/lists/src/main/res/values-gd/strings.xml b/feature/lists/src/main/res/values-gd/strings.xml new file mode 100644 index 000000000..b63527f37 --- /dev/null +++ b/feature/lists/src/main/res/values-gd/strings.xml @@ -0,0 +1,20 @@ + + + Ainm na liosta + Falaich o loidhne-ama na dachaigh + Liostaichean + Cha b’ urrainn dhuinn an liosta a chruthachadh \"%1$s\": %2$s + Cha b’ urrainn dhuinn an liosta a sguabadh às \"%1$s\": %2$s + Cha b’ urrainn dhuinn an liosta ùrachadh \"%1$s\": %2$s + Ùraich an liosta + Cruthaich liosta + A bheil thu cinnteach gu bheil thu airson an liosta %s a sguabadh às\? + Thoir an cunntas air falbh on liosta + Cuir cunntas ris an liosta + Sguab às an liosta + Cha deach leinn an cunntas a chur ris an liosta + Cha deach leinn an cunntas a thoirt air falbh on liosta + Chan eil liosta sam bith agad. + Lorg daoine air a leanas tu + Cuir ris no thoir air falbh on liosta + diff --git a/feature/lists/src/main/res/values-gl/strings.xml b/feature/lists/src/main/res/values-gl/strings.xml new file mode 100644 index 000000000..c2689b8b8 --- /dev/null +++ b/feature/lists/src/main/res/values-gl/strings.xml @@ -0,0 +1,20 @@ + + + Nome da lista + Agochar na cronoloxía de inicio + Listaxes + Non se puido crear a listaxe \"%1$s\": %2$s + Non se puido eliminar a listaxe \"%1$s\": %2$s + Non se actualizou a listaxe \"%1$s\": %2$s + Actualizar a listaxe + Crear unha listaxe + Tes a certeza de querer eliminar a listaxe %s\? + Eliminar conta da listaxe + Engadir conta á listaxe + Eliminar a listaxe + Fallou a adición da conta á lista + Fallou a eliminación da conta da lista + Non tes listas. + Atopar persoas ás que segues + Engadir ou quitar da lista + diff --git a/feature/lists/src/main/res/values-hi/strings.xml b/feature/lists/src/main/res/values-hi/strings.xml new file mode 100644 index 000000000..364dc27ae --- /dev/null +++ b/feature/lists/src/main/res/values-hi/strings.xml @@ -0,0 +1,14 @@ + + + सूची का नाम + सूचियाँ + सूची नहीं बना सके \"%1$s\": %2$s + सूची नहीं हटाई जा सकी \"%1$s\": %2$s + सूची का नाम नहीं बदल सके \"%1$s\": %2$s + सूची का नाम बदलें + एक सूची बनाएं + सूची से खाता निकालें + सूची में खाता जोड़ें + सूची हटाएँ + उन लोगों की खोज करें जिन्हें आप फ़ॉलो करते हैं + diff --git a/feature/lists/src/main/res/values-hu/strings.xml b/feature/lists/src/main/res/values-hu/strings.xml new file mode 100644 index 000000000..1a5cfa6df --- /dev/null +++ b/feature/lists/src/main/res/values-hu/strings.xml @@ -0,0 +1,19 @@ + + + Lista neve + Listák + Nem sikerült a lista létrehozása \"%1$s\": %2$s + Nem sikerült a lista törlése \"%1$s\": %2$s + Nem sikerült a lista átnevezése \"%1$s\": %2$s + Lista átnevezése + Lista létrehozása + Tényleg le akarod törölni a %s listát\? + Fiók eltávolítása a listából + Fiók hozzáadása a listához + Lista törlése + Nem sikerült a fiókot a listához adni + Nem sikerült a fiókot levenni a listáról + Nincs egy listád se. + Általad követettek keresése + Hozzáadás vagy törlés a listáról + diff --git a/feature/lists/src/main/res/values-in/strings.xml b/feature/lists/src/main/res/values-in/strings.xml new file mode 100644 index 000000000..67709590f --- /dev/null +++ b/feature/lists/src/main/res/values-in/strings.xml @@ -0,0 +1,10 @@ + + + Daftar + Tidak dapat membuat daftar \"%1$s\": %2$s + Tidak dapat menghapus daftar \"%1$s\": %2$s + Tidak dapat mengubah nama daftar \"%1$s\": %2$s + Ubah nama daftar + Buat daftar + Hapus daftar + diff --git a/feature/lists/src/main/res/values-is/strings.xml b/feature/lists/src/main/res/values-is/strings.xml new file mode 100644 index 000000000..8a912fa87 --- /dev/null +++ b/feature/lists/src/main/res/values-is/strings.xml @@ -0,0 +1,19 @@ + + + Heiti á lista + Listar + Ekki tókst að búa til lista \"%1$s\": %2$s + Ekki tókst að eyða lista \"%1$s\": %2$s + Ekki tókst að endurnefna lista \"%1$s\": %2$s + Endurnefna listann + Búa til lista + Ertu viss um að þú viljir eyða %s listanum\? + Fjarlægja notandaaðganginn af listanum + Bæta notandaaðgangi á listann + Eyða listanum + Mistókst að bæta notandaaðgangnum á listann + Mistókst að fjarlægja notandaaðganginn af listanum + Þú ert ekki með neina lista. + Leita að fólki sem þú fylgist með + Bæta við eða fjarlægja af lista + diff --git a/feature/lists/src/main/res/values-it/strings.xml b/feature/lists/src/main/res/values-it/strings.xml new file mode 100644 index 000000000..499271f93 --- /dev/null +++ b/feature/lists/src/main/res/values-it/strings.xml @@ -0,0 +1,20 @@ + + + Nome della lista + Nascondi dalla timeline della home + Liste + Non è stato possibile creare la lista \"%1$s\": %2$s + Non è stato possibile eliminare la lista \"%1$s\": %2$s + Non è stato possibile rinominare la lista \"%1$s\": %2$s + Rinomina la lista + Crea una lista + Sei sicuro di voler cancellare la lista %s? + Rimuovi un account dalla lista + Aggiungi un account alla lista + Elimina la lista + Aggiunta dell\'account alla lista fallita + Rimozione dell\'account dalla lista fallita + Non hai alcuna lista. + Cerca tra le persone che segui + Aggiunti o rimuovi dalla lista + diff --git a/feature/lists/src/main/res/values-ja/strings.xml b/feature/lists/src/main/res/values-ja/strings.xml new file mode 100644 index 000000000..0c6bca8e1 --- /dev/null +++ b/feature/lists/src/main/res/values-ja/strings.xml @@ -0,0 +1,20 @@ + + + リスト名 + ホームタイムラインから隠す + リスト + リストを作成できませんでした \"%1$s\": %2$s + リストを削除できませんでした \"%1$s\": %2$s + リスト名を変更できませんでした \"%1$s\": %2$s + リスト名の変更 + リストの作成 + リスト %s を本当に削除しますか? + リストからアカウントを削除 + リストにアカウントを追加 + リストの削除 + アカウントのリストへの追加に失敗しました + アカウントのリストからの削除に失敗しました + まだリストがありません。 + フォロワーを検索 + リストへの追加または削除 + diff --git a/feature/lists/src/main/res/values-kab/strings.xml b/feature/lists/src/main/res/values-kab/strings.xml new file mode 100644 index 000000000..dd7b41ee9 --- /dev/null +++ b/feature/lists/src/main/res/values-kab/strings.xml @@ -0,0 +1,11 @@ + + + Isem n tebdart + Tabdarin + Snifel isem n tabdart + Snulfu-d tabdart + Kkes amiḍan seg tabdart + Rnu yiwen umiḍan ɣer tabdart + Kkes tabdart-a + Nadi ɣef medden ar at ḍfereḍ + diff --git a/feature/lists/src/main/res/values-ko/strings.xml b/feature/lists/src/main/res/values-ko/strings.xml new file mode 100644 index 000000000..8a19ef5c3 --- /dev/null +++ b/feature/lists/src/main/res/values-ko/strings.xml @@ -0,0 +1,14 @@ + + + 리스트 이름 + 리스트 + 리스트를 만들 수 없습니다. \"%1$s\": %2$s + 리스트를 삭제할 수 없습니다. \"%1$s\": %2$s + 리스트의 이름을 변경할 수 없습니다. \"%1$s\": %2$s + 리스트 이름 바꾸기 + 리스트 생성 + 리스트에서 계정 삭제 + 리스트에 계정 추가 + 리스트 삭제 + 당신을 팔로우하는 사람 검색 + diff --git a/feature/lists/src/main/res/values-lv/strings.xml b/feature/lists/src/main/res/values-lv/strings.xml new file mode 100644 index 000000000..4c8521dcc --- /dev/null +++ b/feature/lists/src/main/res/values-lv/strings.xml @@ -0,0 +1,19 @@ + + + Saraksta nosaukums + Saraksti + Nevarēja izveidot sarakstu \"%1$s\": %2$s + Nevarēja dzēst sarakstu \"%1$s\": %2$s + Nevarēja pārsaukt sarakstu \"%1$s\": %2$s + Pārsaukt sarakstu + Izveidot sarakstu + Vai tiešām vēlies dzēst sarakstu %s\? + Noņemt kontu no saraksta + Pievienot kontu sarakstam + Dzēst sarakstu + Neizdevās pievienot kontu sarakstam + Neizdevās noņemt kontu no saraksta + Tev nav neviena saraksta. + Meklēt personas, kurām seko + Pievienot vai noņemt no saraksta + diff --git a/feature/lists/src/main/res/values-ml/strings.xml b/feature/lists/src/main/res/values-ml/strings.xml new file mode 100644 index 000000000..6f91aef30 --- /dev/null +++ b/feature/lists/src/main/res/values-ml/strings.xml @@ -0,0 +1,4 @@ + + + പട്ടികകൾ + diff --git a/feature/lists/src/main/res/values-nb-rNO/strings.xml b/feature/lists/src/main/res/values-nb-rNO/strings.xml new file mode 100644 index 000000000..d50de7940 --- /dev/null +++ b/feature/lists/src/main/res/values-nb-rNO/strings.xml @@ -0,0 +1,19 @@ + + + Listenavn + Lister + Kunne ikke opprette liste \"%1$s\": %2$s + Kunne ikke slette liste \"%1$s\": %2$s + Kunne ikke gi liste nytt navn \"%1$s\": %2$s + Gi listen nytt navn + Opprett en liste + Er du sikker på at du vil slette listen %s\? + Fjern konto fra listen + Legg til konto i listen + Fjern listen + Klarte ikke å legge til kontoen til listen + Klarte ikke å fjerne kontoen fra listen + Du har ingen lister. + Søk etter personer du følger + Legg til eller fjern fra liste + diff --git a/feature/lists/src/main/res/values-nl/strings.xml b/feature/lists/src/main/res/values-nl/strings.xml new file mode 100644 index 000000000..63d9907a1 --- /dev/null +++ b/feature/lists/src/main/res/values-nl/strings.xml @@ -0,0 +1,20 @@ + + + Naam van lijst + Verberg op de Thuis tijdlijn + Lijsten + Kon geen lijst aanmaken \"%1$s\": %2$s + Kon de lijst niet verwijderen \"%1$s\": %2$s + Kan lijst niet updaten \"%1$s\": %2$s + Lijst updaten + Lijst aanmaken + Weet je zeker dat je de lijst %s wilt verwijderen\? + Account uit de lijst verwijderen + Account aan de lijst toevoegen + Lijst verwijderen + Account toevoegen aan de lijst is mislukt + Account verwijderen van de lijst is mislukt + Je hebt geen lijsten. + Naar mensen zoeken die je volgt + Toevoegen of verwijderen van lijst + diff --git a/feature/lists/src/main/res/values-oc/strings.xml b/feature/lists/src/main/res/values-oc/strings.xml new file mode 100644 index 000000000..39d58dcb8 --- /dev/null +++ b/feature/lists/src/main/res/values-oc/strings.xml @@ -0,0 +1,19 @@ + + + Nom de la lista + Listas + Creacion impossibla de la lsita \"%1$s\": %2$s + Supression impossibla de la lista \"%1$s\": %2$s + Impossible de renomenar la lista \"%1$s\": %2$s + Renomenar la lista + Crear una lista + Volètz vertadièrament suprimir la lista %s \? + Suprimir aqueste compte de la lista + Ajustar un compte a la lista + Suprimir la lista + Fracàs de l’apondon del compte a la lista + Fracàs de la supression del compte de la lista + Avètz pas cap de lista. + Cercar lo monde que seguètz + Apondre o suprimir de la lista + diff --git a/feature/lists/src/main/res/values-pl/strings.xml b/feature/lists/src/main/res/values-pl/strings.xml new file mode 100644 index 000000000..f0bbbdd7b --- /dev/null +++ b/feature/lists/src/main/res/values-pl/strings.xml @@ -0,0 +1,19 @@ + + + Nazwa listy + Listy + Tworzenie listy nie powiodło się \"%1$s\": %2$s + Usunięcie listy nie powiodło się \"%1$s\": %2$s + Zmiana nazwy listy nie powiodła się \"%1$s\": %2$s + Zmień nazwę listy + Stwórz listę + Czy na pewno chcesz usunąć listę %s\? + Usuń konto z listy + Dodaj konto do listy + Usuń listę + Nie udało się dodać konta do listy + Nie udało się usunąć konta z listy + Nie masz żadnych list. + Szukaj osób, których obserwujesz + Dodaj lub usuń z listy + diff --git a/feature/lists/src/main/res/values-pt-rBR/strings.xml b/feature/lists/src/main/res/values-pt-rBR/strings.xml new file mode 100644 index 000000000..c82ff4f74 --- /dev/null +++ b/feature/lists/src/main/res/values-pt-rBR/strings.xml @@ -0,0 +1,20 @@ + + + Nome da lista + Ocultar da linha do tempo inicial + Listas + Não foi possível criar a lista \"%1$s\": %2$s + Não foi possível excluir a lista \"%1$s\": %2$s + Não foi possível renomear a lista \"%1$s\": %2$s + Renomear lista + Criar uma lista + Deseja excluir a lista %s\? + Remover conta da lista + Adicionar conta à lista + Excluir lista + Falha ao adicionar a conta à lista + Falha ao remover a conta da lista + Não tem lista alguma. + Pesquisar pessoas que você segue + Adicionar ou remover da lista + diff --git a/feature/lists/src/main/res/values-pt-rPT/strings.xml b/feature/lists/src/main/res/values-pt-rPT/strings.xml new file mode 100644 index 000000000..9436f06f8 --- /dev/null +++ b/feature/lists/src/main/res/values-pt-rPT/strings.xml @@ -0,0 +1,15 @@ + + + Nome da lista + Listas + Não foi possível criar a lista \"%1$s\": %2$s + Não foi possível apagar a lista \"%1$s\": %2$s + Não foi possível renomear a lista \"%1$s\": %2$s + Renomear a lista + Criar uma lista + Pretende remover a lista %s\? + Remover conta da lista + Adicionar conta à lista + Apagar a lista + Pesquisar pessoas que você segue + diff --git a/feature/lists/src/main/res/values-ru/strings.xml b/feature/lists/src/main/res/values-ru/strings.xml new file mode 100644 index 000000000..acf81e193 --- /dev/null +++ b/feature/lists/src/main/res/values-ru/strings.xml @@ -0,0 +1,15 @@ + + + Название списка + Списки + Не удалось создать список \"%1$s\": %2$s + Не удалось удалить список \"%1$s\": %2$s + Не удалось переименовать список \"%1$s\": %2$s + Переименовать список + Создать список + Вы действительно хотите удалить список %s\? + Удалить аккаунт из списка + Добавить аккаунт в список + Удалить список + Поиск по вашим подпискам + diff --git a/feature/lists/src/main/res/values-sa/strings.xml b/feature/lists/src/main/res/values-sa/strings.xml new file mode 100644 index 000000000..34bbc6f25 --- /dev/null +++ b/feature/lists/src/main/res/values-sa/strings.xml @@ -0,0 +1,14 @@ + + + सूचिनाम + सूचयः + सूचिनिर्माणं कर्तुमशक्यम् \"%1$s\": %2$s + सूचिर्नष्टुमशक्या \"%1$s\": %2$s + पुनः सूचिनामकरणं कर्तुमशक्यम् \"%1$s\": %2$s + पुनः सूचिनामकरणं क्रियताम् + सूचिः निर्मीयताम् + सूच्याः लेखा नश्यताम् + सूच्यां लेखा स्थाप्यताम् + सूचिर्नश्यताम् + येषामुसरणं करोषि तेष्वन्विष्यताम् + diff --git a/feature/lists/src/main/res/values-sk/strings.xml b/feature/lists/src/main/res/values-sk/strings.xml new file mode 100644 index 000000000..6273f9aae --- /dev/null +++ b/feature/lists/src/main/res/values-sk/strings.xml @@ -0,0 +1,4 @@ + + + Zoznamy + diff --git a/feature/lists/src/main/res/values-sl/strings.xml b/feature/lists/src/main/res/values-sl/strings.xml new file mode 100644 index 000000000..7b8955cd4 --- /dev/null +++ b/feature/lists/src/main/res/values-sl/strings.xml @@ -0,0 +1,14 @@ + + + Ime seznama + Seznami + Seznama ni bilo mogoče ustvariti \"%1$s\": %2$s + Seznama ni bilo mogoče izbrisati \"%1$s\": %2$s + Seznama ni bilo mogoče preimenovati \"%1$s\": %2$s + Preimenuj seznam + Ustvari seznam + Odstrani račun iz seznama + Dodaj račun na seznam + Izbriši seznam + Poiščite osebe, katerim sledite + diff --git a/feature/lists/src/main/res/values-sv/strings.xml b/feature/lists/src/main/res/values-sv/strings.xml new file mode 100644 index 000000000..6dda86754 --- /dev/null +++ b/feature/lists/src/main/res/values-sv/strings.xml @@ -0,0 +1,20 @@ + + + Listnamn + Dölj från hemtidlinjen + Listor + Kunde inte skapa lista \"%1$s\": %2$s + Kunde inte radera lista \"%1$s\": %2$s + Kunde inte byta namn på lista \"%1$s\": %2$s + Byt namn på listan + Skapa en lista + Vill du verkligen radera listan %s\? + Ta bort kontot från listan + Lägg till konto i listan + Ta bort listan + Kunde inte lägga till kontot till listan + Kunde inte ta bort kontot från listan + Du har inga listor. + Sök efter personer du följer + Lägg till eller ta bort från lista + diff --git a/feature/lists/src/main/res/values-ta/strings.xml b/feature/lists/src/main/res/values-ta/strings.xml new file mode 100644 index 000000000..7664bd36b --- /dev/null +++ b/feature/lists/src/main/res/values-ta/strings.xml @@ -0,0 +1,4 @@ + + + பட்டியல்கள் + diff --git a/feature/lists/src/main/res/values-th/strings.xml b/feature/lists/src/main/res/values-th/strings.xml new file mode 100644 index 000000000..f86fc3bf6 --- /dev/null +++ b/feature/lists/src/main/res/values-th/strings.xml @@ -0,0 +1,15 @@ + + + ชื่อรายการ + รายการ + ไม่สามารถสร้างรายการได้ \"%1$s\": %2$s + ไม่สามารถลบรายการได้ \"%1$s\": %2$s + ไม่สามารถเปลี่ยนชื่อรายการได้ \"%1$s\": %2$s + เปลี่ยนชื่อรายการ + สร้างรายการ + คุณต้องการลบลิสต์ %s ใช่ไหม\? + ลบบัญชีออกจากรายการ + เพิ่มบัญชีไปใส่รายการ + ลบรายการ + ค้นหาผู้ติดตาม + diff --git a/feature/lists/src/main/res/values-tr/strings.xml b/feature/lists/src/main/res/values-tr/strings.xml new file mode 100644 index 000000000..53c92b0dd --- /dev/null +++ b/feature/lists/src/main/res/values-tr/strings.xml @@ -0,0 +1,20 @@ + + + Liste adı + Anasayfa ağ akışından gizle + Listeler + Liste oluşturulamadı \"%1$s\": %2$s + Liste silinemedi \"%1$s\": %2$s + Liste oluşturulamadı \"%1$s\": %2$s + Listeyi güncelle + Liste oluştur + %s listesini gerçekten silmek istiyor musunuz\? + Hesabı listeden kaldır + Listeye hesap ekle + Listeyi sil + Hesap listeye eklenemedi + Hesap listeden kaldırılamadı + Listen yok. + Takip ettiğim kişilerde ara + Listeden ekle veya kaldır + diff --git a/feature/lists/src/main/res/values-uk/strings.xml b/feature/lists/src/main/res/values-uk/strings.xml new file mode 100644 index 000000000..04b3a7924 --- /dev/null +++ b/feature/lists/src/main/res/values-uk/strings.xml @@ -0,0 +1,20 @@ + + + Назва списку + Сховати з домашньої стрічки + Списки + Не вдалося створити список \"%1$s\": %2$s + Не вдалося видалити список \"%1$s\": %2$s + Не вдалося оновити список \"%1$s\": %2$s + Оновити список + Створити список + Ви дійсно хочете видалити список %s\? + Вилучити обліковий запис зі списку + Додати обліковий запис до списку + Видалити список + Не вдалося додати обліковий запис до списку + Не вдалося вилучити обліковий запис зі списку + У вас немає списків. + Пошук серед тих, на кого ви підписані + Додати або вилучити зі списку + diff --git a/feature/lists/src/main/res/values-vi/strings.xml b/feature/lists/src/main/res/values-vi/strings.xml new file mode 100644 index 000000000..9ab6d1c4a --- /dev/null +++ b/feature/lists/src/main/res/values-vi/strings.xml @@ -0,0 +1,20 @@ + + + Tên danh sách + Ẩn khỏi bảng tin + Danh sách + Không thể tạo danh sách \"%1$s\": %2$s + Không thể xóa danh sách \"%1$s\": %2$s + Không thể cập nhật danh sách \"%1$s\": %2$s + Cập nhật danh sách + Tạo danh sách + Bạn thật sự muốn xóa danh sách %s\? + Xóa người này khỏi danh sách + Thêm người này vào danh sách + Xóa danh sách + Không thể thêm người vào danh sách + Không thể xoá người khỏi danh sách + Chưa có danh sách nào. + Tìm người để theo dõi + Thêm hoặc xoá khỏi danh sách + diff --git a/feature/lists/src/main/res/values-zh-rCN/strings.xml b/feature/lists/src/main/res/values-zh-rCN/strings.xml new file mode 100644 index 000000000..62e778de7 --- /dev/null +++ b/feature/lists/src/main/res/values-zh-rCN/strings.xml @@ -0,0 +1,20 @@ + + + 列表名 + 不出现在首页时间线中 + 列表 + 无法新建列表 \"%1$s\": %2$s + 无法删除列表 \"%1$s\": %2$s + 无法更新列表 \"%1$s\": %2$s + 更新列表 + 新建列表 + 确认删除列表 %s? + 从列表中移除用户 + 添加用户到列表 + 删除列表 + 未能将账户添加到列表 + 未能从列表中删除账户 + 你没有任何列表。 + 搜索已关注的用户 + 从列表中添加或删除 + diff --git a/feature/lists/src/main/res/values-zh-rHK/strings.xml b/feature/lists/src/main/res/values-zh-rHK/strings.xml new file mode 100644 index 000000000..e581f43f8 --- /dev/null +++ b/feature/lists/src/main/res/values-zh-rHK/strings.xml @@ -0,0 +1,15 @@ + + + 列表名 + 列表 + 無法新建列表 \"%1$s\": %2$s + 無法刪除列表 \"%1$s\": %2$s + 無法重命名列表 \"%1$s\": %2$s + 重命名列表 + 新建列表 + 你確定要刪除列表 %s? + 從列表中移除用戶 + 添加用戶到列表 + 刪除列表 + 搜索已關注的用戶 + diff --git a/feature/lists/src/main/res/values-zh-rMO/strings.xml b/feature/lists/src/main/res/values-zh-rMO/strings.xml new file mode 100644 index 000000000..7452351f8 --- /dev/null +++ b/feature/lists/src/main/res/values-zh-rMO/strings.xml @@ -0,0 +1,14 @@ + + + 列表名 + 列表 + 無法新建列表 \"%1$s\": %2$s + 無法刪除列表 \"%1$s\": %2$s + 無法重命名列表 \"%1$s\": %2$s + 重命名列表 + 新建列表 + 從列表中移除用戶 + 添加用戶到列表 + 刪除列表 + 搜索已關注的用戶 + diff --git a/feature/lists/src/main/res/values-zh-rSG/strings.xml b/feature/lists/src/main/res/values-zh-rSG/strings.xml new file mode 100644 index 000000000..817d0dd6d --- /dev/null +++ b/feature/lists/src/main/res/values-zh-rSG/strings.xml @@ -0,0 +1,14 @@ + + + 列表名 + 列表 + 无法新建列表 \"%1$s\": %2$s + 无法删除列表 \"%1$s\": %2$s + 无法重命名列表 \"%1$s\": %2$s + 重命名列表 + 新建列表 + 从列表中移除用户 + 添加用户到列表 + 删除列表 + 搜索已关注的用户 + diff --git a/feature/lists/src/main/res/values-zh-rTW/strings.xml b/feature/lists/src/main/res/values-zh-rTW/strings.xml new file mode 100644 index 000000000..e581f43f8 --- /dev/null +++ b/feature/lists/src/main/res/values-zh-rTW/strings.xml @@ -0,0 +1,15 @@ + + + 列表名 + 列表 + 無法新建列表 \"%1$s\": %2$s + 無法刪除列表 \"%1$s\": %2$s + 無法重命名列表 \"%1$s\": %2$s + 重命名列表 + 新建列表 + 你確定要刪除列表 %s? + 從列表中移除用戶 + 添加用戶到列表 + 刪除列表 + 搜索已關注的用戶 + diff --git a/feature/lists/src/main/res/values/strings.xml b/feature/lists/src/main/res/values/strings.xml new file mode 100644 index 000000000..b0cafaa48 --- /dev/null +++ b/feature/lists/src/main/res/values/strings.xml @@ -0,0 +1,24 @@ + + + List name + Hide from the home timeline + Show replies to: + Any followed user + Members of the list + No one + Lists + Could not create list \"%1$s\": %2$s + Could not delete list \"%1$s\": %2$s + Could not update list \"%1$s\": %2$s + Update the list + Create a list + Do you really want to delete the list %s? + Remove account from the list + Add account to the list + Delete the list + Failed to add the account to the list + Failed to remove the account from the list + You don\'t have any lists. + Search for people you follow + Add or remove from list + diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index e804cd89b..897b0fbd4 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -50,6 +50,7 @@ leakcanary = "2.13" lint = "31.3.0" # = agp + 23.0.0 (= 8.3.0), see https://github.com/googlesamples/android-custom-lint-rules#lint-version material = "1.11.0" material-drawer = "9.0.2" +material-iconics = "5.4.0" material-typeface = "4.0.0.2-kotlin" mockito-inline = "5.2.0" mockito-kotlin = "5.2.1" @@ -171,6 +172,7 @@ lint-cli = { module = "com.android.tools.lint:lint", version.ref = "lint" } lint-tests = { module = "com.android.tools.lint:lint-tests", version.ref = "lint" } material-drawer-core = { module = "com.mikepenz:materialdrawer", version.ref = "material-drawer" } material-drawer-iconics = { module = "com.mikepenz:materialdrawer-iconics", version.ref = "material-drawer" } +material-iconics = { module = "com.mikepenz:iconics-core", version.ref="material-iconics" } material-typeface = { module = "com.mikepenz:google-material-typeface", version.ref = "material-typeface" } mockito-kotlin = { module = "org.mockito.kotlin:mockito-kotlin", version.ref = "mockito-kotlin" } mockito-inline = { module = "org.mockito:mockito-inline", version.ref = "mockito-inline" } diff --git a/settings.gradle.kts b/settings.gradle.kts index fbb8d739a..7804060e9 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -63,6 +63,7 @@ include(":core:network") include(":core:testing") include(":core:ui") include(":feature:about") +include(":feature:lists") include(":feature:login") include(":tools:mklanguages") include(":tools:mkserverversions")