Commit Graph
102 Commits
Author SHA1 Message Date
Drew Weymouth a23e7d382d Fix #619: remove correct tracks from playlist if in searched view 2025-05-14 08:30:32 -07:00
Drew Weymouth 8619857425 lengthen Now Playing gradient animation + standardize anim durations 2025-04-17 08:49:10 -07:00
Drew Weymouth 42013ba598 remove newlines before displaying playlist descriptions 2025-04-17 08:12:30 -07:00
Drew Weymouth 6e7ad7225d restore scroll position when navigating back to Album and Playlist pages 2025-04-14 08:44:13 -07:00
Drew Weymouth 56c32e529e fix a few bugs 2025-03-07 08:04:15 -08:00
Drew Weymouth 15b73893c3 implement search within playlist 2025-03-06 19:24:21 -08:00
Drew Weymouth 14e03bed0c initial work for playlist search 2025-03-05 16:55:52 -08:00
Drew Weymouth 3a3774f5b6 add loading indicator and err/timeout toast to Album and Playlist pages (todo: other pages) 2025-02-14 17:15:03 -03:00
Drew Weymouth c7adeb5e32 a few more goroutines 2025-02-08 08:35:34 -03:00
Drew Weymouth ff78a79906 more fyne.Do updates 2025-02-08 08:35:33 -03:00
Drew Weymouth c60727f92a migrate to Fyne 2.6 - WIP - updates for new threading model 2025-02-08 08:34:39 -03:00
Drew Weymouth 56effb7027 make playlist image clickable to show pop-up 2024-12-19 08:59:58 -08:00
Drew Weymouth 1d342bf413 ensure clicking anywhere outside tracklists can unselect all 2024-12-15 15:52:21 -08:00
Drew Weymouth 494ca677d8 Fix #487: remove only selected copy of duplicate tracks in playlist 2024-09-29 13:04:43 -07:00
Drew Weymouth d6354086bb Fix #467: translate "public/private playlist by" as single string 2024-08-16 08:38:02 -07:00
Drew Weymouth 48db088af7 more translation prep 2024-07-21 11:10:01 -07:00
Drew Weymouth ee38c36647 fix bugs with reordering playlist tracks multiple times 2024-06-23 08:22:52 -07:00
Drew Weymouth 4545839e92 enable drag and drop reordering 2024-06-22 17:10:26 -07:00
Drew Weymouth f1726385eb fix signature for OnSongChange callback for Tracks and Playlist pages 2024-06-02 08:53:02 -07:00
Drew Weymouth efcfe2a99f refactor: make ReorderItems generic 2024-06-01 10:42:31 -07:00
Drew Weymouth 0a902aef9f refactoring continued - compiles now 2024-05-31 16:37:14 -07:00
Drew Weymouth 680cfb42d2 WIP - doesn't quite work yet 2024-05-29 20:04:06 -07:00
Drew Weymouth 819f42dac0 onboard to new custom padded box layouts 2024-05-24 16:57:49 -07:00
Drew Weymouth 883c1f738d rebase to Fyne 2.5 prerelease and onboard to new CustomPaddedLayout 2024-05-24 16:48:53 -07:00
Drew Weymouth 227fb1d0ac add Play next option to album page menu 2024-04-13 08:19:33 -07:00
Tanguy Rossel 63bdfb5f87 WIP: feat: add "Play next" MenuItem 2024-04-04 08:39:14 +02:00
Drew Weymouth 914636e91f remove SupportsSongRadio infra since all mediaproviders support it now 2024-03-31 09:28:50 -07:00
natilou c1bf789432 fix fmt 2024-03-30 12:26:42 -03:00
natilou 298f4f6602 feat: Add Song radio option in tracklist.
At this moment this feature is only available on the Subsonic media provider. Using a
Jellyfin server the "Play song radio" option will be disabled.
2024-03-30 12:26:42 -03:00
Michael Manganiello 80d7cf0b65 fix: Avoid slices.Contains within tight loops
Having a `slices.Contains` check within a `for` loop has a complexity of
`O(n*m)`, with a worst case scenario of `O(n^2)` for when both
collections have the same size.

This is because `slices.Contains` internally runs just a regular loop,
checking for equality element by element.

Instead, this diff changes every occurence of this pattern to converting
the collection we compare against to a set, and then running a faster
lookup against it.
2024-03-17 13:21:51 -03:00
Drew Weymouth 3b5e5171b5 Fix #345: make sure to truncate playlist title, description, owner 2024-03-08 08:05:18 -08:00
Michael Manganiello 801967a530 misc: Upgrade Go to v1.21
Upgrade to 1.21 as 1.20 is now unmaintained.

Most changes are related to the new `slices` package from standard
library, which can replace some existing custom functions.
2024-03-05 09:49:10 -03:00
Michael Manganiello a6fefc992d Refactor and temporarily disable sharing artists 2024-03-03 21:01:48 -03:00
Michael Manganiello 9d3725cb51 feat: Add Share option for artists, albums, and tracks
This feature is only available on the Subsonic media provider. Using a
Jellyfin server will make Supersonic hide the "Share" option.

* Artists: Option available in grid view and in Artist view.
* Albums: Option available in grid view and in Album view.
* Tracks: Option available in tracklist, when a single track is selected.
2024-03-03 20:44:58 -03:00
Drew Weymouth a7309b08ca add keyboard scrolling to list views 2024-02-18 13:26:15 -08:00
Drew Weymouth 6ac9337625 remove some outdated todo comments 2024-02-14 15:11:14 -08:00
Drew Weymouth e4342ac135 Add icons to menu items 2024-01-06 16:24:23 -08:00
Drew Weymouth 9c2f72d9f2 Fix #33: allow reordering of play queue 2024-01-06 14:22:18 -08:00
Drew Weymouth b3a5fee264 replace shuffle icon 2024-01-06 11:44:25 -08:00
Drew Weymouth 80a3104e79 all playlist functionality works now 2023-11-14 09:05:02 -08:00
Drew Weymouth 7d3e942e3f playlist updates 2023-11-14 09:05:02 -08:00
Drew Weymouth e261eab4f3 Jellyfin does not support 5-star ratings - make it disableable 2023-11-14 09:05:02 -08:00
Drew Weymouth c9b224277e Add rounded rectangle background to Album, Artist, Playlist page headers 2023-11-06 17:54:40 -08:00
Drew Weymouth 1a8196d471 make tracklist.SetTracks refresh to mitigate risk of non-refresh bugs 2023-11-05 08:54:59 -08:00
Drew Weymouth 27fab7ed26 switch to ellipsis truncation everywhere 2023-11-03 23:26:26 -07:00
Drew Weymouth 64ec698202 few cleanups around handling track change callback 2023-08-04 23:39:14 -04:00
Drew Weymouth 5bb65ee6aa Fixes #222: ensure pooled PageHeaders don't hold onto old state in closures 2023-07-17 17:07:13 -07:00
Drew Weymouth f75a5e27a5 clear tracks from tracklists before releasing to widget pool 2023-07-10 13:51:09 -07:00
Drew Weymouth a86a81f1e6 fix bug with not resetting page reference when reusing headers 2023-07-09 16:52:08 -07:00
Drew Weymouth d76fc41230 more pooling of widgets, rename and rework a few things 2023-07-07 17:11:03 -07:00