edde746
e6ee83d9c2
fix: preserve home screen scroll position on back navigation
2026-03-04 16:34:36 +01:00
edde746
18abcef8a2
fix: offload large UTF-8 decoding to background isolate
...
Prevents ANR when Dio's responseDecoder synchronously decodes large API
responses on the main thread. Responses >50KB use compute(). Also caches
MediaCodecList query results in ExoPlayerCore companion object.
2026-03-04 07:42:26 +01:00
edde746
013bcfbece
fix: library continue watching hidden
...
close #615
2026-03-03 12:17:37 +01:00
edde746
f96ef0740d
fix(android): move JSON parsing off main thread
2026-03-02 02:24:08 +01:00
edde746
a6119414ca
Merge branch 'fix-plex-notifications'
2026-02-27 22:20:12 +01:00
edde746
4929e7d42b
fix: hardcode app name in connection probe headers
2026-02-27 22:19:24 +01:00
edde746
edb285a279
feat: cache BIF file for instant preview thumbnails
...
close #565
2026-02-27 15:30:29 +01:00
Matt Vogel
e9218e0a3d
Fix duplicate Plex notifications and Flutter app name on login
...
Connection probe requests in testConnectionWithLatency were sent without
X-Plex-Client-Identifier, X-Plex-Product, or X-Plex-Device-Name headers.
Plex treated each anonymous probe as a new unknown device and fired a
"New Device" notification for every server tested (one per shared/owned
server), while displaying "Flutter" as the device name from the HTTP
user-agent.
Pass clientIdentifier through findBestWorkingConnection and all connection
test helpers so every probe request identifies itself as "Plezy" with the
persistent client UUID. This prevents spurious notifications and ensures
the device shows the correct app name in Plex's device list.
https://claude.ai/code/session_01V5VraujkNmk5GGPLyZ33fN
2026-02-26 08:21:06 -05:00
edde746
a38aac7829
fix: artwork changing not working
...
- Use PUT instead of POST and singular element path (art/poster) to
match Plex Web API behavior
- Set content type to application/octet-stream for binary uploads
- Add GestureDetector for mouse/touch tap support in artwork picker
- Always refresh detail screen metadata after returning from edit
2026-02-26 11:55:45 +01:00
edde746
383351d769
fix: detect invalid tokens and prevent startup hangs
...
close #553
2026-02-25 23:59:19 +01:00
edde746
728c4854a5
feat: sparse-map pagination for library browse
2026-02-25 18:14:48 +01:00
edde746
af41d937c3
fix: remove DVR recording features (plex pass)
...
close #530
2026-02-24 23:13:38 +01:00
edde746
4095cc27e1
perf: reduce redundant metadata API requests
2026-02-23 11:43:42 +01:00
edde746
1eb88e23f5
perf: cache-first metadata fetching for playback
2026-02-23 10:51:25 +01:00
edde746
7802beb41b
feat: play/shuffle folder contents
...
close #514
2026-02-23 02:19:57 +01:00
edde746
4eb55885f7
feat: metadata editing
...
close #338
2026-02-22 17:56:13 +01:00
edde746
3289ce0fbc
feat: fallback skip markers from chapter titles
2026-02-22 04:34:36 +01:00
edde746
9819c4f495
fix: move hub/onDeck API processing to isolates
2026-02-21 05:34:06 +01:00
edde746
1e6a1af1cf
feat: add user star ratings
...
close #411
2026-02-20 09:57:44 +01:00
edde746
89c7b79867
fix: use identifier as fallback key for EPG channels
2026-02-19 09:13:00 +01:00
Matt Vogel
0bbcd854e4
feat: add trailers and extras support
...
Adds support for viewing and playing trailers and bonus content from Plex.
- Add getExtras() API method to fetch extras from Plex
- Add trailer/extras metadata fields (subtype, extraType, primaryExtraKey)
- Add play trailer button with film reel icon on media detail screen
- Add "Trailers & Extras" section below cast with horizontal scroll
- Support offline mode via cache fallback
- Preserve serverId/serverName for multi-server setups
2026-02-15 15:09:45 -05:00
edde746
04438c8e45
refactor: code quality & format
2026-02-15 04:07:09 +01:00
edde746
9184bb8d40
Merge branch 'live-tv'
...
# Conflicts:
# lib/i18n/strings.g.dart
# lib/i18n/strings_de.g.dart
# lib/i18n/strings_en.g.dart
# lib/i18n/strings_es.g.dart
# lib/i18n/strings_fr.g.dart
# lib/i18n/strings_it.g.dart
# lib/i18n/strings_ko.g.dart
# lib/i18n/strings_nl.g.dart
# lib/i18n/strings_sv.g.dart
# lib/i18n/strings_zh.g.dart
# lib/screens/main_screen.dart
# lib/services/plex_client.dart
# lib/widgets/video_controls/desktop_video_controls.dart
2026-02-14 22:29:16 +01:00
edde746
4fc98426ff
feat: connection recovery on mobile resume and endpoint exhaustion
2026-02-14 22:11:00 +01:00
edde746
b3ff48feca
fix(tv): live playback and timeline keepalive
...
Disable MKV Cues seeking for live streams, fix timeline params.
2026-02-14 03:33:58 +01:00
edde746
f4d940af10
fix(tv): add diagnostic logging for multi-DVR issues
...
Also remove suspicious Uri.decodeComponent on lineup parameter.
2026-02-13 16:29:33 +01:00
edde746
a4d4e2e1f8
fix(tv): query all EPG providers for multi-DVR support
2026-02-13 14:16:44 +01:00
edde746
426f6ab6ba
fix(tv): misc improvements
2026-02-13 00:01:54 +01:00
edde746
ac1dae25b8
feat(tv): add What's On tab with API-driven hubs and show schedule
2026-02-12 16:46:15 +01:00
edde746
80f26b07c0
feat(tv): inline EPG guide grid with provider endpoint discovery
2026-02-12 14:16:10 +01:00
edde746
2ae6385913
fix(tv): playback stopping
2026-02-12 11:21:00 +01:00
edde746
a1d78562d6
fix(tv): playback
2026-02-12 03:52:51 +01:00
edde746
403b1f6776
feat: live tv
2026-02-11 16:27:49 +01:00
edde746
8aa7d15dca
chore: upgrade dependencies and fix new lint warnings
2026-02-09 09:06:31 +01:00
edde746
3459c9f59d
chore: format
2026-02-08 16:03:40 +01:00
edde746
bc14f20ee6
Merge branch 'feature/thumbnail-previews'
2026-02-07 20:57:39 +01:00
edde746
05abf40c59
fix: thumbnail preview probe improvements
2026-02-07 20:57:12 +01:00
edde746
747fee0889
feat: log uploading
2026-02-07 20:09:30 +01:00
edde746
5c225bb89e
feat: alpha jump bar
...
close #349
2026-02-05 10:15:59 +01:00
Micah Morrison
41bf2f4ede
Add the ability to delete media items
2026-02-01 23:03:04 -05:00
edde746
a3b5dfecfb
refactor: clean up
2026-01-28 05:22:56 +01:00
edde746
d3c7b55213
refactor: simplify server connection logic
2026-01-28 04:23:27 +01:00
edde746
b5726fe4b7
chore: format
2026-01-20 13:46:44 +01:00
edde746
60c95c58fe
fix: cross-device watch progress sync
...
close #240
2026-01-15 11:45:13 +01:00
zhubowen
570f1fdc58
feat(plex): improve video content filtering and directory parsing
2026-01-07 19:59:57 +08:00
zhubowen
da1a4e7aa8
fix(tv): include episodes in video content filtering
2026-01-07 19:33:35 +08:00
edde746
5ed2532bf1
feat: global hubs with settings toggle
...
close #216 & #217
2026-01-06 23:23:03 +01:00
edde746
da6ba9bd67
fix: always cache markers for auto-skip
...
close #210
2026-01-04 04:26:05 +01:00
edde746
1d67a5d992
feat: reactive watch state updates
2026-01-01 22:05:55 +01:00
edde746
2dfebf32b6
fix: respect Plex track selection preferences
...
close #181
2025-12-21 10:51:32 +01:00