Michael Manganiello
21751221fc
fix: MPRIS broken cover art on Linux
...
Problem:
When changing tracks, the toolbar display on Linux sometimes misses the
track cover art, and displays a placeholder instead.
Solution:
Copy same callback as the one used for MacOS, which calls
`GetCoverArtUrl` first, to avoid missing cover arts.
2024-02-24 15:04:03 -03:00
Michael Manganiello
56c78aad0c
fix: MPRIS Seek functionality on Linux
...
Problem:
The operating system toolbar's component to control Supersonic playback
had its Seek functionality broken on Linux. When playing a song, seeking
for a different position from Supersonic worked as expected, but seeking
from the toolbar did nothing to the current track.
I found that the underlying reason was in `MPRISHandler.SetPosition`, as
the `if m.curTrackPath == trackId` always returned false.
`m.curTrackPath` was the right value, but `trackId` was wrong: On the
first song being played for a tracklist, `trackId` when trying to seek
was set to `/org/mpris/MediaPlayer2/TrackList/NoTrack`. When moving to
the next song, `trackId` then became the Track ID of the previously
played song.
Solution:
Changing the call to `OnTitle()` is enough to fix the issue, as the
MPRIS `Metadata()` generation depends on the value of `m.curTrackPath`.
Because it was being called before changing its value, the received
`trackId` was always off.
2024-02-24 13:26:04 -03:00
Drew Weymouth
b61afb1ba5
Fix #319 : show cancelable modal dialog while connecting to server on startup
2024-02-15 09:04:14 -08:00
Drew Weymouth
91aa92706d
Fix #316 : Add setting to show notification on track change
2024-01-20 14:42:22 -08:00
Drew Weymouth
edc3ef7bfa
Fix #315 : Pre-select most recent playlist in "Add to playlist" dialog
2024-01-20 14:22:30 -08:00
Drew Weymouth
e1bc745645
refactor: split a lower-level playbackEngine out of PlaybackManager
2024-01-13 11:53:18 -08:00
Drew Weymouth
ee275cb9ed
update Fyne fork to 2.4.3 baseline
2024-01-12 08:53:21 -08:00
Drew Weymouth
e9d462e655
move player package into backend
2024-01-08 18:53:13 -08:00
Drew Weymouth
7cfd176c59
extract deepCopy helper function
2024-01-08 17:17:12 -08:00
Drew Weymouth
fca5abca94
ignore/skip failure to restore individual tracks from queue
2024-01-08 08:14:45 -08:00
Drew Weymouth
793b570999
load saved play position on startup
2024-01-07 17:14:57 -08:00
Drew Weymouth
c4c4a71d5e
save and load play queue on exit/startup (partial impl)
2024-01-07 16:25:15 -08:00
Drew Weymouth
9c2f72d9f2
Fix #33 : allow reordering of play queue
2024-01-06 14:22:18 -08:00
Drew Weymouth
ca25756db7
fix regression- crashing on Repeat One when nothing playing
2024-01-06 11:11:34 -08:00
Drew Weymouth
10feaad1f3
Merge pull request #305 from dweymouth/feature/jukebox
...
Redesign of PlaybackManager
2023-12-23 10:52:55 -08:00
Drew Weymouth
91951ebfd2
implement new logic for RemoveTracksFromQueue
2023-12-22 17:58:36 -08:00
Drew Weymouth
cfb8739a61
when changing loop mode, only call player.SetNext if needed
2023-12-22 17:22:40 -08:00
Drew Weymouth
d089151f85
remove extra replaygain set
2023-12-22 16:28:34 -08:00
Drew Weymouth
cf41795659
handle LoopMode logic, plus some reorganization
2023-12-22 16:21:29 -08:00
Drew Weymouth
de6ba5c120
move LoopMode
2023-12-22 16:01:56 -08:00
Drew Weymouth
d9eca8d807
Beginning of reworked PlaybackManager - PARTIAL
2023-12-22 15:50:39 -08:00
Drew Weymouth
4c3d638aed
some simplification of PlaybackManager
2023-12-21 20:18:53 -08:00
Drew Weymouth
81dde8ee2e
bump to Go 1.20 and rm deprecated rand.Seed
2023-12-19 17:59:24 -08:00
Drew Weymouth
1e466e4cdf
start of JukeboxPlayer backend
2023-12-19 17:31:10 -08:00
Drew Weymouth
f8f8a3a5cb
rework settings dialog to be aware of different player types
2023-12-19 08:41:07 -08:00
Drew Weymouth
bcf95ba26c
don't assume MPV player in now playing page
2023-12-19 08:23:12 -08:00
Drew Weymouth
df6c53a3f5
add interface to decouple MPV player from PlaybackManager
2023-12-18 20:22:24 -08:00
Drew Weymouth
1665281ad7
Refactor pt. 2: route player transport controls+callbacks through PlaybackManager
2023-12-18 09:06:17 -08:00
Drew Weymouth
bd4db95f64
fix non-Mac build
2023-12-18 07:52:59 -08:00
Drew Weymouth
55f9461410
Refactor pt. 1: move MPV player to own package and extract some types
2023-12-17 13:50:30 -08:00
Drew Weymouth
53dc9277ec
Add Comment column to tracklist
2023-12-16 15:54:03 -08:00
Drew Weymouth
1521c0c4ba
add ReleaseTypes to the album model
2023-12-16 13:44:16 -08:00
Drew Weymouth
79b8d34430
#284 : fix artist radio for Jellyfin
2023-11-16 08:17:32 -08:00
Drew Weymouth
87fc88e308
Fix #157 : Add "Auto" ReplayGain mode to auto-choose between Track and Album
2023-11-15 08:14:31 -08:00
Drew Weymouth
2e223c6141
Fix #179 : add experimental setting to scale down or up UI size
2023-11-14 19:12:00 -08:00
Drew Weymouth
2ffcac9b88
add scrobbling for Jellyfin
2023-11-14 18:08:55 -08:00
Drew Weymouth
b7f54054d8
correctly distinguish user/pass auth errors from other connectivity errors again
2023-11-14 17:36:07 -08:00
Drew Weymouth
d1380d6a41
remove dead obsolete code
2023-11-14 17:05:10 -08:00
Drew Weymouth
aba2076894
remove Recently Played, Frequently Played album sort orders for Jellyfin
2023-11-14 16:58:04 -08:00
Drew Weymouth
80a3104e79
all playlist functionality works now
2023-11-14 09:05:02 -08:00
Drew Weymouth
470fe4b31a
backfill Subsonic to missing ServerTypes in config
2023-11-14 09:05:02 -08:00
Drew Weymouth
cafca00b1b
editing playlist metadata is working 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
f25e748be5
implement favorites, download, albuminfo for Jellyfin
2023-11-14 09:05:02 -08:00
Drew Weymouth
4f9b3a70bf
implement Quick Search for Jellyfin
2023-11-14 09:05:02 -08:00
Drew Weymouth
9e10e2442c
fix artist radio for jellyfin
2023-11-14 09:05:02 -08:00
Drew Weymouth
831ce1de97
track iterator for jellyfin + generics refactoring of helpers
2023-11-14 09:05:02 -08:00
Drew Weymouth
58428cc35d
convert units properly for RunTimeTicks and Bitrate
2023-11-14 09:05:02 -08:00
Drew Weymouth
8aed1e5234
add Jellyfin albumiterator
2023-11-14 09:05:02 -08:00