Auxio icon indicating copy to clipboard operation
Auxio copied to clipboard

Improve music loading state indicator

Open OxygenCobalt opened this issue 2 years ago • 5 comments

Currently Auxio has a somewhat jank UI display if the initial load was successful, but then successive loads fail. It results in a very jarring dialog appearing in the home view without any means to ignore it.

This issue is about tweaking that somewhat so that I can signal music loading events slightly less intrusively:

  • If loading initially, the outcome of the music load will still remain in the dialog
  • ~~Successive loads will only indicate their activity in the background with a notification, rather than the dialog.~~ Not possible with Android 14. Guess I'll indicate the work elsewhere.
  • A library having no music will not be treated like an error. Components will instead show a placeholder.

Biggest issue is doing such requires Auxio to obtain a notification permission so it can still indicate these states in the background from Android 13 onwards, so it's basically blocked by #244.

OxygenCobalt avatar Mar 01 '23 18:03 OxygenCobalt

Why not use a banner or a snackbar?

etyarews avatar Mar 08 '23 19:03 etyarews

A few reasons @etyarews:

  1. Banners have no support and would thus be a pain to implement myself. The only way it's really reliable is if it's an overlay, which then obscures music library items.
  2. Snackbars are basically impossible to position correctly with the app's bottom sheet system, they would always appear under the playback bar or in front of it.

Really, I just dislike the inconsistency and intrusiveness of the current dialog. My hope is to still allow the user to view the music loading process, but just in the settings view. The only point it will remain front-and-center is when no prior load has occured.

OxygenCobalt avatar Mar 08 '23 20:03 OxygenCobalt

So, no indicator(except on settings) whatsoever is your end goal here?

etyarews avatar Mar 08 '23 20:03 etyarews

No indicator when reloading. Alongside some other improvements to how errors are handled.

OxygenCobalt avatar Mar 08 '23 20:03 OxygenCobalt

I guess we can use LinearProgressIndicator under the tabs or toolbar

https://m3.material.io/components/progress-indicators/guidelines

Koitharu avatar Jul 14 '23 10:07 Koitharu