edde746
40792e2779
fix: restore focus and interaction behavior
2026-07-13 17:00:50 +02:00
edde746
e15bbed554
test(servers): cover exhaustion reconnection and offline retry loop
...
Adds a production-wired exhaustion trigger hook, documents the
no-throw invariant behind the fire-and-forget verification probe, and
covers the confirmed-offline reconnect and debounce-driven recovery.
2026-07-13 12:05:23 +02:00
edde746
65e63c206e
fix(jellyfin): slim music hub row fields
...
close #1552
Latest Albums returns MusicAlbum folder dtos, where the browse count/user-data
fields each cost a recursive per-album COUNT query; request it with the slim
album fields + EnableUserData=false under a dedicated latestalbums identifier,
and drop the folder fields and Overview from the played-track rows.
2026-07-13 12:05:23 +02:00
edde746
f104b5ffae
fix(jellyfin): prevent false offline loops
2026-07-13 11:30:17 +02:00
edde746
e4db04fa62
fix: align UI focus and sheet behavior
2026-07-13 11:28:32 +02:00
edde746
e03edad824
fix: prevent async state and platform regressions
2026-07-13 00:03:52 +02:00
edde746
26d14f7cb0
fix(seerr): align request button focus
2026-07-12 22:19:42 +02:00
edde746
b9f828ae88
refactor(livetv): reuse standard hub cards
2026-07-12 22:11:30 +02:00
edde746
098a472670
fix(catalog): restore TV focus navigation
2026-07-12 21:42:27 +02:00
edde746
780a1ea180
fix(ci): restore analyzer and unit checks
2026-07-12 19:55:24 +02:00
edde746
917f6a2839
fix: guard lifecycle-bound state updates
2026-07-12 19:00:28 +02:00
edde746
2101f1d7f0
perf: isolate focus and media rebuilds
2026-07-12 19:00:11 +02:00
edde746
a561777456
perf: reduce state notification fan-out
2026-07-12 18:59:58 +02:00
edde746
b4575c9780
fix: preserve live TV state across refreshes
2026-07-12 18:59:42 +02:00
edde746
0ef1e773bb
fix: scope navigation callbacks to active owners
2026-07-12 18:59:27 +02:00
edde746
cd88f73f05
fix: serialize async state transitions
2026-07-12 18:59:14 +02:00
edde746
d1c4ae83eb
fix(review): resolve post-consolidation regressions
2026-07-12 17:31:16 +02:00
edde746
a9493f4f0e
fix(relay): harden lifecycle and protocol handling
2026-07-12 17:31:15 +02:00
edde746
fe8d405a56
fix(i18n): enforce complete localized coverage
2026-07-12 17:31:14 +02:00
edde746
754c54761a
refactor(downloads): consolidate task and metadata flows
2026-07-12 17:31:13 +02:00
edde746
7ecadffdb1
refactor(features): consolidate shared feature primitives
2026-07-12 17:31:13 +02:00
edde746
6506f36843
refactor(app): share client and presentation scaffolds
2026-07-12 17:31:12 +02:00
edde746
97f7508067
refactor(core): consolidate shared app foundations
2026-07-12 17:31:12 +02:00
edde746
a481fc1000
refactor(dialogs): unify text input contract
2026-07-12 08:42:26 +02:00
edde746
b7078448ea
refactor(mpv): unify property decoding
2026-07-12 08:42:26 +02:00
edde746
359a6bf02a
refactor(live-tv): split optional DVR support
2026-07-12 08:42:25 +02:00
edde746
6182c34448
perf(playlists): bound card inflation
2026-07-12 08:42:25 +02:00
edde746
699e73bcd5
fix(downloads): propagate hierarchical watch state
2026-07-12 08:42:25 +02:00
edde746
352aa04d3e
refactor(settings): share preference binding lifecycle
2026-07-12 08:42:25 +02:00
edde746
c81a1f9a97
fix(plex): tolerate malformed activity rows
2026-07-12 08:42:25 +02:00
edde746
34be331024
refactor(media): centralize HDR classification
2026-07-12 08:42:25 +02:00
edde746
ceae98b75f
refactor(paging): share continuation loading
2026-07-12 08:42:25 +02:00
edde746
5328865639
refactor(input): share gamepad key simulation
2026-07-12 08:42:24 +02:00
edde746
f78089edf8
refactor(input): share D-pad long press state
2026-07-12 08:42:24 +02:00
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
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
f4ec6ccf20
fix(settings): guard Atmos diagnostics stop
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