Commit graph

646 commits

Author SHA1 Message Date
jeffvli
f1f6ccfd02 Normalize server feature set 2024-03-03 22:15:49 -08:00
Kendall Garner
f50d1e0a8c
support opacity 0, spellcheck 2024-03-01 19:54:30 -08:00
Kendall Garner
753ca01d41
[bugfix]: fix update rating for items with no data node 2024-02-29 17:28:46 -08:00
jeffvli
960c126283 Fix incorrect album artist sidebar icon 2024-02-28 21:07:50 -08:00
Kendall Garner
94b649fefe
don't transform artist/album for fullscreen player 2024-02-26 22:47:17 -08:00
Alberto Rodríguez
28bb699024
Add a pre-defined server for the docker version (#413)
* Moved build to docker stage.

* Do not copy node_modules to the docker image

* Optimize Docker builds

* Lock a predefined server with enviroment variables

* Added a example docker compose file

* Removed useless layer

* Fix error with empty server type

* pass process via preload, use file, strict server check

* remove duplicate content-type

* update readme, docker compose

* bugfix: server lock false, not jellyfin

* fix preload type definition

* fix docker, web server lock check

---------

Co-authored-by: Kendall Garner <17521368+kgarner7@users.noreply.github.com>
2024-02-24 06:55:23 +00:00
Kendall Garner
5caf0d439f
[enhancement]: Start minimized (#522)
* [enhancement]: support starting minimized

* show window when dock clicked macos
2024-02-23 16:31:17 +00:00
Kendall Garner
12d0eca2dd
remember that current song can be an object 2024-02-19 10:27:00 -08:00
Kendall Garner
3a116e938e
omit song from similar list, handle subsonic error 2024-02-19 10:09:05 -08:00
Kendall Garner
f81bea339b
don't pass song all the way down 2024-02-19 09:55:37 -08:00
Kendall Garner
c947d09615
show nothing if no song exists 2024-02-19 09:01:44 -08:00
Kendall Garner
af90d07414
bugfix 2024-02-19 08:56:06 -08:00
Kendall Garner
025124c379
[enhancement]: Make related tab on full screen player useful
Resolves #50. Adds a new set of components for fetching similar songs
from the current playing song. For Jellyfin, use the `/items/{itemId}/similar`
endpoint (may not work well for small libraries), and for Navidrome/Subsonic
use `getSimilarSongs`. _In theory_, this component can be used to get similar
songs anywhere.
2024-02-19 08:53:50 -08:00
Kendall Garner
dae2f9bd0a
[feat]: actually include version checks 2024-02-17 00:57:10 -08:00
jeffvli
9a43ea0e4a Attempt to fix player unresponsive on first start 2024-02-16 22:12:28 -08:00
Kendall Garner
2f105956b9
Improve grid size, language 2024-02-16 21:42:15 -08:00
Kendall Garner
1e5d446ced
[bugfix]: song list play count -> genre 2024-02-16 13:53:42 -08:00
darkpixlz
6e677d7454
Image Resolution Setting (#492)
* Add customizable resolution for the fullscreen player image

---------

Co-authored-by: iiPython <ben@iipython.dev>
Co-authored-by: Benjamin <iipython@proton.me>
2024-02-13 18:00:59 -08:00
Kendall Garner
f796a35f5c
[enhancement]: support reordering homepage (#494)
* [enhancement]: support reordering homepage

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2024-02-13 17:56:08 -08:00
Jeff
83d5fee442
Merge pull request #484 from kgarner7/fix-structured-lyrics
[bugfix/enhancement]: Support Navidrome structured lyrics
2024-02-13 16:17:24 -08:00
Jeff
eab11658bb
Merge pull request #501 from kgarner7/allow-no-mpv
- OOBE default to web player
- Allow mpv to run using PATH env
- Add improved mpv error logging
- Add web player fallback on mpv error
2024-02-13 16:16:01 -08:00
jeffvli
9b0c9ba3ac Fallback to web player if mpv fails to run 2024-02-13 02:05:59 -08:00
Kendall Garner
e6b01d4e2b
[bugfix]: set MPV queue when now or queue is empty 2024-02-13 00:04:28 -08:00
jeffvli
fb08502e51 Add mpv path reload and clear functionality 2024-02-12 21:21:17 -08:00
jeffvli
ff4ce89bc9 Remove "disable mpv" setting and desktop requirement 2024-02-12 14:14:08 -08:00
Kendall Garner
f82da2e76b
[enhancement]: Support disabling MPV entirely
Supports running Feishin solely using web audio (useful for clients with problems with MPV).
Also moves save/restore queue to utils, as MPV object is now optional
2024-02-11 13:56:29 -08:00
Kendall Garner
ae8fc6df13
[bugfix]: improve play behavior
- when adding songs to queue, only `play()` if the queue was empty
- when adding next/last to empty queue, behavior should be same as now
2024-02-10 00:38:21 -08:00
Kendall Garner
0a658e3a22
[bugfix]: default go libsecret, support changing secret store (#493)
* [bugfix]: default go libsecret, support changing secret store

* update readme and rename libsecret
2024-02-09 23:20:01 +00:00
Kendall Garner
73c6ddd116
Merge branch 'development' of github.com:jeffvli/feishin into development 2024-02-04 10:24:24 -08:00
Kendall Garner
e3553074a3
[bugfix]: use accent color for cache clearing 2024-02-04 10:23:45 -08:00
Kendall Garner
aba7cb302f
add navidrome version check for smart playlists 2024-02-03 22:47:57 -08:00
Kendall Garner
46cc1a635f
address changes 2024-02-03 21:22:03 -08:00
lymnyx
69cb63a8b0 Fixes route of most played songs in home (#434). 2024-02-04 02:27:26 +01:00
Kendall Garner
24bf7ae31f
[enhancement/localization]: sort navidrome albums by year, add more language keys 2024-02-03 15:05:33 -08:00
Benjamin
86a93866d0
[enhancement] Add a button size setting (#486)
* Add a button size setting

* Reduce setting size and add px suffix

* Looks like I don't need || inside of control-settings

* Update translation

* Bump settings version to 7
2024-02-03 21:22:26 +00:00
Jeff
ccb0e14e48
Merge pull request #450 from kgarner7/more-metadata
[feature]: Show album comment, Last.fm/MusicBrainz links
2024-02-02 14:56:46 -08:00
jeffvli
aca6826221 Refactor artist biography to use spoiler 2024-02-02 01:39:19 -08:00
Kendall Garner
73cd647486
os lyrics 2024-02-01 23:53:10 -08:00
Kendall Garner
9e4664a54c
Merge branch 'development' into fix-structured-lyrics 2024-02-01 22:13:41 -08:00
Kendall Garner
efa0d9ec35
[enhancement]: larger player buttons, clearer random icon 2024-02-01 20:59:00 -08:00
Kendall Garner
9720fcc202
add server info query 2024-02-01 08:17:31 -08:00
jeffvli
3daa1aef4b Normalize section spacing on album/artist detail pages 2024-02-01 04:06:56 -08:00
Kendall Garner
eff1cee6a3
[bugfix]: Fix repeated track scrobbling (#480)
* [bugfix]: Fix repeated track scrobbling

This commit fixes scrobbling tracks that are repeated in the queue (either due
to a REPEAT_ONE or just enqueued multiple times). There are two extra cases:

1. The current player changes. The player alternates from 1 -> 2 -> 1 whenever playback
finishes normally, so this is a sort of epoch that can be used to detect both repeat one
and track being enqueued multiple times.
2. The current index changes. The player gets set back to 1 in a variety of cases (most often
previous/next), so the check in (1) is not enough. However, the index changing will help identify
that this is a new song.

* use unique id instead
2024-02-01 04:12:39 +00:00
Kendall Garner
9995b2e774
[enhancement]: support clearing query and http cache (#475)
* [enhancement]: support clearing query and http cache

  - Adds the ability to invalidate all queries (useful for forcing refresh, and clearing lyrics which are cached forever)
  - [Desktop only] adds the ability to clear the Electron HTTP cache (e.g. cached images)

* use clearer language

* move cache settings to general
2024-01-31 06:27:56 +00:00
Kendall Garner
afb8510cd7
[enhancement]: increase padding for synchronizer lyric container 2024-01-28 19:42:23 -08:00
Kendall Garner
5cc2276781
[bugfix]: web player edge cases
Two bugs addressed in response to Safari changes:
1. Only handle `onEnded` for real streams, preventing `autoNext()` spam when the last track finishes
2. `.play()` is not necessarily a safe operation (if empty wave was started, can cause exception later). Catch this exception and discard it. This also only occurred when playing the last track
2024-01-28 01:50:51 -08:00
Kendall Garner
f467a85a86
[bugfix]: use proper language key for lyrics size 2024-01-27 10:07:10 -08:00
Kendall Garner
0cdfc64023
[bugfix]: allow Jellyfin to have empty password on edit 2024-01-26 22:54:50 -08:00
Kendall Garner
bbf59a4942
[bugfix]: Fix add to playlist success message
The prior code used `form.addToPlaylist`, not `.success`. Also fixes English pluralization and
uses the correct `entity.track` as opposed to `entity.song` for other languages (I am not sure
if the en syntax could be applied to other languages, so I will just leave pluralization as-is
for now).
2024-01-25 23:58:21 -08:00
Kendall Garner
45e589fbb1
[enhancement]: use ColorInput for text rgb selection 2024-01-24 23:39:50 -08:00