Nik Clayton 442f3bc80c
feat: Show user's lists in the left-side navigation menu (#514)
Previously to view a list the user either had to add it to a tab, or tap
through "Lists" in the navigation menu to their list of lists, and then
tap the list they want.

Fix that, and show all their lists in a dedicated section in the menu,
with a new "Manage lists" entry that's functionality identical to the
old "Lists" entry (i.e., it shows their lists and allows them to create,
delete, and edit list settings).

To do that:

- Implement a proper `ListsRepository` as the single source of truth for
list implementation throughout the app. Expose the current list of lists
as a flow, with methods to perform operations on the lists.

- Collect the `ListsRepository` flow in `MainActivity` and use that to
populate the menu and update it whenever the user's lists change.

- Rewrite the activities and fragments that manipulate lists to use
`ListRepository`.

- Always show error snackbars when list operations fail. In particular,
the HTTP code and error are always shown.

- Delete the custom `Either` implementation, it's no longer used.

- Add types for modelling API responses and errors, `ApiResponse` and
`ApiError` respectively. The response includes the headers as well as
the body, so it can replace the use of `NetworkResult` and `Response`.
The actual result of the operation is expected to be carried in a
`com.github.michaelbull.result.Result` type. Implement a Retrofit call
adapter for these types.

Unit tests for these borrow heavily from
https://github.com/connyduck/networkresult-calladapter

Additional user-visible changes:

- Add an accessible "Refresh" menu item to `ListsActivity`.

- Adding a list to a tab has a dialog with a "Manage lists" option.
Previously that would close the dialog when clicked, so the user had to
re-open it on returning from list management. Now the dialog stays open.

- The soft keyboard automatically opens when creating or editing a list.
2024-03-10 23:14:21 +01:00
2023-02-04 19:58:53 +01:00
2023-09-12 13:18:50 +02:00
2023-09-01 18:26:21 +02:00
2024-01-30 12:29:47 +01:00
2017-04-09 20:12:31 -04:00
2023-03-18 09:51:21 +01:00
2023-08-02 09:04:24 +02:00
2023-09-04 20:22:05 +02:00
2023-09-04 20:22:05 +02:00

Contributor Covenant Contributor License Agreement Translate - with Weblate

Get it on Google Play Get it on F-Droid

Pachli

Pachli is a full-featured Android client for Mastodon, with a cooperative development model.

Features include:

  • Read, reply, filter, post, favourite, and boost posts
  • Translate posts from other languages
  • Your timeline is cached locally, so you can read when offline
  • Draft posts now to finish them later
  • Write posts now and schedule them to send later
  • Read and post from multiple accounts
  • Manage who you follow with multiple lists
  • Use different themes to customise the UI
  • A variety of accessible fonts in different sizes
  • Full control over how and when you receive notifications
  • Explore trending posts, links, and hashtags

Pachli is open source.

Install the newest release from the list of releases, or from Google Play and F-Droid.

Support

Contributing

We actively welcome new contributors. Please read CONTRIBUTING.md for more information.

More information

More information about the application and the principals underpinning its development are at https://pachli.app.

Description
Pachli è un client Android completo per Mastodon: La timeline viene memorizzata nella cache locale, in modo da poterla leggere anche quando si è offline Bozza dei post ora per finirli in un secondo momento Scrivere i post ora e programmarne l'invio in un secondo momento Leggere e pubblicare da più account Gestite chi seguite con più elenchi Utilizzare diversi temi per personalizzare l'interfaccia utente Una varietà di font accessibili in diverse dimensioni Pieno controllo su come e quando si ricevono le notifiche
https://mastodon.it/it/Quale-app-mastodon-utilizzare Readme
Languages
Kotlin 100%