Commit graph

81 commits

Author SHA1 Message Date
Ciarán Ainsworth
58df446539 Fix all linting issues 2022-11-28 10:16:58 +00:00
Ciarán Ainsworth
ef757e1854 Update all components 2022-11-28 10:16:58 +00:00
wvffle
edfbf94313 Add eslint rules for i18n 2022-11-28 10:16:58 +00:00
wvffle
ebea32faf9 Replace gettext with i18n 2022-11-28 10:16:58 +00:00
wvffle
a6334a923f Fix scrolling queue on open 2022-11-26 11:05:49 +00:00
Kasper Seweryn
ea25f5e9aa Add storage namespace 2022-11-06 10:04:33 +00:00
wvffle
839a80b3ac Fix #1945 and #1943 2022-11-06 09:58:15 +00:00
wvffle
b7355c9c95 Fix adding same track multiple times 2022-11-05 12:48:30 +00:00
wvffle
ec31004952 Fix typo 2022-11-04 13:20:22 +00:00
wvffle
315e5ef766 Responsivity and accessibility fixes 2022-11-04 13:20:22 +00:00
wvffle
ed9cb97ba6 Add option for fullscreen covers 2022-11-04 13:20:22 +00:00
wvffle
aa7ded73f8 Add toggle switches for cover/visualizer 2022-11-04 13:20:22 +00:00
wvffle
8306eaaff6 Add buttons to the cover art 2022-11-04 13:20:22 +00:00
wvffle
5eff89920a Add MilkDrop 2022-11-04 13:20:22 +00:00
Kasper Seweryn
8367e09e6c Fix favorite button in queue 2022-10-31 19:56:38 +00:00
wvffle
34d4f3b25b
Fix transcoded track and add info if there are no track sources 2022-10-30 19:20:34 +01:00
wvffle
0118fe0c63
Resolve TODOs 2022-10-30 19:17:56 +01:00
wvffle
9f36c4b3a8
Cleanup old queue and player logic 2022-10-30 19:17:55 +01:00
wvffle
f06464ffa2
Fix calling createTrack multiple times when radio track changes 2022-10-30 19:17:55 +01:00
wvffle
c828e106b0
Add radio support 2022-10-30 19:17:55 +01:00
wvffle
ccb905b004
Migrate queue component 2022-10-30 19:17:54 +01:00
wvffle
bef0d1dec4
WIP Rewrite queue 2022-10-30 19:17:54 +01:00
wvffle
711aa783b3 Fix setting progress through progressbar 2022-09-06 09:26:36 +00:00
wvffle
1d4a3468ee Revert "Rewrite player logic"
This reverts commit ec630a234ab5ea0dccddaf06c462536bbf1ed329.
2022-09-06 09:26:36 +00:00
wvffle
06310593ac WIP: Experiment with MediaElementAudioSourceNode 2022-09-06 09:26:36 +00:00
wvffle
97e7049333 Rewrite player logic
This commit will bring:
- Gapless play! (Fix #739)
- Chunked queue shuffling - we play first track after first 50 queue items are shuffled, then we shuffle chunks of 50 queue items with each new animation frame.
- We can now restore original queue order after shuffling! (Part of #1506)
- Preloading whole tracks into LRU cache (Should fix #1812)
- Preloading multiple tracks at once
2022-09-06 09:26:36 +00:00
wvffle
bf67676010 Fix scrollToIndex 2022-09-06 09:26:36 +00:00
wvffle
fa68ff76d8 Fix scrollToIndex 2022-09-06 09:26:36 +00:00
wvffle
d1b8190dca Performance fixes 2022-09-06 09:26:36 +00:00
wvffle
2117b0e209 Fix scrollToIndex 2022-09-06 09:26:36 +00:00
wvffle
f470e0649e Better fav button in queue item 2022-09-06 09:26:36 +00:00
wvffle
1df46d9691 Fix toast container making ui unclickable 2022-09-06 09:26:36 +00:00
wvffle
476f0ee06d Fix duration in radios 2022-09-06 09:26:36 +00:00
wvffle
c87bf7e6b8 Queue component enhancements
This commit provides following queue component enhancements:
- Use a virtual list to render queue items. We now render ~25-30 items at once compared to `queue.length` items. (Fix #1471)
- Faster queue opening and a smoother open animation. (Fix #1471)
- Faster song enqueueing: When enqueueing a playlist or an album, we modify the state only once compared to `tracks.length` modifications before.
- When opening the queue, current track is now already pre-scrolled and centered. This resolves an issue with big queues, where the track list was slowly scrolling to a random position.
- Dragging a track onto the edge of the track list will now scroll the container. You reorder a track from the very top to the very bottom even when you have 3000 tracks in the queue!
- Ability to use scroll wheel while reordering track items
- Track reordering on mobile devices! Currently dragging to edge is disabled
- Responsivity fixes
- Allow click outside modal (Fix #1581)
2022-09-06 09:26:36 +00:00
wvffle
53d9015e17 Fix #1796, Potentially fix #1471 2022-09-06 09:26:36 +00:00
wvffle
232f0ff465 Resume playback when changing song from queue 2022-09-06 09:26:36 +00:00
wvffle
db167ad80b Fix rounded corners in progress bars 2022-09-06 09:26:36 +00:00
wvffle
c0719c21f1 Fix #1298 2022-09-06 09:26:36 +00:00
wvffle
34610670c6 Fix #1381 2022-09-06 09:26:36 +00:00
wvffle
bbdb3dcb9d Fix auto-fixable linter issues 2022-09-06 09:26:36 +00:00
wvffle
74e88c26e8 Remove todo 2022-09-06 09:26:36 +00:00
wvffle
57692dcf6a Fix queue and player bugs 2022-09-06 09:26:36 +00:00
wvffle
54a33cd14e Fix audio playback 2022-09-06 09:26:36 +00:00
wvffle
8c11b6d0ea Rewrite queue 2022-09-06 09:26:36 +00:00
Kasper Seweryn
0b53ec5b1c Add store types and fix other type errors 2022-09-06 09:26:36 +00:00
Kasper Seweryn
d6a46f5aab Remove required=false and disabled=false attributes 2022-09-06 09:26:36 +00:00
Kasper Seweryn
cbaa58d215 Add useFocusTrap 2022-09-06 09:26:36 +00:00
Kasper Seweryn
7e53e9a511 Update vuedraggable 2022-09-06 09:26:36 +00:00
Kasper Seweryn
f61fafec2a Remove '@/' 2022-09-06 09:26:36 +00:00
Kasper Seweryn
2b40707f4f Cleanup a lot of stuff
I've replaced `lodash` with `lodash-es`, so it can be tree-shaken

`~/modules` is a directory with application modules that run before app is mounted. Useful for configuration, web socket connection, and other stuff

`~/composables` is a directory with our custom composables. Much like `~/utils` but each util is in its own file
2022-09-06 09:26:36 +00:00