app-center icon indicating copy to clipboard operation
app-center copied to clipboard

feat: multisnap progress indicator

Open jssotomdz opened this issue 1 year ago โ€ข 5 comments

Screenshot from 2024-04-10 14-42-16 Screenshot from 2024-04-10 14-42-02

Right now:

  • button state and progress bar are not persistent when switching tabs. This means that it returns to the original state of enabled and no progress, the elements are kept only when clicking on a snap in the snap grid
  • Clicking install on a bundle that has a snap already installed just installs the ones missing. If all of them are already installed, the button ignores the clicks but remains enabled

Feedback and ideas are welcomed for this behaviour

jssotomdz avatar Apr 10 '24 20:04 jssotomdz

little design feedback: even if the current layout of the snap page is not optimal, a little improvement here should be to move the install all button to the left side

Feichtmeier avatar Apr 11 '24 18:04 Feichtmeier

Newest implementation image

jssotomdz avatar Apr 19 '24 17:04 jssotomdz

@d-loose implemented your feedback regarding the columns/rows and the circular progress indicator. I think it's ready, the only thing I don't like is that if you switch to a different tab, for instance explore and then go back to the bundle, the UI resets. Buuuut to have a persistent indicator, it would require to query snapd for active changes regarding all the apps in the bundle and for some of the bundles it won't scale very nice, wdyt?

jssotomdz avatar Apr 19 '24 18:04 jssotomdz

More design feedback :) I would move the YaruCircularProgressIndicator into the ElevatedButton There is the named constructor ElevatedButton.icon for this Or if anyone disagrees with this put the YaruCircularProgressIndicator into a SizedBox.square whichs dimension fits the button height, should be 34 https://github.com/ubuntu/yaru.dart/blob/main/lib/constants.dart#L21

@jssotomdz

Feichtmeier avatar Apr 19 '24 19:04 Feichtmeier

Buuuut to have a persistent indicator, it would require to query snapd for active changes regarding all the apps in the bundle and for some of the bundles it won't scale very nice, wdyt?

The snapd API isn't great in this regard - you can obtain a list of all active changes from snapd, but unfortunately the individual changes don't tell you which snap they belong to, so you'd have to explicitly request the active changes for each snap in your bundle. I guess that's what you meant, but unless you have dozens of snaps in a bundle that shouldn't really be an issue.

d-loose avatar Apr 23 '24 14:04 d-loose

@jssotomdz thanks a lot for your contribution so far, are you planning to continue working on this (quite a lot has changed in the code base since the last commit)? Completely understandable if you don't have the capacity to picking it up again.

spydon avatar Oct 03 '24 09:10 spydon

no bandwidth atm :(

jssotomdz avatar Oct 03 '24 14:10 jssotomdz