sailfish-spotify / hutspot

Spotify Controller for SailfishOS. Documentation: https://sailfish-spotify.github.io/hutspot.
MIT License
18 stars 11 forks source link

Suggestion: remove the pageStack.clear() before pushing the pages #21

Open rgrnetalk opened 6 years ago

rgrnetalk commented 6 years ago

To get a more sailfish like loading of the pages, I suggest to remove the pageStack.clear from the harbour-hutspot.qml then the page will swipe in from the right.

wdehoog commented 6 years ago

Without calling clear() the stack of pages can become huge and multiple versions of the base pages can be created. To prevent this I decided only one of the base pages (New/Top/My/Search/Mood/History) should be on the stack. Personally I hate the animations but maybe we can make the clear() configurable or find a way to get them working when the stack is cleared.

rgrnetalk commented 6 years ago

I like the animations, but they can only work if you have clear user scenarios in mind. I try to look at the app as a state machine where the core page of the application is the playlist and the player attached to it. All other pages could be dialog pages to the playlist page (and or the player page) and you would only have one instance of the pages. When loading the app, you could go into page you had open when you left (based by a state in the playlist page it can load the requested dialog page). Unfortunately this probably means a lot of changes).

wdehoog commented 6 years ago

I tried to describe the scenario I have in mind: https://docs.google.com/document/d/1vIpMdo9Ukx-vO1qcg5bSP8EJyN_Eopzt0muGIxMQx7Q/edit?usp=sharing

What do you mean with the playlist as the core page? A spotify Playlist? The queue? Do you want to seperate the queue from the player?

Oh and don't bother the amount of changes. What needs to be done is to be done.