Gauvain
61652ad322
fix(player): correct prev/next episode buttons at boundaries & for missing episodes
...
Previous/next were derived from the adjacentTo response's array length,
which wrongly surfaced the current episode as "previous" on the first
episode (e.g. S1E1) and offered "Virtual" (missing) episodes — like an
empty Specials entry — as navigation/autoplay targets.
Derive them from the current item's actual index in the list and skip
neighbours that are the current item or have LocationType 'Virtual'. This
also stops autoplay from advancing into a missing episode.
2026-06-02 00:26:23 +02:00
Fredrik Burmester
2166bb3867
feat(sync): auto-refresh on Jellyfin LibraryChanged events
...
Handle the server's LibraryChanged WebSocket message to invalidate
library-dependent React Query caches when items are added/updated/
removed, so newly added episodes/movies appear without a manual
refresh. Debounced to coalesce a scan's burst of events.
Add useRefreshLibraryOnFocus as a fallback that re-checks on screen
focus (throttled, online-only, skips first focus), wired into home
(mobile + TV) and the library pages.
2026-05-30 13:05:43 +02:00
Fredrik Burmester
a190122eea
Merge branch 'develop' into feat/tv-interface
...
# Conflicts:
# .gitignore
# app/(auth)/(tabs)/(home)/_layout.tsx
# components/PlatformDropdown.tsx
# components/search/DiscoverFilters.tsx
# components/video-player/controls/BottomControls.tsx
# components/video-player/controls/TrickplayBubble.tsx
# modules/mpv-player/ios/MPVLayerRenderer.swift
2026-05-30 11:08:22 +02:00
Fredrik Burmester
0e531da2e0
fix(watchlists): invalidate watchlists list query on add/remove
2026-05-30 10:03:55 +02:00
lostb1t
07b79de203
fix: Do not cache background request for mediasources ( #1602 )
2026-05-30 09:11:59 +02:00
Gauvain
0ba3f44615
chore: upgrade Biome to 2.4.16, clean up lint, and fix TV password modal ( #1598 )
2026-05-29 08:32:21 +02:00
lance chant
eb02ac253a
chore: expo 55 upgrade ( #1594 )
...
Signed-off-by: Lance Chant <13349722+lancechant@users.noreply.github.com >
Co-authored-by: Fredrik Burmester <fredrik.burmester@gmail.com >
2026-05-27 21:38:08 +02:00
Steve Byatt
4bef386b82
fix(tvOS): Patches for udp and screens menu button handling ( #1564 )
2026-05-20 15:30:40 +02:00
Steve Byatt
ca4f24ded0
fix: handle TV menu and back navigation ( #1559 )
2026-05-20 09:57:19 +02:00
Fredrik Burmester
c35e97f388
feat(tv): persist downloaded opensubtitles across app restarts
2026-02-01 19:19:32 +01:00
Fredrik Burmester
7d0b3be8c2
chore(tv): remove debug logs from back handler
2026-02-01 16:27:32 +01:00
Fredrik Burmester
85a74a9a6a
refactor: login page
2026-01-31 10:52:21 +01:00
Fredrik Burmester
6e85c8d54a
feat(tv): add user switching from settings
2026-01-31 09:53:54 +01:00
Fredrik Burmester
8ecb7c205b
feat(tv): add smart back button handler to prevent unwanted app exit
2026-01-29 21:53:45 +01:00
Fredrik Burmester
2c0a9b6cd9
feat(tv): migrate login to white design with navigation modals
2026-01-29 12:12:20 +01:00
Fredrik Burmester
4bea01c963
fix(tv): prevent theme music from playing twice on shared transitions
2026-01-29 07:31:34 +01:00
Fredrik Burmester
409629bb4a
feat(tv): add background theme music playback
2026-01-28 22:08:32 +01:00
Fredrik Burmester
2ff9625903
feat(tv): add long-press mark as watched action using alert dialog
2026-01-28 20:36:57 +01:00
Fredrik Burmester
7fe24369c0
feat(tv): add language-based audio and subtitle track selection
2026-01-26 19:32:06 +01:00
Fredrik Burmester
c215fda973
feat(tv): add 60s background refresh for idle screens
2026-01-24 10:48:42 +01:00
Fredrik Burmester
26e8489384
fix(tv): season modal using correct modal
2026-01-22 08:37:35 +01:00
Fredrik Burmester
be2fd53f31
fix(tv): resolve subtitle selector index mismatch using VideoContext tracks
2026-01-22 08:29:57 +01:00
Fredrik Burmester
506d8b14dc
fix(tv): wrap actor page in scrollview to fix focus navigation between sections
2026-01-20 22:15:00 +01:00
Fredrik Burmester
0353a718f3
feat(tv): seerr
2026-01-20 22:15:00 +01:00
Fredrik Burmester
f9a3a1f9f6
feat(tv): add live subtitle track refresh after opensubs download
2026-01-18 17:44:13 +01:00
Fredrik Burmester
d545ca3584
fix(tv): modals
2026-01-18 15:22:44 +01:00
Fredrik Burmester
ee3a288fa0
wip
2026-01-18 10:38:06 +01:00
Fredrik Burmester
56ffec3173
fix(player): add null guards for item in play settings
2026-01-16 21:26:56 +01:00
Fredrik Burmester
4ad103acb6
fix: conditionals for tv to build / run
2026-01-16 08:04:09 +01:00
Simon Eklundh
6957c4fd64
feat: add autorotate for landscape ( #1265 )
...
Signed-off-by: Lance Chant <13349722+lancechant@users.noreply.github.com >
Co-authored-by: Lance Chant <13349722+lancechant@users.noreply.github.com >
Co-authored-by: Fredrik Burmester <fredrik.burmester@gmail.com >
2026-01-11 22:27:19 +01:00
Alex
ad54823f96
refactor: downloads to minimize prop drilling and improve layout and design ( #1337 )
...
Co-authored-by: Alex Kim <alexkim@Alexs-MacBook-Pro.local >
Co-authored-by: Fredrik Burmester <fredrik.burmester@gmail.com >
Co-authored-by: Simon-Eklundh <simon.eklundh@proton.me >
2026-01-11 17:38:41 +01:00
Fredrik Burmester
467bea7192
feat(network): add local network auto-switch feature ( #1334 )
2026-01-11 13:08:14 +01:00
Fredrik Burmester
399eb0a351
fix(chromecast): add missing MediaInfo fields
🏗️ Build Apps / 🤖 Build Android APK (Phone) (push) Has been cancelled
🏗️ Build Apps / 🤖 Build Android APK (TV) (push) Has been cancelled
🏗️ Build Apps / 🍎 Build iOS IPA (Phone) (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (actions) (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (javascript-typescript) (push) Has been cancelled
🏷️🔀Merge Conflict Labeler / 🏷️ Labeling Merge Conflicts (push) Has been cancelled
🚦 Security & Quality Gate / 📝 Validate PR Title (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Vulnerable Dependencies (push) Has been cancelled
🚦 Security & Quality Gate / 🚑 Expo Doctor Check (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (check) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (format) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (lint) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (typecheck) (push) Has been cancelled
2026-01-10 21:32:09 +01:00
Fredrik Burmester
f1575ca48b
feat: MPV player for both Android and iOS with added HW decoding PiP (with subtitles) ( #1332 )
...
Co-authored-by: Alex Kim <alexkim@Alexs-MacBook-Pro.local >
Co-authored-by: Alex <111128610+Alexk2309@users.noreply.github.com >
Co-authored-by: Simon-Eklundh <simon.eklundh@proton.me >
2026-01-10 19:35:27 +01:00
Fredrik Burmester
e1dd410f73
feat: airplay and chromecast for music
2026-01-06 19:10:19 +01:00
Fredrik Burmester
3453fd22b8
fix: better music modal design and favorite song
2026-01-06 17:55:37 +01:00
Fredrik Burmester
090ed98233
fix: refresh data on open page in background replace cached data
2026-01-05 21:32:41 +01:00
Fredrik Burmester
054fb05651
feat: delete playlist
🏗️ Build Apps / 🤖 Build Android APK (Phone) (push) Has been cancelled
🏗️ Build Apps / 🤖 Build Android APK (TV) (push) Has been cancelled
🏗️ Build Apps / 🍎 Build iOS IPA (Phone) (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (actions) (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (javascript-typescript) (push) Has been cancelled
🏷️🔀Merge Conflict Labeler / 🏷️ Labeling Merge Conflicts (push) Has been cancelled
🚦 Security & Quality Gate / 📝 Validate PR Title (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Vulnerable Dependencies (push) Has been cancelled
🚦 Security & Quality Gate / 🚑 Expo Doctor Check (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (check) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (format) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (lint) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (typecheck) (push) Has been cancelled
🌐 Translation Sync / sync-translations (push) Has been cancelled
2026-01-04 23:01:03 +01:00
Fredrik Burmester
4121502bfe
fix: remove song from playlist
2026-01-04 13:44:53 +01:00
Fredrik Burmester
ab3465aec5
feat: cache and download music
2026-01-04 12:50:41 +01:00
Fredrik Burmester
b1da9f8777
feat: add actions to song rows
2026-01-04 00:09:21 +01:00
Fredrik Burmester
3ff7c47b7f
feat: playback speed options
2026-01-03 19:14:20 +01:00
Fredrik Burmester
74d86b5d12
feat: KSPlayer as an option for iOS + other improvements ( #1266 )
2026-01-03 13:05:50 +01:00
Cristea Florian Victor
d1795c9df8
fix(player): Fix skip credits seeking past video end causing pause ( #1277 )
🏗️ Build Apps / 🤖 Build Android APK (Phone) (push) Has been cancelled
🏗️ Build Apps / 🤖 Build Android APK (TV) (push) Has been cancelled
🏗️ Build Apps / 🍎 Build iOS IPA (Phone) (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (actions) (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (javascript-typescript) (push) Has been cancelled
🏷️🔀Merge Conflict Labeler / 🏷️ Labeling Merge Conflicts (push) Has been cancelled
🚦 Security & Quality Gate / 📝 Validate PR Title (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Vulnerable Dependencies (push) Has been cancelled
🚦 Security & Quality Gate / 🚑 Expo Doctor Check (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (check) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (format) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (lint) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (typecheck) (push) Has been cancelled
🕒 Handle Stale Issues / 🗑️ Cleanup Stale Issues (push) Has been cancelled
🌐 Translation Sync / sync-translations (push) Has been cancelled
2025-12-21 10:09:57 +01:00
Fredrik Burmester
97fe899cb0
feat: approve jellyserr requests ( #1214 )
2025-11-16 14:24:20 +01:00
lostb1t
56a3c62ed2
feat: move source and track selection to seperate sheet ( #1176 )
...
Co-authored-by: Fredrik Burmester <fredrik.burmester@gmail.com >
2025-11-16 13:31:20 +01:00
Fredrik Burmester
5f48bec0f2
feat: vlc apple integration - pause on other media play + controls ( #1211 )
2025-11-16 10:49:35 +01:00
Fredrik Burmester
64ffc8db8b
fix: lint issues
2025-11-16 08:50:01 +01:00
Fredrik Burmester
e1c69a9ec9
fix: boot apple tv (working playing video)
2025-11-15 18:10:16 +01:00
Fredrik Burmester
f7da29b9c9
fix: better api calls
🕒 Handle Stale Issues / 🗑️ Cleanup Stale Issues (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (actions) (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (javascript-typescript) (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (push) Has been cancelled
🏗️ Build Apps / 🤖 Build Android APK (Phone) (push) Has been cancelled
🏗️ Build Apps / 🤖 Build Android APK (TV) (push) Has been cancelled
🏗️ Build Apps / 🍎 Build iOS IPA (Phone) (push) Has been cancelled
🏷️🔀Merge Conflict Labeler / 🏷️ Labeling Merge Conflicts (push) Has been cancelled
🚦 Security & Quality Gate / 📝 Validate PR Title (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Vulnerable Dependencies (push) Has been cancelled
🚦 Security & Quality Gate / 🚑 Expo Doctor Check (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (check) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (format) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (lint) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (typecheck) (push) Has been cancelled
2025-11-12 21:30:20 +01:00