- Adding "Get Info" in album page's "meatball" menu. When the option is clicked a pop up appears with
the album information and links to Last.fm and MusicBrainz.
Screenshot:
Fixes#105
- fyne notication looks for the app icon to display it in the notication, so I setted the icon in `main.go`.
- deleting points after "Download" option in grid view that I mistakenly leave it in a previous PR.
- adding the new paremeter `downloadName`
Screenshot:
Fixes#202
This new Loop mode keeps reproducing the current track, unless it is
changed using the player controls to go to the next/previous track.
As in other applications, this is set by using the "Repeat" button,
which now goes from "Off" -> "Repeat All" -> "Repeat One".
Adding the Loop functionality, along with the Player changes to support
it, and a button to the player controls.
`Player` now has a `loopMode` attribute, which determines whether it
should loop. At the moment, only the following modes are supported:
* `LoopNone`: Disables loop.
* `LoopAll`: Enables loop for the entire playlist queue.
This has been designed as an enum, to support other modes in the future
(e.g. loop for the current track only).
It depends on the `loop` functionality provided by MPV (using the
[`loop-playlist` option](https://mpv.io/manual/master/#options-loop-playlist)),
so no custom logic is needed to reset the currently playing index.
Add in the "meatball menu" of the Album and Playlist pages the option to
download the tracks of the corresponding album or playlist in a zip file.
When download is clicked, a dialog window appears allowing you to choose
the file name and where to save the file.
According to the official
[migration guide](https://github.com/pelletier/go-toml/tree/v2#migrating-from-v1),
there are no breaking changes that could affect this project.
Main differences are:
* `Default struct fields order`: Struct fields stop being alphabetically
sorted, unless their sorting is changed in the struct definitions. Shouldn't be
relevant.
* `No indentation by default`: Also not relevant for newly generated
configuration files. Doesn't break reading existing configuration
files.