Commit Graph

1414 Commits

Author SHA1 Message Date
Kendall Garner d74e7b52cc position original release date after release types 2025-11-08 15:38:19 -08:00
Chen Marisa 8c539aaadc feat: add 'preservePitch' toggle to playback speed "dropdown" (#1243)
* feat: add 'preservePitch' toggle to playback speed "dropdown"
2025-11-06 01:10:17 -08:00
Dane 903799dae1 adding EnableTotalRecordCount and Limit to Jellyfin controller genres query (#1244) 2025-11-05 20:11:41 -08:00
jeffvli 7ac8f349a5 fix item grid refresh error 2025-11-03 21:47:57 -08:00
jeffvli f266e299f5 remove old api types files 2025-11-03 11:16:50 -08:00
Kendall Garner e26ffaac53 Add additional information to album: record label, release type, version (#1242)
* Add additional information to album

* add mbz release types and normalization

* update Pill styling

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2025-11-03 00:34:42 -08:00
jeffvli f67937693d fix library header spinner 2025-11-02 22:03:03 -08:00
jeffvli c7a473d864 refactor api controller to internalize server fetch 2025-11-02 21:56:35 -08:00
jeffvli 8dbaec3943 fix type errors 2025-11-02 04:27:44 -08:00
jeffvli bc42329d27 fix merge conflicts from react-query v5 migration 2025-11-02 01:49:16 -07:00
jeffvli b685ec370a remove barrel files in renderer 2025-11-02 01:39:01 -07:00
jeffvli abd1d55f23 remove limit / startIndex from count query args 2025-11-02 01:39:01 -07:00
jeffvli 8115963264 upgrade and refactor for react-query v5 2025-11-02 01:38:47 -07:00
jeffvli dd70d30cd3 fix inconsistent image loader aspect ratio 2025-11-01 22:17:02 -07:00
Kendall Garner 1a176fd118 Refactor add to playlist modal (#1236)
* Refactor add to playlist modal

* redesign base modal component, add ModalButton component

* improve visibility of filled button focus

---------

Co-authored-by: jeffvli <jeffvictorli@gmail.com>
2025-11-01 21:57:12 -07:00
Xudong Zhou 829c27a5e9 Prevent Media Session Handling on MPV (#1212)
* Remove MediaSession Handling on MPV

* Add playbackType to config.json for Main Thread Access

* Disabling settings without Hiding
2025-11-01 18:26:16 -07:00
jeffvli 0ca9eb0fcd fix sidebar image using invalid fallback value 2025-11-01 12:49:48 -07:00
jeffvli 3d66a15ae6 fix setting description for sidebar (collapsed) nav (#1218) 2025-10-31 17:28:36 -07:00
jeffvli 6a04c709f0 remove z-index from playerbar controls (#1218) 2025-10-31 17:27:33 -07:00
Xudong Zhou dd34888961 Fix Lyric Translation Not Resetting (#1208)
* Refactor lyrics translation and index handling

* Add auto translation toggle to lyric settings

* Add enableAutoTranslation setting to lyrics
2025-10-31 17:08:10 -07:00
Jake King a9f2b083fa Import / Export Feishin Settings (#1163)
* Create a shared DragDrop Zone

- This zone allows the dropping of files
- The zone allows validation by parent
- The zone allows customisation like icon shown

* Import Settings

- Ability to import settings from a JSON file
- Validation to ensure file compatibility
- Visualiser for viewing string differences

* i18n

- Moved all hardcoded values to be en localised

* Zod / Validation

This commit contains the code to move settings to using ZOD, the reason for this is so that we can validate the settings schema that is being imported.

This commit also adds various validation and transforms to ensure the settings being reimported match values we expect.

I also removed the original crude validation and replaced it with the new ZOD parser that will handle this for us.

Finally the "styles-settings" component will listen to any external content updates and update its value, the reasoning is the external import wouldn't update the existing value.


- Split Settings schema into two parts, schema that is validated on import and schema that is not
- Schemas are merged to make the full SettingsStateSchema

* Migrate during validation

- Migration is done as part of validation
- Updated the store version to v10 as there has been changes to the settings
- Migrate will now add the fields from v9 to v10


- the build was failing due to ids not being mapped to their enum values

---------

Co-authored-by: Jeff <42182408+jeffvli@users.noreply.github.com>
2025-10-28 20:54:13 -07:00
Kendall Garner a379100c9f fix: disable certain playlist controls when search is enabled 2025-10-26 12:03:36 -07:00
Kendall Garner 4cbbb4035d feat: add filtering for now playing view and sidebar 2025-10-26 11:51:55 -07:00
Lyall 4dd52b0cef feat: Add explicit status for Navidrome and OpenSubsonic (#1220)
* add navidrome explicit status

* add ExplicitStatus enum and support opensubsonic

* add explicit status to cards
2025-10-26 13:48:45 +00:00
Kendall Garner 58ccd0cfd0 bugfix: remove duplicate scrobbling when there is only one item in the queue (#1222) 2025-10-25 20:25:07 +00:00
jeffvli ce1d37479c add migration to reset all users to native window bar style (#1211) 2025-10-22 02:49:37 -07:00
Tarulia a9af1e91d4 Disable Media Keys with MediaSession on Windows (#1207)
In f07393c8 we enabled the MediaSession API, which from Chromium's side
brings its own native way of handling Global Media Keys. However, it
turns out having this enabled seemingly conflicts with Windows 11's SMTC
implementation when we also bind the Media Keys using Electron's Global
Hotkeys API (Windows 10 is apparently fine, but now EOL).

Globally passing `HardwareMediaKeyHandling` to `disable-features` was
considered, however using the MediaSession API requires
`HardwareMediaKeyHandling` to be enabled, so this is not an option.

Instead, with MediaSession enabled we need to let Chromium handle the
Media Keys, while without MediaSession we bind our own Global Hot Keys
for users that have them enabled in the settings.

Co-authored-by: Xudong Zhou <godzmichael@outlook.com>
2025-10-21 21:48:09 -07:00
Lyall 848b3f58b3 Fix short album/artist name breaking Discord presence (#1191)
* Fix short album/artist name breaking Discord presence

* fix lint rule that isn't firing, cleanup types

---------

Co-authored-by: Kendall Garner <17521368+kgarner7@users.noreply.github.com>
2025-10-14 02:17:09 +00:00
jeffvli b16e57710b hide mediasession setting for non-desktop 2025-10-13 12:06:03 -07:00
jeffvli 931e96b9d1 fix media session setting toggle for web 2025-10-13 12:00:42 -07:00
jeffvli c27b86d2b2 fix media session settings error on web 2025-10-13 11:49:34 -07:00
jeffvli 1b15c73db0 fix scrobble time race condition
- revert playerbar slider refactor
- re-implement mediasession handler
2025-10-13 11:44:42 -07:00
jeffvli 4e53030e8d Revert "refactor playerbar slider to separate component"
This reverts commit 309b49b46e.
2025-10-13 11:38:26 -07:00
jeffvli 22b798812e Revert "fix playback controls being called multiple times on media key input"
This reverts commit 1b8661d566.
2025-10-13 11:38:19 -07:00
jeffvli 1b8661d566 fix playback controls being called multiple times on media key input 2025-10-13 04:33:11 -07:00
Kendall Garner 68476deb98 fix album song count 2025-10-12 16:44:05 -07:00
jeffvli c88c6cf55e add mediasession playback controls 2025-10-12 16:37:24 -07:00
jeffvli 58becc5c8e add useMediaSession hook to set metadata and status 2025-10-12 16:07:59 -07:00
jeffvli 309b49b46e refactor playerbar slider to separate component 2025-10-12 16:07:00 -07:00
jeffvli 40e7eda882 hide mediasession setting on desktop non-windows 2025-10-12 15:53:16 -07:00
Mike Benz f07393c82a enable mediaSession api (#1040)
* enable mediaSession api
2025-10-12 14:59:30 -07:00
Lyall 3636384508 show time remaining instead of duration on click (#1179)
* show time remaining on duration click
2025-10-12 14:22:58 -07:00
jeffvli 9f8d9a5b28 move update settings to advanced tab 2025-10-12 02:33:35 -07:00
jeffvli 4d12a4d6cb add release channel setting and implementation 2025-10-11 15:05:29 -07:00
Kendall Garner fccbf83c12 bugfix: handle playlist with no tracks 2025-10-11 12:39:59 -07:00
Kendall Garner 6733047942 improve jellyfin participants 2025-10-10 19:32:11 -07:00
Kendall Garner 452803fc72 support artist art as artist background 2025-10-10 18:26:28 -07:00
Kendall Garner 4ff317eac9 fix nonexistent filter 2025-10-05 21:25:19 -07:00
Kendall Garner 306167fee3 playlist sort and refactoring 2025-10-05 19:13:35 -07:00
Kendall Garner 1cbb3e56bc add recently released to home page, refactor home route 2025-10-05 07:51:36 -07:00