Uruk
7c81c0ff33
Fix: Improves Chromecast casting experience
...
Fixes several issues and improves the overall Chromecast casting experience:
- Implements an AbortController for fetching item data to prevent race conditions.
- Syncs live progress in the mini player more accurately using elapsed real time.
- Prevents event propagation in the mini player's play/pause button.
- Ensures the disconnect callback in the connection menu is always called.
- Retries scrolling in the episode list on failure.
- Handles unmute failures gracefully in volume controls.
- Clamps seek positions to prevent exceeding duration.
- Fixes reporting playback start multiple times
- Improves segment calculation in `useChromecastSegments`
- Prevents race condition with `isPlaying` state in `Controls` component
Also includes minor UI and timing adjustments for a smoother user experience.
2026-02-08 15:23:01 +01:00
Uruk
c243fbc0ba
Fix: Improve casting and segment skipping
...
Fixes several issues and improves the casting player experience.
- Adds the ability to disable segment skipping options based on plugin settings.
- Improves Chromecast integration by:
- Adding PlaySessionId for better tracking.
- Improves audio track selection
- Uses mediaInfo builder for loading media.
- Adds support for loading next/previous episodes
- Translation support
- Updates progress reporting to Jellyfin to be more accurate and reliable.
- Fixes an error message in the direct player.
2026-02-08 15:01:02 +01:00
Uruk
bc08df903f
feat: Enhances casting player with API data
...
Enriches the casting player screen by fetching item details from the Jellyfin API for a more reliable and complete user experience.
The casting player now prioritizes item data fetched directly from the API, providing richer metadata and ensuring accurate information display.
- Fetches full item data based on content ID.
- Uses fetched data as the primary source of item information, falling back to customData or minimal info if unavailable.
- Improves UI by showing connection quality and bitrate.
- Enhances episode list display and scrolling.
- Adds a stop casting button.
- Minor UI adjustments for better readability and aesthetics.
This change enhances the accuracy and reliability of displayed information, improving the overall user experience of the casting player.
2026-02-01 16:18:33 +01:00
Uruk
a65ac939cc
refactor: optimize segment handling with useMemo and improve skip function fallback
2026-02-01 16:18:23 +01:00
Uruk
0ce6266c02
feat: add skip credit button text localization to BottomControls and Controls
2026-02-01 16:18:22 +01:00
Uruk
25e20fe972
feat: add timeout management for playback to prevent race conditions
2026-02-01 16:18:20 +01:00
Uruk
441ede0641
feat: add i18n support for skip button text
...
- Add player.skip_* translation keys for all 5 segment types
- Enable proper localization of skip button text
- Addresses GitHub Copilot review comment
2026-02-01 16:17:09 +01:00
Uruk
27e1dce1ca
refactor: address GitHub Copilot review comments
...
- Remove unnecessary currentSegment from skipSegment dependency array
- Remove redundant wrappedSeek wrapper (ref guard prevents issues)
- Document 200ms setTimeout delay for seek operations
- Improve code clarity and reduce unnecessary re-renders
2026-02-01 16:17:09 +01:00
Uruk
1b66541e2f
feat: add comprehensive segment skip with all 5 types and settings submenu
...
- Add SegmentSkipMode type ('none', 'ask', 'auto') in settings.ts
- Create 5 segment skip settings: skipIntro, skipOutro, skipRecap, skipCommercial, skipPreview
- Update segments.ts to fetch all 5 segment types from Jellyfin MediaSegments API (10.11+)
- Create unified useSegmentSkipper hook supporting all segment types with 3 modes
- Update video player Controls.tsx with priority system (Commercial > Recap > Intro > Preview > Outro)
- Add dynamic skip button text in BottomControls.tsx
- Create dedicated settings submenu at settings/segment-skip/page.tsx
- Simplify PlaybackControlsSettings.tsx with navigation to submenu
- Extend DownloadedItem interface with all segment types for offline support
- Add 13+ translation keys for segment skip UI
2026-02-01 16:17:08 +01:00
Fredrik Burmester
b0bb6c6c9a
feat: add technical stream info overlay for MPV player
2026-01-12 21:55:32 +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
62b45121e5
feat(settings): add toggle to disable auto-play next episode ( #1342 )
2026-01-11 13:07:38 +01:00
Fredrik Burmester
ce793e3469
fix: ensure continue watching overlay appears above controls
2026-01-11 11:30:28 +01:00
Fredrik Burmester
beba4853b9
Revert "feat(settings): add toggle to disable auto-play next episode"
...
This reverts commit d1b15a9dde .
2026-01-11 10:19:35 +01:00
Fredrik Burmester
d1b15a9dde
feat(settings): add toggle to disable auto-play next episode
...
Add new setting to completely disable the auto-play next episode feature.
When disabled, the countdown button is hidden and the max episode count
setting appears greyed out.
2026-01-11 10:16:10 +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
d1387ec725
fix(downloads): preserve audio track selection for offline playback
2026-01-08 21:51:27 +01:00
Fredrik Burmester
99aa6bd342
fix(player): hide sub size when vlc
2026-01-07 22:20:11 +01:00
Fredrik Burmester
588c8ffeb5
fix(player): audio and subtitle dropdown not visible in player
2026-01-07 22:18:11 +01:00
Fredrik Burmester
039bf9729a
feat: hide volume or/and brightness in controls setting
2026-01-03 19:34:45 +01:00
Fredrik Burmester
3ff7c47b7f
feat: playback speed options
2026-01-03 19:14:20 +01:00
Fredrik Burmester
1d8d92175a
fix: correct control buttions top right for each player
🏗️ 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
🌐 Translation Sync / sync-translations (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
2026-01-03 18:22:38 +01:00
Emre Sanden
090e0cb170
feat: add button to toggle video orientation in player ( #743 )
...
Co-authored-by: Gauvain <68083474+Gauvino@users.noreply.github.com >
Co-authored-by: Fredrik Burmester <fredrik.burmester@gmail.com >
2026-01-03 17:52:45 +01:00
Fredrik Burmester
792eef20a9
fix(player): hide pip button when vlc player selected
2026-01-03 17:40:34 +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
7b146e30bd
fix: disable gestures from top and bottom of screen because of interference with notification shade pull down ( #1206 )
🏗️ 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
2025-11-16 10:49:54 +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
2be78a232c
fix: linting ( #1184 )
2025-11-14 19:34:59 +01:00
Fredrik Burmester
485dc6eeac
feat: Expo 54 (new arch) support + new in-house download module ( #1174 )
...
Signed-off-by: Lance Chant <13349722+lancechant@users.noreply.github.com >
Co-authored-by: sarendsen <coding-mosses0z@icloud.com >
Co-authored-by: Lance Chant <13349722+lancechant@users.noreply.github.com >
Co-authored-by: Gauvain <68083474+Gauvino@users.noreply.github.com >
2025-11-11 08:53:23 +01:00
lance chant
b847baa314
fix: fixed issue where subtitles didnt change ( #1168 )
...
Signed-off-by: Lance Chant <13349722+lancechant@users.noreply.github.com >
2025-11-07 15:13:17 +01:00
Gauvain
ead37aa806
fix: resolve type issues and improve component reliability ( #1078 )
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (phone) (push) Has been cancelled
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (tv) (push) Has been cancelled
🤖 iOS IPA Build (Phone + TV) / 🏗️ 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
2025-09-25 22:47:49 +02:00
stenlan
93a63f6b48
fix : #1007 Season episodes temporarily disappearing when marking one as watched ( #1031 )
...
Co-authored-by: Fredrik Burmester <fredrik.burmester@gmail.com >
2025-09-03 21:42:03 +02:00
stenlan
c778956a52
fix: Jellyseerr discovery crash ( #1032 )
2025-09-03 21:41:35 +02:00
Gauvain
df0b569f2d
fix(typescript): resolve 44 TypeScript errors in core components ( #1004 )
2025-08-31 16:56:53 +02:00
Gauvain
a68d8500a6
chore: update dependencies and refactor config plugin imports ( #993 )
2025-08-29 22:06:50 +02:00
Fredrik Burmester
7b7aced881
feat: slide actions for skip, volume and brightness ( #966 )
2025-08-21 18:02:47 +02:00
Fredrik Burmester
aac9270b62
feat: more sheets in controls ( #969 )
2025-08-21 17:54:28 +02:00
lostb1t
2d69bd5103
feat: replace content item dropdowns with sheets ( #968 )
2025-08-21 17:19:53 +02:00
Fredrik Burmester
55ce7d8cec
feat: fade and slide in controls ( #964 )
2025-08-20 21:59:09 +02:00
Fredrik Burmester
5bc6494ba6
fix: refactor controls into smaller parts ( #963 )
2025-08-20 21:43:00 +02:00
Fredrik Burmester
d795e82581
fix: trickplay and re-rendering issues
2025-08-20 09:59:03 +02:00
Fredrik Burmester
e7161bc9ab
fix: revert fade in controls
2025-08-20 08:21:01 +02:00
Fredrik Burmester
8e74363f32
Revert "chore: refactor controls ( #946 )"
...
This reverts commit 8389404975 .
2025-08-20 08:18:12 +02:00
Fredrik Burmester
8389404975
chore: refactor controls ( #946 )
...
Co-authored-by: Gauvain <68083474+Gauvino@users.noreply.github.com >
2025-08-19 09:02:56 +02:00
Fredrik Burmester
ebcdd5bbf7
feat: show when the stream ends, not only remaining time ( #944 )
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (phone) (push) Has been cancelled
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (tv) (push) Has been cancelled
🤖 iOS IPA Build (Phone + TV) / 🏗️ Build iOS IPA (phone) (push) Has been cancelled
🤖 iOS IPA Build (Phone + TV) / 🏗️ Build iOS IPA (tv) (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (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 / 🔍 Lint & Test (check) (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 (format) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (lint) (push) Has been cancelled
🕒 Handle Stale Issues / 🗑️ Cleanup Stale Issues (push) Has been cancelled
2025-08-18 14:57:02 +02:00
Fredrik Burmester
9410239c48
feat: scale factor and aspect ratio ( #942 )
2025-08-18 14:24:45 +02:00
Fredrik Burmester
a8810cae8a
Merge branch 'feat/fade-in-controls' into develop
2025-08-18 09:16:38 +02:00
Alex
1924efbef2
Fix more bugs ( #939 )
...
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (phone) (push) Has been cancelled
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (tv) (push) Has been cancelled
🤖 iOS IPA Build (Phone + TV) / 🏗️ Build iOS IPA (phone) (push) Has been cancelled
🤖 iOS IPA Build (Phone + TV) / 🏗️ Build iOS IPA (tv) (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (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
🕒 Handle Stale Issues / 🗑️ Cleanup Stale Issues (push) Has been cancelled
Co-authored-by: Alex Kim <alexkim@Alexs-MacBook-Pro.local >
2025-08-17 15:25:51 +10:00
Alex
3b53d76a18
Hotfix/offline playback remaining bugs ( #937 )
...
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (phone) (push) Has been cancelled
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (tv) (push) Has been cancelled
🤖 iOS IPA Build (Phone + TV) / 🏗️ Build iOS IPA (phone) (push) Has been cancelled
🤖 iOS IPA Build (Phone + TV) / 🏗️ Build iOS IPA (tv) (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (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 / 🚑 Expo Doctor Check (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 / 🔍 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
🕒 Handle Stale Issues / 🗑️ Cleanup Stale Issues (push) Has been cancelled
Co-authored-by: Alex Kim <alexkim@Alexs-MacBook-Pro.local >
2025-08-16 18:11:55 +10:00