OxygenCobalt / Auxio

A simple, rational music player for android
GNU General Public License v3.0
2.08k stars 137 forks source link

Improve music loading state indicator #384

Open OxygenCobalt opened 1 year ago

OxygenCobalt commented 1 year ago

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:

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.

etyarews commented 1 year ago

Why not use a banner or a snackbar?

OxygenCobalt commented 1 year ago

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.

etyarews commented 1 year ago

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

OxygenCobalt commented 1 year ago

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

Koitharu commented 1 year ago

I guess we can use LinearProgressIndicator under the tabs or toolbar

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