Commit graph

68 commits

Author SHA1 Message Date
jeffvli
fdfbad68e2 Fix app single instance lock (#385) 2023-11-16 23:29:19 -08:00
jeffvli
244c00c4c6 Add discord rich presence (#72) 2023-10-23 06:58:39 -07:00
Kendall Garner
74cab01013
[feature]: Support using system fonts (#304)
* [feature]: Support using system fonts

Uses the **experimental** queryLocalFonts API, when prompted, to get the fonts and do CSS.
Resolves #270 and #288 (by proxy)

Caveats/notes:
- This is experimental, and is only supported by Chrome/Chromium/Edgeium (see https://caniuse.com/?search=querylocalfonts)
- As far as I can tell, the only way to dynamically change the font (shown in https://wicg.github.io/local-font-access/#example-style-with-local-fonts) was by DOM manipulation; css variables did not seem to work
- This shows **all** fonts, including their variants (bold/italic/etc); given that the style names could be localized, not sure of a way to parse this (on my system, for instance, I had 859 different combinations)
- I made fonts a separate top-level setting because it was easier to manipulate without causing as many rerenders; feel free to put that back

* add permission chec

* add electron magic to support custom font

* restrict content types
2023-10-22 15:25:17 -07:00
Kendall Garner
9964f95d5d
[Remote] Full PWA support, misc bugfixes (#280)
- Fix setting remote port properly
- Add web worker support (so it can be installed as an "app")
- build fixes/removing stray console.log
2023-10-18 10:49:09 -07:00
jeffvli
ca39409cc3 Respect order of set-queue function (fix race condition) 2023-10-07 16:46:23 -07:00
jeffvli
5e1059870c Fix second song on startup not playing 2023-10-05 21:54:11 -07:00
jeffvli
c464be8cea Fix quit functionality (#184) 2023-09-27 02:37:03 -07:00
Kendall Garner
9e3e038d42
[Remote] Actually fix auth (#260)
* fix favicon, basic auth

* actual fix......
2023-09-24 17:31:33 -07:00
Kendall Garner
02b06a07be
fix favicon, basic auth (#259) 2023-09-24 17:02:25 -07:00
Kendall Garner
d7f21b3c6b
special socket for dev; defer to default otherwise (#258)
* special socket for dev; defer to default otherwise

* Add write-all permissions to docker push

* special socket for dev; defer to default otherwise

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2023-09-24 16:56:45 -07:00
jeffvli
fd264daffc Add new app icon (#232) 2023-09-21 11:24:20 -07:00
Benjamin
d9049ed066
Prevent MPV from loading user config/scripts (#247) 2023-09-20 16:27:36 -07:00
Kendall Garner
6e62448b88
fix other places of duration display (and other minor fixes) (#249)
* fix other places of duration display

* add back comma

* add max-width for image
2023-09-20 16:07:40 -07:00
jeffvli
ec457d5125 Lint files based on updated rules 2023-09-15 20:42:38 -07:00
jeffvli
d75ea94161 Fix first launch mpv playback (#210) 2023-09-15 03:08:17 -07:00
Kendall Garner
1acfa93f1a
Improve MPV initialization and restore (#222)
- set mpv settings only after it has successfully started (at least on linux, settings were not taken)
- change timing of restore queue to behave properly
2023-08-24 18:28:50 -07:00
jeffvli
8686a7c592 Various lyrics improvements
- Update wording on provider fetcher
- Invalidate query on reset instead of resetQuery
2023-08-07 21:59:55 -07:00
Kendall Garner
c9dbf9b5be
Add remote control (#164)
* draft add remotes

* add favorite, rating

* add basic auth
2023-07-23 05:23:18 -07:00
jeffvli
30e52ebb54 Lint all files 2023-07-01 19:14:12 -07:00
Gelaechter
22160ba59f
Show first instance when starting a second one (#149) 2023-07-01 12:45:08 -07:00
Kendall Garner
2fac9efc1b
initial implementation for password saving (#132)
* initial implementation for password saving

* support restoring password in interceptor

* Fix modal overflow and position styles

* warn about 429, better error handling

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
Co-authored-by: Jeff <42182408+jeffvli@users.noreply.github.com>
2023-06-13 10:52:51 -07:00
Kendall Garner
d6e628099c
Add LrcLib Fetcher (#136)
* lrclib, do not show search/clear buttons if no fetchers configured
2023-06-11 12:45:50 -07:00
Gelaechter
d7ca25525c
Add zooming functionality (#140) 2023-06-11 12:45:13 -07:00
jeffvli
493e13ebc0 Fix id return type on netease fetcher 2023-06-09 17:24:34 -07:00
jeffvli
cbc08d6f03 Improve lyrics match with scored searches 2023-06-09 17:24:34 -07:00
jeffvli
255a131f3b Require only single query for search 2023-06-09 17:24:34 -07:00
jeffvli
f8ecb3fc53 Update fetchers to support search 2023-06-09 17:24:34 -07:00
jeffvli
0fa5b6496f Add lyric search functions and query 2023-06-09 17:24:34 -07:00
jeffvli
98fa47348c Replace main lyrics listener with promise handler 2023-06-09 17:24:34 -07:00
jeffvli
d38c846e80 Update lyric fetcher return types 2023-06-09 17:24:34 -07:00
Kendall Garner
007a099951 Lyrics Improvements
- Make the settings text actually consistent with behavior
- Add metadata (artist/track name) for fetched tracks
- Add ability to remove incorrectly fetched lyric
- Add lyric fetch cache; save the last 10 fetches
- Add ability to change offset in full screen, add more comments
2023-06-09 17:24:34 -07:00
jeffvli
c3c1f4cc5f Refactor mpv initialization/cleanup
- Don't re-initialize the player on re-render
- Fixes the player potentially crashing on hot reload
2023-06-06 10:48:47 -07:00
jeffvli
7430bba853 Update minimum app dimensions 2023-06-04 16:46:05 -07:00
Kendall Garner
3aef2a80a7 rename listener function 2023-06-04 16:46:05 -07:00
Kendall Garner
85a10c799a address comments 2023-06-04 16:46:05 -07:00
Kendall Garner
85d2576bdc Improved lyric syncing, fetch
- uses a somewhat more sane way to parse lyrics and teardown timeouts
- adds 'seeked' to setCurrentTime to make detecting seeks in lyric much easier
- adds ability to fetch lyrics from genius/netease (desktop only)
2023-06-04 16:46:05 -07:00
jeffvli
6d092d9ebc Add native frame styles per OS 2023-05-27 14:02:10 -07:00
Gelaechter
a878875f83 Add native titlebar & fix app restart for AppImages 2023-05-27 14:02:10 -07:00
Kendall Garner
97ccf3bc6d add media session/mpris 2023-05-26 18:20:27 -07:00
jeffvli
4f21c26e5d Fix double play trigger (maybe) 2023-05-21 19:44:32 -07:00
jeffvli
e6a4ce2e64 Set global media hotkeys enabled by default 2023-05-21 19:43:42 -07:00
jeffvli
fed96d1fce Additional player adjustments
- Set volume on play
- Explicitly pause/play on set queue
2023-05-21 03:08:25 -07:00
Kendall Garner
106fc90c4a
Add ability to save/restore queue (#111)
* add ability to save/restore play queue

* Add restoreQueue action

* Add optional pause param on setQueue

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2023-05-21 02:29:58 -07:00
jeffvli
c8b1b4d394 Update electron web preferences 2023-05-20 20:21:14 -07:00
jeffvli
0320fe6dcc Add mpv load error notification
- Add retry limit on error
2023-05-20 20:19:41 -07:00
jeffvli
6a01d44600 Clean up mpv startup 2023-05-20 19:56:17 -07:00
jeffvli
7dd56bfb9b Add --idle to default mpv parameters (#76) 2023-05-20 14:40:55 -07:00
jeffvli
d7f24262fd Add hotkeys manager
- Add configuration to settings store
- Initialize global hotkeys on startup from renderer
2023-05-13 22:55:58 -07:00
jeffvli
6056504f00 Add ipcRenderer send function to preload 2023-05-13 22:55:58 -07:00
jeffvli
c87905f6c2 Set auto_restart prop to true on mpv instance 2023-05-09 18:55:54 -07:00