deckerst / aves

Aves is a gallery and metadata explorer app, built for Android with Flutter.
BSD 3-Clause "New" or "Revised" License
2.79k stars 106 forks source link

Widget cycle trigger button #480

Open KR4U7H3R opened 1 year ago

KR4U7H3R commented 1 year ago

First of all, thanks for the great app. I just discovered it recently and it is exactly what I am looking for in a gallery app. In my opinion a thing that would improve the app would be:

deckerst commented 1 year ago

1) automatic update

The display duration is specified via a static configuration file (cf doc) and I don't think I can modify this duration on the fly with a user specified setting.

Maybe the widget update could be triggered from a service. But Aves would need to declare and run a background service, which I'd like to avoid.

As of Aves v1.7.8, the duration is set to 1 hour (shortening it would mean more battery drain for all users). By the way, the Android system does not let widgets automatically update more frequently than every 30 minutes.

2) manual update

The widget already changes the displayed item when you tap on it and the app opens. So even without a dedicated button, it's possible to make it update. Not as smooth, but possible.

I'm not fond of the left half / right half idea because hidden areas are unintuitive and require some explanation. But I'm considering an option to display a small icon button in the corner of the widget, which would trigger an update when tapped. The button would always be visible, though.

Given that it's already possible to trigger an update by tapping the widget and that I like the widget to be clean without extra UI controls, I wouldn't use such a button myself, but maybe that would be suitable for your needs. What do you think?

KR4U7H3R commented 1 year ago

Thanks for the reply.

  1. automatic update

I think you are right to avoid an background service only for such a feature. As for the duration I did not know that limit existed. I personally would prefer 30min, but as it is a fix value for all users 1h is probably a better fit.

  1. manual update

I am all for a clean widget without extra UI controls, hence the idea with the two invisible buttons. But I get your arguments. Maybe make the two invisible button version optional? The problem (for me) with the current setup is that the "click to open app and close it again" to change the picture is not fun. But obviously opening the app/picture is the most important function and will always be my first choice. Longpress is not an option, so besides the two mentioned option I cannot think of anything else.

Personally I would also use the extra button. Maybe semi-transparent or just quite small (black,white adaptive?). I am just using the rectangular design though, not sure how it would look with the others.

But it is also quite possible that I also would dislike the UI and change to the current setup. The in-app slideshow has all the features I could want, so using this one more frequently is also an option.

I just love this feature at my desktop, as it is a great opportunity to see some random pics of yours without having to open an app. But I guess we are missing a middle-mouse-click :)

gogolo2 commented 2 months ago

Thx for the great app, donated instantly. I'd love the possiblity to be able to set the cycle duration, e.g. to 24 hours. Every day a new picture :)

Is this a bug? If I set tap action to viewer it nontheless changes the image to the next one.

deckerst commented 2 months ago

Is this a bug? If I set tap action to viewer it nontheless changes the image to the next one.

This is intended. That said, I'm not sure whether it's a good or bad idea. I originally thought it was a way to force cycling to another image.

gogolo2 commented 2 months ago

thx for your fast response! Is it really neccessary to run the app as a service to change the switch time? Material photo widget app (also on github) does not need to run as a service and it is possible to change the cycle time. But Aves is much more sophisticated as I can set a tag and show only the tagged images instead of having to copy them in a separate folder. So cycle time setting would be the icing on the cake.

deckerst commented 2 months ago

@gogolo2 I see that widget app uses an alarm manager. Not sure I want to use that kind of class in Aves, but it's good to know.

gogolo2 commented 2 months ago

ok sounds like a hack :) thx for looking into it. Besides, Aves has one of the nicest and smoothest UIs I ever saw on Android 👍