edde746
2e830d3f97
refactor(database): share watch action queries
2026-07-12 08:42:24 +02:00
edde746
649eaa4cce
refactor(watch-together): share relay setup
2026-07-12 08:42:24 +02:00
edde746
80344a630f
feat(playlists): add picker filtering and TV focus
2026-07-12 08:42:24 +02:00
edde746
2a128777f1
refactor(profiles): centralize Plex token policy
2026-07-12 08:42:24 +02:00
edde746
baf3c41a44
refactor(providers): share coalesced load scheduling
2026-07-12 08:42:24 +02:00
edde746
f7f4e3a992
fix(windows): support structured mpv observations
2026-07-12 08:42:24 +02:00
edde746
6890cd8690
refactor(settings): remove dead shortcut preferences
2026-07-12 08:42:23 +02:00
edde746
c84b8b4792
refactor(downloads): unify deletion and scoped cache handling
2026-07-12 08:42:23 +02:00
edde746
3d36ecf094
fix(mpv): harden native initialization and logging
2026-07-12 08:42:23 +02:00
edde746
de5234b59f
refactor(trackers): share username enrichment
2026-07-12 08:42:23 +02:00
edde746
69cf5fb8a1
fix(live-tv): contain retry failures
2026-07-12 08:42:23 +02:00
edde746
a0f153e5ab
refactor(symbols): share upload flow
2026-07-12 08:42:23 +02:00
edde746
0135318ded
fix(android): include mpv end-file diagnostics
2026-07-12 08:42:22 +02:00
edde746
f4ec6ccf20
fix(settings): guard Atmos diagnostics stop
2026-07-12 08:42:22 +02:00
edde746
5f8d263d63
fix(ci): fail closed on analyzer errors
2026-07-12 08:42:22 +02:00
edde746
242cc8616c
feat(settings): expose music quality preset
2026-07-12 08:42:22 +02:00
edde746
2ebc1e250d
fix(providers): stop loads after disposal
2026-07-12 08:42:22 +02:00
edde746
5876a602c3
fix(android): surface mpv command failures
2026-07-12 08:42:22 +02:00
edde746
79dabaf125
refactor(watch-together): share host peer IDs
2026-07-12 08:42:22 +02:00
edde746
65d3d8e471
refactor(jellyfin): share auth and time handling
2026-07-12 08:42:22 +02:00
edde746
aa230983d5
refactor(navigation): centralize sidebar focus
2026-07-12 08:42:22 +02:00
edde746
1b9ef3b3b6
fix(discover): avoid progress refresh fanout
2026-07-12 08:42:21 +02:00
edde746
29c029f04a
refactor(watch-together): share core primitives
2026-07-12 08:42:21 +02:00
edde746
777780926c
refactor(paging): share unknown-total sentinel
2026-07-12 08:42:21 +02:00
edde746
f08fceaee0
refactor(json): share scalar adapters
2026-07-12 08:42:21 +02:00
edde746
cdec9d1514
refactor(player): centralize chapter traversal
2026-07-12 08:42:20 +02:00
edde746
18835d92dd
refactor(navigation): reuse library icon mapping
2026-07-12 08:42:20 +02:00
edde746
967c25b11d
refactor(player): share queue item labels
2026-07-12 08:42:20 +02:00
edde746
877e8880cf
refactor(profiles): centralize Plex Home cache codec
2026-07-12 08:42:20 +02:00
edde746
ac9c236b6b
refactor(providers): harden server listener state
2026-07-12 08:42:20 +02:00
edde746
df7fa08e40
refactor(focus): centralize focus node ownership
2026-07-12 08:42:20 +02:00
edde746
c58013b818
refactor(downloads): centralize sidecar cleanup
2026-07-12 08:42:20 +02:00
edde746
b925705173
fix(downloads): discard stale profile refreshes
2026-07-12 08:42:19 +02:00
edde746
7a0e838017
fix(profiles): remint empty Plex resource tokens
2026-07-12 08:42:19 +02:00
edde746
dca51a752a
refactor(downloads): centralize metadata merging
2026-07-12 08:42:19 +02:00
edde746
0db6eb6f2e
fix(downloads): normalize Windows sidecar paths
2026-07-12 08:42:19 +02:00
edde746
6d94880c2f
fix(input): reset long press state safely
2026-07-12 08:42:19 +02:00
edde746
9c6fcbc841
fix(plex): tolerate scalar schema drift
2026-07-12 08:42:18 +02:00
edde746
a809cbbcef
fix(plex): surface server failures
2026-07-12 08:42:18 +02:00
edde746
64db84c3e2
feat(library): default clip libraries to folder grouping
...
close #966
2026-07-12 03:38:23 +02:00
edde746
a23c7f215c
fix(player): tighten staged back navigation
2026-07-11 23:11:25 +02:00
edde746
2679745941
fix: stop Jellyfin live TV sessions
...
close #1533
2026-07-11 22:00:05 +02:00
edde746
4443b76145
fix(player): respect visible chrome on back
2026-07-11 17:38:22 +02:00
edde746
3a982c2a7a
fix(player): prevent duplicate back actions
2026-07-11 12:59:57 +02:00
Ryan Ernest
c86d40f8dd
fix(player): preserve volume when toggling mute ( #1532 )
...
* fix(player): preserve volume when toggling mute
Muting now keeps the last volume level memorized. Unmuting restores that level, including amplified values allowed by the configured maximum.
* fix(player): preserve volume for companion remote mute
Route the companion remote through the shared mute transition so it no longer overwrites the persisted volume or restores to 100%. Also correct the Dartdoc formatting for the transition record fields.
2026-07-11 12:46:58 +02:00
edde746
d86e328169
fix(player): unify back navigation
...
close #1525
2026-07-11 03:23:40 +02:00
edde746
c885c0c6bc
fix(player): intercept spurious mid-file EOF and recover in place
...
close #1520
Classify player EOF signals against the best-known duration: a mid-file
EOF means the stream died (transcode reaped or idle connection closed
during a long pause), not that the media ended — it must never mark the
item watched, prompt Play Next, or exit a movie. Recover with a bounded
in-place reload at the parked position; if the server is still refusing,
park on the old frame and rebuild the stream on user play/seek or when
the server-status monitor sees it come back online.
2026-07-10 19:11:18 +02:00
edde746
b5d8ff5332
fix(metadata-edit): use 16:9 poster picker for episodes
...
close #1519
2026-07-10 12:45:35 +02:00
edde746
7509077d63
perf(tv): reduce animated semantics work
2026-07-10 12:07:19 +02:00
edde746
cbabdf2151
fix(images): prevent artwork limiter permit leaks
2026-07-10 12:07:19 +02:00