github-actions[bot]
80dc5ffdc5
chore: update cask to 1.22.0
2026-02-27 23:13:20 +00:00
github-actions[bot]
0449be7aa0
chore: bump version to 1.22.0
2026-02-27 22:57:55 +00: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
18614022c0
feat: auto-dismiss skip segment buttons
...
closes #584
2026-02-27 22:13:03 +01:00
edde746
389a9622c3
fix: prevent OOM crash from infinite focus reclaim loop
...
Add re-entrancy guard to VideoPlayerScreen._onScreenFocusChanged()
and replace busy-wait spin loop with Completer in MediaDetailScreen.
2026-02-27 21:23:31 +01:00
edde746
4cebff4367
move debug output
2026-02-27 21:19:52 +01:00
edde746
3103cb5ee1
fix: harden offline playback and exoplayer fallback
2026-02-27 21:02:30 +01:00
edde746
7a0a911cd9
fix: prevent ASS subtitle stretching
...
close #579
2026-02-27 20:33:48 +01:00
edde746
03d62d2e2b
fix: handle corrupted download paths missing leading slash
2026-02-27 19:05:05 +01:00
edde746
5ff5441baa
fix: map ssa subtitle codec to .ass extension
...
close #569
2026-02-27 16:51:49 +01:00
edde746
c1e9911841
chore: update MPVKit to 0.41.0 on iOS/macOS
2026-02-27 16:41:27 +01:00
edde746
00667fe8b8
fix: add const constructors and remove unused imports
2026-02-27 15:43:34 +01:00
edde746
ab2f8cf6ff
fix: normalize corrupted download paths on startup
2026-02-27 15:43:34 +01:00
edde746
edb285a279
feat: cache BIF file for instant preview thumbnails
...
close #565
2026-02-27 15:30:29 +01:00
edde746
11377362cb
fix: duplicate hero tag error in logs upload dialog
2026-02-27 15:26:49 +01:00
edde746
1cdf1890cf
fix: download playback issues (doubled path, audio language, spinner)
2026-02-27 15:26:49 +01:00
edde746
9e0c3e7b68
fix: improve delete-from-server button safety
...
Rename "Delete" to "Delete from server" with distinct icon and
always-red styling to prevent accidental server deletions.
Closes #568
2026-02-27 14:49:47 +01:00
edde746
b549432250
ci: exclude generated .g.dart files from sonar
2026-02-27 14:34:06 +01:00
edde746
b100c356fc
ci: add flutter pub get to sonar workflow
2026-02-27 14:33:47 +01:00
edde746
045295b4c1
ci: add sonar project properties
2026-02-27 14:29:36 +01:00
edde746
ad9556e484
ci: add SonarQube workflow
2026-02-27 14:27:10 +01:00
edde746
7f03c15779
fix: restore FocusTheme import in libraries screen
2026-02-27 12:53:21 +01:00
edde746
cc30bee83a
refactor: extract FocusableActionBar widget for reusable app bar actions
...
Replace duplicated focusable action button pattern across 8 screens with
a shared FocusableActionBar widget that handles focus nodes, D-pad
navigation, back key, and focus decoration automatically.
2026-02-27 11:55:19 +01:00
edde746
8559037a50
fix: logs screen d-pad navigation
2026-02-27 11:37:11 +01:00
edde746
732c09eec1
fix: cancel status stream subscription on dispose
...
Closes #571
2026-02-27 09:11:16 +01:00
edde746
602982d426
fix: remove low memory warnings during playback
...
Closes #576
2026-02-27 08:53:38 +01:00
edde746
7472e3a2f7
fix: broken imports
2026-02-26 14:57:37 +01:00
Matt Vogel
6eeb484c30
Pass persistent client UUID through auth screen login path
...
The auth screen was calling connectAndInitialize without a clientIdentifier,
causing MultiServerManager to fall back to a throwaway timestamp ID for all
probe requests during first login. This meant Plex registered a new device on
every login, not just the first ever install.
2026-02-26 08:21:06 -05: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
4588457319
refactor: consolidate files
2026-02-26 13:41:51 +01:00
edde746
e489a97847
fix: throttle demuxer-cache-time updates
2026-02-26 13:12:25 +01:00
edde746
2b5923d80b
feat: square art in hero sections
2026-02-26 13:00:55 +01:00
edde746
5cf5b2f0a0
fix: mpv destroy/create ANR
2026-02-26 12:56:02 +01:00
edde746
a56ef0e3ca
fix: throttle cache state parsing
2026-02-26 12:28:42 +01:00
edde746
8eda892b68
feat: themed splash screen with status messages
2026-02-26 11:55:45 +01:00
edde746
4b6c82b071
fix: hide alpha jump bar for small libraries
2026-02-26 11:55:45 +01:00
edde746
79350b8d71
feat: set avfoundation as preferred audio output on macOS
2026-02-26 11:55:45 +01:00
edde746
a5fa8a4c99
fix: don't clear buffer state on playback restart
2026-02-26 11:55:45 +01: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
414e5804eb
feat: add hide spoilers setting for unwatched episodes
2026-02-26 11:55:45 +01:00
github-actions[bot]
cbf9913e8a
chore: update cask to 1.21.3
2026-02-26 04:10:17 +00:00
github-actions[bot]
8f24bd478a
chore: bump version to 1.21.3
2026-02-26 03:32:43 +00:00
edde746
a32422bb5e
chore: remove unused formatRelativeTime
2026-02-26 04:30:48 +01:00
edde746
e25fb4c10f
fix: ExoPlayer resume position lost on tunneling change
2026-02-26 04:19:17 +01:00
edde746
5740d93a35
fix: download from homepage failing
2026-02-26 03:41:27 +01:00
edde746
98776b40f5
fix: show sync controls as compact top bar
...
close #548
2026-02-26 03:41:19 +01:00
edde746
3418241c04
fix: disable tunneling for FFmpeg-only audio codecs
2026-02-26 02:14:22 +01:00
edde746
659b59d450
fix: remove companion remote connection history
2026-02-26 01:08:46 +01:00
edde746
acf91107ad
fix: split combined recently added hubs by library
...
closes #552
2026-02-26 00:30:23 +01:00