Drew Weymouth
e180197852
fix some interface assertion and nil bugs, and album page not showing now playing
2024-06-01 12:28:48 -07:00
Drew Weymouth
bfa3dc9892
more progress on radios
2024-06-01 12:18:28 -07:00
Drew Weymouth
0c004baadd
start work on radios page
2024-06-01 11:18:22 -07:00
Drew Weymouth
efcfe2a99f
refactor: make ReorderItems generic
2024-06-01 10:42:31 -07:00
Drew Weymouth
82d4546096
refactor tracklist to use MediaItem, even if it only contains tracks
2024-06-01 10:15:18 -07:00
Drew Weymouth
0a902aef9f
refactoring continued - compiles now
2024-05-31 16:37:14 -07:00
Drew Weymouth
f67a0c5fc1
in progress MediaItem refactor - does not build
2024-05-31 09:35:46 -07:00
Drew Weymouth
84d9372e08
fix widget pool tracklist retrieval for album page
2024-05-30 19:08:44 -07:00
Drew Weymouth
680cfb42d2
WIP - doesn't quite work yet
2024-05-29 20:04:06 -07:00
Drew Weymouth
b66baf5e77
slightly lengthen animation
2024-05-29 07:27:26 -07:00
Drew Weymouth
906c951cc9
use dynamic gradient as background of Now Playing page
2024-05-29 07:22:08 -07:00
Drew Weymouth
653a2658d4
Fix #391 : ensure artist radio button updates properly when reusing artist page
2024-05-28 07:50:36 -07:00
Drew Weymouth
0a818ae7b5
set state properly when reusing NowPlayingPage in constructor
2024-05-27 08:23:28 -07:00
Drew Weymouth
874c13b8d5
don't clear state when saving NowPlayingPage to pool for faster reloading from history
2024-05-26 13:39:43 -07:00
Drew Weymouth
edb6654bee
use pre-existing page from widget pool in constructor if possible
2024-05-26 12:28:33 -07:00
Drew Weymouth
db38e1a3f4
use empty lyric to clear widget during fetch
2024-05-26 07:38:44 -07:00
Drew Weymouth
17ede7a909
add loading dots for lyrics and related tabs
2024-05-25 19:09:41 -07:00
Drew Weymouth
3f8a2e1d1e
add LrcLib as a fallback lyric provider
2024-05-25 16:56:41 -07:00
Drew Weymouth
e55a13fbdd
add Related tab to Now Playing page
2024-05-25 11:57:17 -07:00
Drew Weymouth
8caab9bd43
make sure to set lyrics nil when stopping
2024-05-25 10:48:20 -07:00
Drew Weymouth
4ba358ad23
only update lyrics when visible
2024-05-25 10:17:47 -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
e7b2b821f3
hook up seek for synced lyrics
2024-05-16 19:22:08 -07:00
Drew Weymouth
e8d751bc2a
first draft of synced lyrics integration, missing seek support
2024-05-16 18:32:13 -07:00
Drew Weymouth
06780e110b
Fix #383 : restore filter button for saved GridViewPages
2024-05-10 18:18:50 -07:00
Drew Weymouth
c161f2b171
create new page for GoHome instead of using browsing history
2024-04-29 08:55:02 -07:00
Drew Weymouth
e4514c502c
save scroll position of Playlists page views in browsing history
2024-04-27 15:36:22 -07:00
Drew Weymouth
a00b395692
reset focus whenever navigating between pages, not just back/forward
2024-04-27 09:53:22 -07:00
Drew Weymouth
93cd796f1b
save scroll position of Genres page in navigation
2024-04-27 09:45:58 -07:00
Drew Weymouth
3045fcf94e
Fix refreshing of lyrics viewer on song change
2024-04-19 08:12:48 -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
Drew Weymouth
d5f0971aa2
Closes #351 : show reissue year in album page header
2024-03-31 08:26:54 -07:00
Drew Weymouth
0c03ac87a1
Merge pull request #355 from adamantike/misc/migrate-artists-page-to-gridview
...
misc: Migrate Artists page to GridView
2024-03-31 08:06:07 -07:00
Michael Manganiello
66658b1401
misc: Migrate Artists page to GridView
...
Remove custom page implementation for Artists, and instead rely on the
generic `GridView` approach. This also simplifies adding new
sorting/filtering options as next improvements.
The new `ArtistFilter` is a dummy implementation without any real
filters at the moment.
Also, the `go-jellyfin` upgrade is needed to correctly display the album
count for each artist.
2024-03-30 12:42:48 -03: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
Drew Weymouth
ec085cf22e
Fix #350 : add option to shuffle artist's discography by albums of tracks
2024-03-24 10:13:32 -07:00
Drew Weymouth
e76ba30f34
Merge pull request #347 from adamantike/misc/decouple-gridview-from-albums
...
misc: Decouple Grid view from Albums
2024-03-19 13:02:13 -07: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
Michael Manganiello
ab2ac363b0
fix: Disable genre filter only on Genre page
2024-03-11 23:59:53 -03:00
Michael Manganiello
a220243279
misc: Decouple Grid view from Albums
...
The Grid view and related components were highly coupled to Albums,
including the filter button that is currently used only for album
filtering.
As part of the migration of Artists to Grid view, this is the smallest
possible change to convert many of the existing code to
generics/interfaces that will allow different media to be displayed and
filtered by using Grid views.
The main changes in this diff are:
* Introduction of generics for Media types (`M`) and Filter options
(`F`), which can be later extended to other entities besides Albums.
* Complete decoupling of `GridViewPage` and related components from
Albums (making these pages also generic).
* Refactoring of Subsonic/Jellyfin specific code to understand these new
generics when dealing with filtering logic.
2024-03-11 00:44:20 -03:00
Drew Weymouth
3b5e5171b5
Fix #345 : make sure to truncate playlist title, description, owner
2024-03-08 08:05:18 -08:00
Drew Weymouth
739b5eb64d
save last active tab in Now Playing page
2024-03-06 19:48:55 -08:00
Drew Weymouth
1e377619b5
Merge branch 'main' into feature/lyrics
2024-03-06 09:46:44 -08:00
Drew Weymouth
129afcf4a8
update lyrics text style
2024-03-06 09:44:52 -08:00
Drew Weymouth
b3bec2694b
fetch lyrics async
2024-03-06 08:13:02 -08:00
Drew Weymouth
3fa52c73df
add unsynced lyrics view (not tested yet)
2024-03-06 08:05:53 -08:00