edde746
c369f2c3d7
refactor: remove dead code across codebase
2026-04-16 08:14:42 +02:00
edde746
6c61e0e4c9
feat: namedTimeout for Sentry context
2026-04-16 07:27:05 +02:00
edde746
bdd9d24d32
fix: fallback to IOClient on WinHttp init failure
2026-04-16 06:11:13 +02:00
edde746
a7ba837cb1
fix: prevent white screen when no servers available
2026-04-16 06:02:18 +02:00
edde746
f30e47dbd7
fix: enforce min 2x DPR for TV image transcoding
...
close #860
2026-04-14 05:55:43 +02:00
edde746
3366b83a89
fix: hide spoilers in watch next thumbnails
...
close #849
2026-04-12 11:12:37 +02:00
edde746
1b2ecd9de4
fix: standardize bool parsing with flexibleBool helper
...
close #844
2026-04-11 21:22:15 +02:00
edde746
4322ffc6e5
fix: disable android tv pip lifecycle regressions
2026-04-09 06:39:17 +02:00
edde746
5b493a70b0
feat: show snackbar on playback speed change
...
close #824
2026-04-09 03:48:14 +02:00
edde746
7f237c9c7b
refactor: reuse showTextInputDialog for episode count input
2026-04-08 18:08:39 +02:00
edde746
d0934295b0
feat: download all playlist items
...
close #241
2026-04-08 12:37:03 +02:00
edde746
87c308f6ca
feat: use win_http on Windows
2026-04-08 01:54:40 +02:00
edde746
15b22f75a8
refactor: replace dio with package:http
2026-04-08 00:43:08 +02:00
edde746
8e7431e7e5
feat: download options picker for series/seasons
2026-04-07 22:59:35 +02:00
edde746
7528dcec71
fix: connection selection failover and timeout budget
2026-04-07 06:49:51 +02:00
edde746
bc2febf480
fix: prefer https endpoints, catch h2 protocol errors
2026-04-07 05:48:44 +02:00
edde746
424351092d
fix: h2 fallback to http/1.1 on handshake failure
2026-04-07 04:20:41 +02:00
edde746
52b8944d71
feat: use HTTP/2 for all network requests
2026-04-06 22:53:13 +02:00
edde746
c9db6e528e
feat: more consistent poster sizing
...
close #798
2026-04-03 17:04:20 +02:00
edde746
fb275ea242
refactor: replace iso 639 json asset with const dart map
2026-04-02 17:07:45 +02:00
edde746
17f1075e64
feat: subtitle search & download from OpenSubtitles
...
close #343
2026-04-01 22:20:59 +02:00
edde746
b16a6a6bd5
fix: companion remote acts as remote instead of host on Android TV
2026-04-01 16:23:31 +02:00
edde746
3f1da5f289
feat: live TV time-shift
2026-04-01 12:20:07 +02:00
edde746
fc7892daed
fix: option picker dialog focus for TV/keyboard nav
2026-04-01 06:30:08 +02:00
edde746
1a96d2b418
feat: download version picker with smart series matching
...
close #767
2026-03-31 04:46:09 +02:00
edde746
684196aa36
perf: type-aware image memory cache bounds
2026-03-28 18:31:16 +01:00
edde746
53d50dbc3b
fix: guard scroll operations against infinite extents
2026-03-28 13:51:39 +01:00
edde746
0539c1d869
fix: overlay sheet position, scroll-to-selected in bottom sheets
2026-03-21 11:49:08 +01:00
edde746
7ebbf75cb9
fix: handle background isolate shutdown on iOS
2026-03-21 01:43:34 +01:00
edde746
630755cf7b
refactor: remove dead utility methods
...
Remove filterOutMusic, watchUserProfile, and watchHiddenLibraries
2026-03-15 22:55:18 +01:00
edde746
551be5bbef
feat: dynamic library tabs and shared library navigation
...
- Replace hardcoded 4-tab system with data-driven visible tab list
- Shared libraries show only Browse + Playlists tabs
- Fix dpad navigation for shared libraries (no hidden tab targets)
- Switch to TickerProviderStateMixin to support tab controller recreation
- Navigate to library screen when tapping shared library sections
- Persist tab selection by name instead of index
2026-03-15 21:36:17 +01:00
edde746
79888168ae
fix: add timeout diagnostics
2026-03-15 05:06:16 +01:00
edde746
9a296b3da8
fix: guard scrollListToIndex against multiple scroll positions
2026-03-14 22:11:48 +01:00
edde746
4f736c555b
fix: make PlexMetadata type/key/title nullable for folder items
...
Plex API returns Directory entries without type field, causing
TypeError crash in fromJson. Made fields nullable and migrated
callers to use mediaType enum and displayTitle getter instead
of raw string access.
2026-03-14 05:40:14 +01:00
edde746
c062dd944e
feat: inline season tabs and d-pad focus improvements
2026-03-12 00:57:51 +01:00
edde746
5538e0627b
refactor: remove SeasonDetailScreen, unify into MediaDetailScreen
...
Extract EpisodeCard to its own widget file. MediaDetailScreen now handles
isSeason by showing episodes directly, with proper watch state tracking,
deletion handling, and D-pad focus navigation. Hide empty overview sections.
2026-03-11 23:08:39 +01:00
edde746
3c491be690
fix: handle mpv end-file errors with global snackbar
2026-03-11 09:29:16 +01:00
edde746
73fe9e054f
fix: guard unsafe .first/.last calls to prevent StateError
2026-03-10 03:50:12 +01:00
edde746
0fc64cdf81
fix: catch seek PlatformException at source, remove coordinator
...
Catch COMMAND_FAILED/NOT_INITIALIZED in PlayerNative.seek() and
PlayerAndroid.seek() directly, preventing unhandled PlatformException
crashes on macOS app resume. Remove the ~200-line
_PendingSeekCoordinator system and revert all callsites to direct
player.seek(clampSeekPosition(...)). Keep seekable property/stream
and media controls gating. Add ExoPlayer seekable emission.
2026-03-09 07:21:36 +01:00
edde746
16676bca49
perf: watch together CPU overhead
2026-03-08 16:57:15 +01:00
edde746
beff4f9ca0
feat: add watch together playback rejoin flow
...
close #639
2026-03-06 20:42:18 +01:00
edde746
c1e2bc36ea
refactor: share Apple MPV core and media helpers
2026-03-06 10:16:33 +01:00
edde746
5877673755
fix: reduce UI padding between media items
...
close #629
2026-03-04 18:36:12 +01:00
edde746
13b5d7bae8
feat: secondary subtitle tracks
...
close #625
2026-03-04 09:35:36 +01:00
edde746
cd2ab9d9cd
refactor: deduplicate shared patterns, replace hardcoded colors
2026-03-03 22:43:00 +01:00
edde746
e60b8d13b9
fix: improve error reporting data sanitization
2026-03-03 19:16:33 +01:00
edde746
01e61c590a
fix: tighten startup connection timeouts for dead servers
2026-03-02 23:09:09 +01:00
edde746
5ab6af1b02
feat: respect system 24h time format setting
...
Closes #605
2026-03-02 18:19:52 +01:00
edde746
796db94896
remove unused sliver_adaptive_media_builder
2026-03-01 10:08:17 +01:00
edde746
48c9dcae1b
fix: apply hide spoilers setting to hero section
...
close #588
2026-02-28 06:18:11 +01:00