Commit Graph

434 Commits

Author SHA1 Message Date
wvffle e7da8b5f43 Resolve some TODOs 2022-09-06 09:26:36 +00:00
wvffle ee975e5854 Add error handler in all unhandled places 2022-09-06 09:26:36 +00:00
wvffle c1494c8894 Migrate some components 2022-09-06 09:26:36 +00:00
wvffle 7eca32e006 Couple fixes 2022-09-06 09:26:36 +00:00
wvffle 45740d510e Migrate signup 2022-09-06 09:26:36 +00:00
wvffle 5ea5ad3c2a Use navigation guards and migrate a couple of components 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 f06c040b50 Add markdown enhancements
This commit will bring:
- Linking to other users with `@username`
- Linking to tags with `#tag`
- Opening external links in new tab (Fix #1647)
- Single line breaks to avoid confusion for non-technical users (Fix #1377)
- 😒 support...
- Email encoding in markdown
- Markdown editor now auto-resizes to accomodate content (Fix #1379)

NOTE: This only works in very few places. We need to wait for #1835 to have those features available widely
2022-09-06 09:26:36 +00:00
wvffle 8aa073b976 Add player seek progress bar 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 a7f4df68ea Fix dropdowns 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 8ef28e3aa3 Fix unhandled error 2022-09-06 09:26:36 +00:00
wvffle 3dff9c74d9 Fix front settings fetching 2022-09-06 09:26:36 +00:00
wvffle 998bd02a05 Fix #1215 2022-09-06 09:26:36 +00:00
wvffle 34610670c6 Fix #1381 2022-09-06 09:26:36 +00:00
wvffle b8f5f5d6ef Fix #1297 2022-09-06 09:26:36 +00:00
wvffle bbdb3dcb9d Fix auto-fixable linter issues 2022-09-06 09:26:36 +00:00
wvffle 73b1dc8f30 MIgrate some components 2022-09-06 09:26:36 +00:00
wvffle 405eed0c0f Add semantic ui types 2022-09-06 09:26:36 +00:00
wvffle e03e2ec901 Migrate home component
Adds some code that is a starter to #1316 and #1534 but depends on #1827
2022-09-06 09:26:36 +00:00
wvffle a37835a9c2 Allow displaying multiple same tracks in track list
Well, there was some error with `@mouseleave` not firing in some cases for some weird reason, so I decided to handle the `hover` prop in the container
2022-09-06 09:26:36 +00:00
wvffle a545333ff7 Fix crashing on track number 2022-09-06 09:26:36 +00:00
wvffle c5f7022869 Migrate a bunch of components 2022-09-06 09:26:36 +00:00
wvffle de4f445e9b Fix up some tsc errors 2022-09-06 09:26:36 +00:00
wvffle 0251789f82 Fix a bunch of typescript errors 2022-09-06 09:26:36 +00:00
wvffle 11e7be988a Migrate EmbedWizard 2022-09-06 09:26:36 +00:00
wvffle 77594351ae Remove PlayOptions and Report mixins 2022-09-06 09:26:36 +00:00
wvffle 57692dcf6a Fix queue and player bugs 2022-09-06 09:26:36 +00:00
wvffle a43059899c Move track playing logic to usePlayer and useSound 2022-09-06 09:26:36 +00:00
wvffle 54a33cd14e Fix audio playback 2022-09-06 09:26:36 +00:00
wvffle cec34d49fa Rewrite player component to script setup 2022-09-06 09:26:36 +00:00
wvffle 8c11b6d0ea Rewrite queue 2022-09-06 09:26:36 +00:00
wvffle 442f9ce0d7 Fix v-if keys 2022-09-06 09:26:36 +00:00
Kasper Seweryn 3266cd80bd Migrate Albums and move pagination component 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 9e0596d136 Move *.js to *.ts 2022-09-06 09:26:36 +00:00
Kasper Seweryn 561c1d868c Migrate rest of inputs to new v-model 2022-09-06 09:26:36 +00:00
Kasper Seweryn bf009440ff Migrate attachment input to new v-model
It also automatically cleans up attachments that users uploaded and decided not to use
2022-09-06 09:26:36 +00:00
Kasper Seweryn 16d437be62 Migrate Translations mixin to useSharedLabels composable 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 57aef1001e Remove deprecated slot syntax 2022-09-06 09:26:36 +00:00
Kasper Seweryn 1122324799 Fix linting 2022-09-06 09:26:36 +00:00
Kasper Seweryn d01901d8bd Fix some modals 2022-09-06 09:26:36 +00:00
Kasper Seweryn 3915716dd6 Fix modals 2022-09-06 09:26:36 +00:00
Kasper Seweryn 7e53e9a511 Update vuedraggable 2022-09-06 09:26:36 +00:00
Kasper Seweryn b7d66232f6 Remove vue 2 filters
Fixes #1759
2022-09-06 09:26:36 +00:00
Kasper Seweryn 12b09b085a Refactor ~/logging.ts to a useLogger composable 2022-09-06 09:26:36 +00:00
Kasper Seweryn 51435d0742 Fix currentRoute 2022-09-06 09:26:36 +00:00
Kasper Seweryn 0e6097c7b8 Fix emit warning 2022-09-06 09:26:36 +00:00
Kasper Seweryn 324e028a33 Fix deprecated render function and deprecated $listeners 2022-09-06 09:26:36 +00:00
Kasper Seweryn b3022c26b6 Add onKeyboardShortcut composable
Fixes #1726
2022-09-06 09:26:36 +00:00
Kasper Seweryn 071eb2fa35 Move ~/modules to ~/init 2022-09-06 09:26:36 +00:00
Kasper Seweryn 0b51fb037f Remove JWT leftovers 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
Georg Krause 5c5b35a0ad
Merge branch 'stable' into develop 2022-07-04 17:18:55 +02:00
Marcos Peña 07e51bcfc4 "Repeatedly listening to a track submits a scrobble only the first time" 2022-07-01 16:39:44 +00:00
Kasper Seweryn 6b596e0cff Fix a typo (XOR -> OR) 2022-06-30 14:26:22 +00:00
Marcos Peña 8417092d89 Fix foreign tracks displayed in channel overview 2022-05-10 19:55:58 +02:00
Georg Krause 73128eef25
Merge branch 'stable' into develop 2022-05-07 13:54:59 +02:00
MattDHarding 1b8e19e129 Fix stopped player to not show 00:00 when loading a track 2022-05-03 18:26:24 +00:00
Marcos Peña 92ac77ee73 Fix foreign tracks displayed in channel overview 2022-04-28 13:41:04 +02:00
Marcos ffd1ae0c44
Fixes broken channel page 2022-04-25 11:09:38 +02:00
Georg Krause af5e2d31ea
Merge branch 'stable' into develop 2022-04-23 14:04:53 +02:00
MattDHarding 6d706c17a8 Hand cursor now displayed over artist and album cards 2022-04-23 09:54:01 +01:00
Marcos 9528437242 Fixes broken channel page 2022-04-02 11:39:15 +00:00
Kasper Seweryn 5f319db268
Remove console.log 2022-02-21 23:48:55 +01:00
Kasper Seweryn 94af589757
Fix jQuery and semantic ui 2022-02-21 23:38:51 +01:00
Kasper Seweryn 4ce7386128
Fix env variables 2022-02-21 23:23:13 +01:00
Kasper Seweryn 80ed06db04
Remove @/lodash.js
Vite handles tree shaking out of the box, so cherry picking modules is
now pointless
2022-02-21 22:49:02 +01:00
Ciaran Ainsworth d949909c40 Fix additional linting issues 2022-02-21 20:02:08 +01:00
Ciaran Ainsworth 60c6a1938f Fix some linting issues 2022-02-21 19:52:16 +01:00
Ciaran Ainsworth 08d6772392 Fix broken imports 2022-02-21 17:27:00 +01:00
Georg Krause e9c4bfe947
Start migration to vite 2022-02-21 15:07:07 +01:00
Ciaran Ainsworth 7b74e55e7f Use proper method for fetching artist cover 2022-02-16 10:29:39 +00:00
Ciaran Ainsworth c1694a808c Fix linting issues 2022-02-16 10:29:39 +00:00
Ciaran Ainsworth 41d444bbbb Add support for all cover sources in embedded player 2022-02-16 10:29:39 +00:00
Georg Krause 1ed1a691df
Remove dangling commit to make linter happy 2022-01-28 11:51:20 +01:00
Ciarán Ainsworth 62154bcd44 Resolve "No tracks appear on library tracks page" 2022-01-24 16:28:46 +00:00
Georg Krause 20c4e7ac31 Don't show go to track page link on track page 2021-12-11 19:55:54 +00:00
Georg Krause cefa3ec9d2 Fix post lint issues 2021-12-08 18:48:06 +00:00
Marcos Peña 9f30e4ec10 Resolve "Album list in artist view under track table" 2021-12-08 18:29:17 +00:00
Georg Krause 6f58a49c91
Fix wrong prop types 2021-12-06 11:50:04 +01:00
Georg Krause 8ee9a536e1
Lint the frontend code 2021-12-06 11:35:20 +01:00
Ciarán Ainsworth 58df0d4529 Profile menu redesign 2021-11-26 11:01:58 +00:00
Marcos Peña a0560f020f Reverts player changes introduced in MR!1291 breaking background playback (#1509)
MR !1397
2021-11-09 18:03:49 +00:00
Ciarán Ainsworth 44394275ec Update track table 2021-10-21 17:26:18 +00:00
Georg Krause 0abf71095c
Revert progress bar changes, see #1381 2021-10-21 10:24:14 +02:00
Georg Krause 5a74d1d3a0 Fix linting errors in touched files 2021-09-27 04:56:45 +00:00
Georg Krause 9bef230499 Update track progress bars with css transitions 2021-09-27 04:56:45 +00:00
Tony Wasserka 6114853445 Enable stepless adjustment of the volume control slider 2021-09-10 19:03:32 +00:00
JuniorJPDJ 61d7c8bf14 Lower delay for loading sound 2021-08-04 11:44:46 +00:00
JuniorJPDJ 13c3b22b02 Set global howler volume, use log volume scale internally
fixes:
- next track volume
- saves precise volume slider position
- keyboard shortcut now sets volume in correct scale
2021-08-04 11:44:46 +00:00
JuniorJPDJ f1f6a77d14 Don't allow track playing start if it's not current track
partially fixes #1213
2021-08-04 11:44:46 +00:00
jovuit f661e3a078 Reviewed comments on source strings on Weblate and modified source strings accordingly if needed
Replaced "email" with "e-mail address" when needed
2021-06-17 15:55:12 +00:00
Ciarán Ainsworth 071ff89a4f Fix recently listened widget and simple artist serializer 2021-05-19 12:59:14 +00:00
heyarne f1f9f935cf
Make playing tracks in their playlist the default 2021-04-28 08:47:12 +02:00