Commit Graph
653 Commits
Author SHA1 Message Date
Drew Weymouth 3d0e527b06 Merge pull request #209 from adamantike/fix/TappableImage-MinSize
Add MinSize method to TappableImage
2023-07-02 20:43:39 -07:00
Michael Manganiello a4f4151ebd Apply recommended fix 2023-07-02 22:06:23 -03:00
Michael Manganiello 0aa3fbbe1b Add MinSize method to TappableImage
This is being added, because testing the latest `develop` version for
`fyne` fails with the following error:

```
ui/widgets/imageplaceholder.go:48:3: cannot use i.imageDisp (variable of type *TappableImage) as fyne.CanvasObject value in argument to container.NewMax: *TappableImage does not implement fyne.CanvasObject (missing method MinSize)
ui/widgets/nowplayingcard.go:51:33: cannot use n.cover (variable of type *TappableImage) as fyne.CanvasObject value in argument to container.NewBorder: *TappableImage does not implement fyne.CanvasObject (missing method MinSize)
ui/widgets/tappablewrappers.go:64:21: cannot use t (variable of type *TappableImage) as fyne.Widget value in argument to t.ExtendBaseWidget: *TappableImage does not implement fyne.Widget (missing method MinSize)
```
2023-07-02 22:05:22 -03:00
Drew Weymouth e487c2c4d9 Merge pull request #211 from natilou/album-info
Add UI for viewing the album info returned by Subsonic getAlbumInfo API
2023-06-27 09:32:13 -07:00
natilou 9241601737 removing Resize line and wrapping the VBox in another container with layouts.MaxPadLayout 2023-06-27 09:48:36 -03:00
natilou 681fa06255 changing AlbumInfo attributes name, using the same names as subsonic API. Checking if lastFm and musicBrainzID are not empty strings. Saving the musicbrainz release url in constant. Using 'Show Info...' in meatball menu. 2023-06-27 09:48:36 -03:00
natilou f26e9dbcbf Add UI for viewing the album info returned by Subsonic getAlbumInfo API
- 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
2023-06-27 09:48:36 -03:00
Adam Batkin ad97c274f3 Add build instructions for Fedora 2023-06-26 20:43:44 -07:00
Drew Weymouth 47a7f065cb prepare for 0.4.0 release 2023-06-24 15:56:15 -07:00
Drew Weymouth 9aeab2fb38 Update README.md feature list 2023-06-24 13:44:21 -07:00
Drew Weymouth 416643a35e Update CHANGELOG.md 2023-06-24 13:42:10 -07:00
Drew Weymouth a537e7c157 Merge pull request #207 from dweymouth/feature/equalizer
Add 15 band graphic equalizer in Settings dialog
2023-06-24 13:28:41 -07:00
Drew Weymouth 2d38a0712c add preamp to EQ 2023-06-24 13:22:11 -07:00
Drew Weymouth 59be258e89 add equalizer UI in settings dialog 2023-06-24 10:47:45 -07:00
Drew Weymouth 87271c32d1 Merge branch 'main' of github.com:dweymouth/supersonic 2023-06-24 09:32:06 -07:00
Drew Weymouth 4d88e3c0f6 launch properly if previous session crashed and left lock file in place 2023-06-24 09:31:53 -07:00
Drew Weymouth ab22f871d2 add ISO 15 equalizer implementation 2023-06-22 18:36:06 -07:00
Drew Weymouth 9d7bfc719e Merge pull request #206 from natilou/download-notification
Add notification when a download is completed
2023-06-21 20:57:34 -07:00
Drew Weymouth 0e590ca8f3 beginning work on equalizer 2023-06-21 20:48:46 -07:00
natilou 6318ce33e4 getting the album name from titleLabel and adding ellipsis after 'Download' option 2023-06-21 23:35:56 -03:00
Drew Weymouth bc10e7f3d2 Merge pull request #204 from adamantike/feat/repeat-current-track
Add functionality to repeat current track
2023-06-21 17:43:27 -07:00
natilou d59ed11647 Add notification when a download is completed
- 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
2023-06-21 14:17:15 -03:00
Michael Manganiello a40ba5eb79 Update icons to the new Repeat ones 2023-06-20 23:51:04 -03:00
Michael Manganiello 196f7f2cff Add functionality to repeat current track
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".
2023-06-20 23:23:38 -03:00
Drew Weymouth 5f83c2cd95 add repeat icons to bundle 2023-06-20 19:22:40 -07:00
Drew Weymouth ae1351df96 Merge pull request #203 from dweymouth/feature/custom-themes
Add support for custom themes
2023-06-20 18:42:32 -07:00
Drew Weymouth a7603fe668 use v2 of toml 2023-06-20 18:36:58 -07:00
Drew Weymouth ecffb81f72 make ListHeader color independently customizable 2023-06-20 18:33:41 -07:00
Drew Weymouth c6fc76172a fallback to default Supersonic theme before falling back to Fyne theme 2023-06-20 18:33:41 -07:00
Drew Weymouth 02cac23d9a hook custom themes up to Settings dialog 2023-06-20 18:33:37 -07:00
Drew Weymouth 4a399c51b7 move default theme to ThemeFile system 2023-06-20 18:32:41 -07:00
Drew Weymouth 604396ae17 begin work on custom theme support 2023-06-20 18:32:41 -07:00
Drew Weymouth 87fd052411 Merge pull request #201 from natilou/download-from-grid
Ability to download from grid
2023-06-20 09:38:22 -07:00
Drew Weymouth 74c0c01268 add ellipsis to Download menu item 2023-06-20 09:37:56 -07:00
natilou 225d439729 wrapping functions in a goroutine and adding OnDownload handler to the playlist grid view 2023-06-20 13:24:37 -03:00
natilou 0dfbe685e1 Ability to download from grid
- Adding the option to download the album or tracks in grid view from Artist and Album pages.
2023-06-20 12:35:59 -03:00
Drew Weymouth 7f907267fa Merge pull request #197 from adamantike/feat/add-loop-player-control
Add repeat all functionality to player controls
2023-06-19 19:29:35 -07:00
Drew Weymouth 91d1cc5ba3 get rid of no-op defer 2023-06-19 19:27:14 -07:00
Drew Weymouth a324177fef adjust layout of aux controls 2023-06-19 19:22:47 -07:00
Michael Manganiello 13f0692566 Move loop button to auxiliary controls, change button color on toggle 2023-06-18 22:45:09 -03:00
Michael Manganiello 7161dd40a9 Reduce direct dependency on Player even more 2023-06-18 22:45:05 -03:00
Michael Manganiello 4629ede7a7 Interface BottomPanel through PlaybackManager to reduce direct dependency on Player 2023-06-18 22:43:03 -03:00
Michael Manganiello 2ab19f65e1 Add Loop functionality to player controls
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.
2023-06-18 22:43:03 -03:00
Drew Weymouth 1f272829c7 upgrade fsnotify to 1.6.0 and change reactivate logic slightly 2023-06-17 18:07:16 -07:00
Drew Weymouth 20e4d8c5f2 Fix #193: exit and reactivate existing instance if another instance running 2023-06-17 17:00:47 -07:00
Drew Weymouth 0906d118b4 Merge pull request #198 from natilou/download-album
Ability to download album and playlist
2023-06-17 10:03:01 -07:00
natilou b4ab95f5b4 Ability to download album and playlist
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.
2023-06-17 02:18:08 -03:00
Drew Weymouth 8ed75254a6 Merge pull request #191 from natilou/download-track
Ability to download tracks
2023-06-16 17:51:49 -07:00
natilou b1a266d217 using filepath.Base(track.FilePath) for fileName 2023-06-16 11:42:57 -03:00
Drew Weymouth 701001121f add nil check around OnDownload call 2023-06-15 21:01:52 -07:00