fix(player): re-entering a video no longer opens the audio player (DR-100)
Leaving a video and returning to it rendered the movie/episode in AudioPlayer. Closing a webview-rendered video deliberately emits no "stopped" state (that would break the autoplay handoff), and the direct-play path does not stop the backend on unmount, so the Rust controller still reported that item as its loaded media. Re-entering the route therefore took the "already playing, just show the UI" shortcut, which returns before a stream URL is fetched, and the render fell through to the audio surface. Mostly visible on Android, where video direct-plays; Linux transcodes and stops the backend on unmount. Both decisions move into playerSurface.ts as pure functions: shouldReuseActivePlayback excludes video, so video always takes the full load path and gets its stream URL and resume position; resolvePlayerSurface maps video-without-a-stream-URL to "pending" (spinner) rather than falling through to audio.
This commit is contained in:
+296
-262
@@ -1,15 +1,15 @@
|
||||
# Code Traceability Matrix
|
||||
|
||||
**Generated:** 8/2/2026, 6:10:09 PM
|
||||
**Generated:** 8/3/2026, 6:07:57 PM
|
||||
|
||||
## Summary
|
||||
|
||||
- **Total Files Scanned:** 305
|
||||
- **Total TRACES Found:** 338
|
||||
- **Total Files Scanned:** 307
|
||||
- **Total TRACES Found:** 340
|
||||
- **Requirements Covered:**
|
||||
- User Requirements (UR): 58
|
||||
- Integration Requirements (IR): 15
|
||||
- Development Requirements (DR): 90
|
||||
- Development Requirements (DR): 91
|
||||
- Jellyfin API Requirements (JA): 24
|
||||
|
||||
## Requirements by Type
|
||||
@@ -26,7 +26,7 @@ IR-003, IR-004, IR-009, IR-010, IR-011, IR-012, IR-013, IR-014, IR-015, IR-020,
|
||||
|
||||
### Development Requirements (DR)
|
||||
```
|
||||
DR-001, DR-002, DR-003, DR-004, DR-005, DR-006, DR-007, DR-009, DR-010, DR-011, DR-012, DR-013, DR-014, DR-015, DR-016, DR-017, DR-018, DR-020, DR-021, DR-022, DR-023, DR-024, DR-025, DR-026, DR-027, DR-028, DR-029, DR-030, DR-032, DR-033, DR-034, DR-035, DR-036, DR-037, DR-038, DR-039, DR-040, DR-041, DR-043, DR-044, DR-045, DR-047, DR-048, DR-049, DR-050, DR-051, DR-052, DR-053, DR-054, DR-055, DR-056, DR-057, DR-058, DR-059, DR-060, DR-061, DR-062, DR-063, DR-064, DR-065, DR-066, DR-067, DR-068, DR-069, DR-070, DR-074, DR-075, DR-076, DR-077, DR-078, DR-079, DR-080, DR-081, DR-082, DR-083, DR-084, DR-085, DR-086, DR-087, DR-088, DR-089, DR-090, DR-091, DR-092, DR-093, DR-095, DR-096, DR-097, DR-098, DR-099
|
||||
DR-001, DR-002, DR-003, DR-004, DR-005, DR-006, DR-007, DR-009, DR-010, DR-011, DR-012, DR-013, DR-014, DR-015, DR-016, DR-017, DR-018, DR-020, DR-021, DR-022, DR-023, DR-024, DR-025, DR-026, DR-027, DR-028, DR-029, DR-030, DR-032, DR-033, DR-034, DR-035, DR-036, DR-037, DR-038, DR-039, DR-040, DR-041, DR-043, DR-044, DR-045, DR-047, DR-048, DR-049, DR-050, DR-051, DR-052, DR-053, DR-054, DR-055, DR-056, DR-057, DR-058, DR-059, DR-060, DR-061, DR-062, DR-063, DR-064, DR-065, DR-066, DR-067, DR-068, DR-069, DR-070, DR-074, DR-075, DR-076, DR-077, DR-078, DR-079, DR-080, DR-081, DR-082, DR-083, DR-084, DR-085, DR-086, DR-087, DR-088, DR-089, DR-090, DR-091, DR-092, DR-093, DR-095, DR-096, DR-097, DR-098, DR-099, DR-100
|
||||
```
|
||||
|
||||
### Jellyfin API Requirements (JA)
|
||||
@@ -2004,6 +2004,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 21
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### DR-100
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13)
|
||||
- **Line:** 13
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8)
|
||||
- **Line:** 8
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### JA-001
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
@@ -2468,7 +2479,7 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
|
||||
### UR-005
|
||||
|
||||
**Locations:** 66 file(s)
|
||||
**Locations:** 68 file(s)
|
||||
|
||||
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2258)
|
||||
- **Line:** 2258
|
||||
@@ -2503,6 +2514,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **File:** [`src/lib/components/player/VideoPlayer.touchScrub.test.ts`](src/lib/components/player/VideoPlayer.touchScrub.test.ts#L21)
|
||||
- **Line:** 21
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13)
|
||||
- **Line:** 13
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8)
|
||||
- **Line:** 8
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L16)
|
||||
- **Line:** 16
|
||||
- **Context:** `Unknown`
|
||||
@@ -2807,14 +2824,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 441
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-014
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/playlist.rs`](src-tauri/src/commands/playlist.rs#L4)
|
||||
- **Line:** 4
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-017
|
||||
|
||||
**Locations:** 9 file(s)
|
||||
@@ -2965,6 +2974,59 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-025
|
||||
|
||||
**Locations:** 16 file(s)
|
||||
|
||||
- **File:** [`src/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4)
|
||||
- **Line:** 4
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4)
|
||||
- **Line:** 4
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10)
|
||||
- **Line:** 10
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L21)
|
||||
- **Line:** 21
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L89)
|
||||
- **Line:** 89
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L122)
|
||||
- **Line:** 122
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L7)
|
||||
- **Line:** 7
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L64)
|
||||
- **Line:** 64
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/skipReporting.ts`](src/lib/services/skipReporting.ts#L14)
|
||||
- **Line:** 14
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/skipReporting.test.ts`](src/lib/services/skipReporting.test.ts#L9)
|
||||
- **Line:** 9
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156)
|
||||
- **Line:** 156
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2)
|
||||
- **Line:** 2
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L5)
|
||||
- **Line:** 5
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157)
|
||||
- **Line:** 157
|
||||
- **Context:** `pub fn file_size(&self) -> Option<u64> {`
|
||||
|
||||
### UR-026
|
||||
|
||||
**Locations:** 19 file(s)
|
||||
@@ -3617,6 +3679,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 37
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### IT-003
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8)
|
||||
- **Line:** 8
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### IT-004
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
@@ -3650,15 +3720,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 2396
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### IT-017
|
||||
### UT-003
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L441)
|
||||
- **Line:** 441
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535)
|
||||
- **Line:** 535
|
||||
- **Context:** `pub enum AddPosition {`
|
||||
|
||||
### UT-003
|
||||
### UT-004
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
@@ -3682,16 +3752,13 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 2
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-014
|
||||
### UT-012
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311)
|
||||
- **Line:** 311
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157)
|
||||
- **Line:** 157
|
||||
- **Context:** `pub fn file_size(&self) -> Option<u64> {`
|
||||
- **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L81)
|
||||
- **Line:** 81
|
||||
- **Context:** `pub fn cancel(&mut self) {`
|
||||
|
||||
### UT-015
|
||||
|
||||
@@ -3719,17 +3786,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311)
|
||||
- **Line:** 311
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157)
|
||||
- **Line:** 157
|
||||
- **Context:** `pub fn file_size(&self) -> Option<u64> {`
|
||||
|
||||
### UT-018
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311)
|
||||
- **Line:** 311
|
||||
- **Context:** `Unknown`
|
||||
@@ -3763,17 +3819,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311)
|
||||
- **Line:** 311
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157)
|
||||
- **Line:** 157
|
||||
- **Context:** `pub fn file_size(&self) -> Option<u64> {`
|
||||
|
||||
### UT-022
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311)
|
||||
- **Line:** 311
|
||||
- **Context:** `Unknown`
|
||||
@@ -3830,7 +3875,7 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 245
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-028
|
||||
### UT-029
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
@@ -3838,7 +3883,7 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 245
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-029
|
||||
### UT-030
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
@@ -3850,14 +3895,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245)
|
||||
- **Line:** 245
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-032
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245)
|
||||
- **Line:** 245
|
||||
- **Context:** `Unknown`
|
||||
@@ -3870,12 +3907,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 245
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-051
|
||||
### UT-044
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2900)
|
||||
- **Line:** 2900
|
||||
- **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136)
|
||||
- **Line:** 136
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-052
|
||||
@@ -3886,20 +3923,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 315
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-059
|
||||
|
||||
**Locations:** 3 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L435)
|
||||
- **Line:** 435
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2109)
|
||||
- **Line:** 2109
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2150)
|
||||
- **Line:** 2150
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-060
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
@@ -3968,14 +3991,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 7
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-067
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2396)
|
||||
- **Line:** 2396
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-071
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
@@ -4043,11 +4058,73 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
|
||||
### UT-092
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
**Locations:** 3 file(s)
|
||||
|
||||
- **File:** [`src/lib/components/player/VideoPlayer.tapSurface.test.ts`](src/lib/components/player/VideoPlayer.tapSurface.test.ts#L5)
|
||||
- **Line:** 5
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13)
|
||||
- **Line:** 13
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8)
|
||||
- **Line:** 8
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-014
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/playlist.rs`](src-tauri/src/commands/playlist.rs#L4)
|
||||
- **Line:** 4
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-020
|
||||
|
||||
**Locations:** 4 file(s)
|
||||
|
||||
- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1)
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15)
|
||||
- **Line:** 15
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19)
|
||||
- **Line:** 19
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1)
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-021
|
||||
|
||||
**Locations:** 5 file(s)
|
||||
|
||||
- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1)
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15)
|
||||
- **Line:** 15
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19)
|
||||
- **Line:** 19
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1)
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/storage/series_prefs.rs`](src-tauri/src/commands/storage/series_prefs.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-093
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13)
|
||||
- **Line:** 13
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8)
|
||||
- **Line:** 8
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-008
|
||||
|
||||
@@ -4211,43 +4288,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 2027
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-020
|
||||
|
||||
**Locations:** 4 file(s)
|
||||
|
||||
- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1)
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15)
|
||||
- **Line:** 15
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19)
|
||||
- **Line:** 19
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1)
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-021
|
||||
|
||||
**Locations:** 5 file(s)
|
||||
|
||||
- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1)
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15)
|
||||
- **Line:** 15
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19)
|
||||
- **Line:** 19
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1)
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/storage/series_prefs.rs`](src-tauri/src/commands/storage/series_prefs.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-024
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
@@ -4259,59 +4299,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-025
|
||||
|
||||
**Locations:** 16 file(s)
|
||||
|
||||
- **File:** [`src/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4)
|
||||
- **Line:** 4
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4)
|
||||
- **Line:** 4
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10)
|
||||
- **Line:** 10
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L21)
|
||||
- **Line:** 21
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L89)
|
||||
- **Line:** 89
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L122)
|
||||
- **Line:** 122
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L7)
|
||||
- **Line:** 7
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L64)
|
||||
- **Line:** 64
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/skipReporting.ts`](src/lib/services/skipReporting.ts#L14)
|
||||
- **Line:** 14
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/skipReporting.test.ts`](src/lib/services/skipReporting.test.ts#L9)
|
||||
- **Line:** 9
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156)
|
||||
- **Line:** 156
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2)
|
||||
- **Line:** 2
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L5)
|
||||
- **Line:** 5
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157)
|
||||
- **Line:** 157
|
||||
- **Context:** `pub fn file_size(&self) -> Option<u64> {`
|
||||
|
||||
### UR-030
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
@@ -4356,6 +4343,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 1
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-042
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/auth.rs`](src-tauri/src/commands/auth.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-043
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
@@ -4367,6 +4362,22 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-045
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/download/smart_cache.rs`](src-tauri/src/commands/download/smart_cache.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-047
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-051
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
@@ -4464,20 +4475,83 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 106
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-042
|
||||
### IT-017
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
|
||||
- **Line:** 2027
|
||||
- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L441)
|
||||
- **Line:** 441
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-043
|
||||
### UT-014
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311)
|
||||
- **Line:** 311
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157)
|
||||
- **Line:** 157
|
||||
- **Context:** `pub fn file_size(&self) -> Option<u64> {`
|
||||
|
||||
### UT-018
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311)
|
||||
- **Line:** 311
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157)
|
||||
- **Line:** 157
|
||||
- **Context:** `pub fn file_size(&self) -> Option<u64> {`
|
||||
|
||||
### UT-022
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311)
|
||||
- **Line:** 311
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157)
|
||||
- **Line:** 157
|
||||
- **Context:** `pub fn file_size(&self) -> Option<u64> {`
|
||||
|
||||
### UT-028
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
|
||||
- **Line:** 2027
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245)
|
||||
- **Line:** 245
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-032
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245)
|
||||
- **Line:** 245
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-051
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2900)
|
||||
- **Line:** 2900
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-059
|
||||
|
||||
**Locations:** 3 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L435)
|
||||
- **Line:** 435
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2109)
|
||||
- **Line:** 2109
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2150)
|
||||
- **Line:** 2150
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-066
|
||||
@@ -4488,6 +4562,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 4
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-067
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2396)
|
||||
- **Line:** 2396
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-072
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
@@ -4576,6 +4658,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 337
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-084
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L685)
|
||||
- **Line:** 685
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-091
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
@@ -4587,6 +4677,25 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 15
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-016
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L62)
|
||||
- **Line:** 62
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L251)
|
||||
- **Line:** 251
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-022
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-032
|
||||
|
||||
**Locations:** 7 file(s)
|
||||
@@ -4654,47 +4763,20 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 234
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### IT-003
|
||||
### UT-042
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8)
|
||||
- **Line:** 8
|
||||
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
|
||||
- **Line:** 2027
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-004
|
||||
### UT-043
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535)
|
||||
- **Line:** 535
|
||||
- **Context:** `pub enum AddPosition {`
|
||||
|
||||
### UT-012
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L81)
|
||||
- **Line:** 81
|
||||
- **Context:** `pub fn cancel(&mut self) {`
|
||||
|
||||
### UR-016
|
||||
|
||||
**Locations:** 2 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L62)
|
||||
- **Line:** 62
|
||||
- **Context:** `Unknown`
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L251)
|
||||
- **Line:** 251
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-030
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245)
|
||||
- **Line:** 245
|
||||
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
|
||||
- **Line:** 2027
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-083
|
||||
@@ -4705,22 +4787,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 673
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-084
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L685)
|
||||
- **Line:** 685
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-022
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-044
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
@@ -4729,14 +4795,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-045
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/download/smart_cache.rs`](src-tauri/src/commands/download/smart_cache.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-046
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
@@ -4745,28 +4803,4 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016,
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-047
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UT-044
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136)
|
||||
- **Line:** 136
|
||||
- **Context:** `Unknown`
|
||||
|
||||
### UR-042
|
||||
|
||||
**Locations:** 1 file(s)
|
||||
|
||||
- **File:** [`src-tauri/src/commands/auth.rs`](src-tauri/src/commands/auth.rs#L3)
|
||||
- **Line:** 3
|
||||
- **Context:** `Unknown`
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user