Skip to content

Playlist downloads, artist downloads, session activity combined PR - #7

Draft
wsturgiss wants to merge 14 commits into
sublunarian:mainfrom
wsturgiss:mega-branch-merge-all-new-features
Draft

Playlist downloads, artist downloads, session activity combined PR#7
wsturgiss wants to merge 14 commits into
sublunarian:mainfrom
wsturgiss:mega-branch-merge-all-new-features

Conversation

@wsturgiss

Copy link
Copy Markdown

No description provided.

wsturgiss and others added 14 commits August 10, 2026 10:33
Mirrors the existing 'Download Album' behavior in AlbumActionsScreen:
shows 'Download Playlist' when tracks aren't fully downloaded, or
'Remove from Downloads' when they are, gated on source.supportsDownloads.
PlexLinkScreen always minted a fresh MusicSource.id when linking or
re-linking a server, and AppSettings.saveSource only matched existing
sources by that id. Re-linking the same Plex server from a different
network (a different address winning the reachability check) silently
added a second Sources entry for it.

saveSource now also matches an existing source by (kind,
machineIdentifier) when the id doesn't match anything, and if found,
keeps the original id and merges in its existing download/offline-mode
preferences rather than creating a duplicate. saveSource now returns
the effective id so callers that immediately set the active source use
the right one.
Mirrors the existing 'Download Album' behavior in AlbumActionsScreen:
downloads every track across an artist's discography, or offers to
remove them if already fully downloaded.
@wsturgiss
wsturgiss marked this pull request as draft August 13, 2026 16:45
@wsturgiss wsturgiss changed the title Playlist downloads, artist downloads, session activity Playlist downloads, artist downloads, session activity combined PR Aug 13, 2026
@wsturgiss

Copy link
Copy Markdown
Author

This is the branch I am using that combines all the other feature branches

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant