Commit Graph

133 Commits

Author SHA1 Message Date
Violet Caulfield
676f5fa199 Make Album Disc Fetching Lazy, User Data Query Caching Fixes (#504)
will use and store data retrieved from the server first, else will rely on a fetch

this addresses battery life issues, as these queries were firing network requests far more frequently and for each item, causing unnecessary network usage and overhead

update tanstack query to the latest while we're in there
2025-09-03 08:47:46 -05:00
Violet Caulfield
fac98f2777 Login Flow Backend Refactor, Haptic Feedback Setting Enablement (#502)
Refactors haptic feedback usage to use a hook that will determine based on the user input if a haptic feedback event should be triggered. This fixes the issue where users would get haptic feedback even if the toggle for reducing it was enabled

Refactors login flow to use external hooks to clean up components and split display vs functional logic

Fixes DNS lookups in login flow. Now when a hostname connection fails, Jellify will properly perform a DNS lookup to determine the proper IP address of the Jellyfin server

This should address issues with users connecting over Tailscale or relying on a custom DNS entry configured locally

* update react navigation
2025-08-31 11:06:47 -05:00
Violet Caulfield
9e08996706 Alphabet Selector for Albums, Dep updates (#501)
Get alphabetical selector working for albums. Now an A-Z will appear to the right of the albums list and users can use that to get to a certain letter of albums in the list

Under the hood - also updates the dependencies for React Native and Tanstack Query
2025-08-30 10:31:24 -05:00
Violet Caulfield
3e11d95ace Library Improvements (#500)
Make gesture in the alphabetical selector better, especially when tapping on a letter. When users tap on a letter now, they will be brought to that section of the artists list

Fix issue where Artists in the Library would show "0 Albums". This will now instead display the artist's genres instead
2025-08-29 20:13:38 -05:00
Ritesh Shukla
7a0ac95164 Migrate Network Status to Zustand Store (#499)
Moves the network status state to a Zustand Store for better reusability and to reduce the complexity of the network context

No new user facing changes
2025-08-29 11:53:36 -05:00
Violet Caulfield
74efea0ebc Settings refactor to zustand + MMKV (#495)
*Mostly* backend work in the settings tab

Migrate settings context over to MMKV backed Zustand store. Update hooks as needed

Update info tab styling - making the patreon patrons list it's own section. A perfect time to remind everyone you can sponsor Jellify on GitHub or Patreon :)

Joining the patreon as a paid member will get your name displayed in the info area of the settings tab
2025-08-28 22:24:53 -05:00
Violet Caulfield
2961ca39bb Introduction of Transcoding Support (#490)
Implements proper server negotation for performing transcoding

Depending on the user's platform (i.e. iOS, Android) and the desired quality specified in the settings, Jellify will playback a transcoded audio file from Jellyfin

This is helpful when the source audio file is not compatible with the user's device (i.e. playing back an ALAC encoded .M4A on Android) or if the user want to stream at a lower quality to save bandwidth

This also drives downloads in different qualities, meaning the download quality selector in the Settings is now working properly. When a track is downloaded, it will download at the quality selected by the user, and in a format compatible with the device

There is also a toggle in the "Player" Settings for displaying a badge in the player that shows the quality and container of the audio being played
2025-08-28 13:04:38 -05:00
Ritesh Shukla
94ba3af9d1 Adding Cast Support (#489)
Adds Google Cast Speaker Support!

A new button is now present in the bottom left of the player screen. Pressing this button will prompt the user to pick a Cast enabled speaker. Once a speaker is selected, the player controls in Jellify will control the playback of the Cast speaker.
2025-08-26 16:36:57 -05:00
Violet Caulfield
3e3e191ea9 Bugfix/queue doesnt restore on launch (#485)
Fix an issue where the queue didn't restore on opening the app

Add download button to the item menu - this works for tracks and albums

Fix issue where playback would start automatically on android
2025-08-25 20:23:08 -05:00
Violet Caulfield
ec07b47b6f Player Rewrite (#484)
Rewrite player backend to be more efficient on CPU usage and memory usage
2025-08-25 14:32:34 -05:00
Violet Caulfield
7ab462b201 performance improvements related to background data fetching 2025-08-23 07:47:04 -05:00
Violet Caulfield
e8be30499e item context provider fixes 2025-08-23 07:47:04 -05:00
Violet Caulfield
c8f18d37ca Performance improvements and navigation fixes
Performance fixes for library, artist screens

Navigational fixes in the player

Item Context optimization
2025-08-22 05:26:38 -05:00
Violet Caulfield
dc8a4fe5e4 query client defaults
fix player artwork being stretched vertically on android

fix issue where nowplaying was incorrect after the queue was initialized from storage
2025-08-20 22:11:40 -05:00
Violet Caulfield
1d0641f2ae lots of context prefetching and favorites prefetching improvements 2025-08-20 21:33:04 -05:00
Violet Caulfield
f368ba77d6 Add Item Context Provider
Wrap Item Context Provider around item components:
- ItemCard
- ItemRow
- Track

This is to prepopulate our query cache with data used in the Context Sheet
2025-08-20 16:17:11 -05:00
Violet Caulfield
8a191b91ab context sheet prefetching
unit tests

update rn screens
2025-08-20 15:02:52 -05:00
Violet Caulfield
24d3aa475c context sheet prefetching
player style fixes
2025-08-20 07:08:44 -05:00
Violet Caulfield
321b89a9e7 context sheet prefetching in item card, item row, and track components
context sheet header styling

player cover art styling
2025-08-20 00:09:01 -05:00
Violet Caulfield
d456aa1cd2 fix content sheet for android 2025-08-19 22:06:06 -05:00
Violet Caulfield
3af90aa17b player style tweaks 2025-08-19 10:06:09 -05:00
Violet Caulfield
787e807352 player style fixes 2025-08-19 08:47:20 -05:00
Violet Caulfield
3706f24df9 add android run config
feedback from erik
2025-08-18 20:30:09 -05:00
Violet Caulfield
80cb767dd3 Context Menu detents (#478)
Fix context menu height
2025-08-16 17:43:14 -05:00
Violet Caulfield
c8e8ecd05f restore player menu button 2025-08-16 12:12:38 -05:00
Violet Caulfield
f389e33408 Merge branch 'ritesh/perf-2' of github.com:Jellify-Music/App into feature/context-menus 2025-08-16 12:07:07 -05:00
riteshshukla04
52ed7809c5 Perv v2 2025-08-16 20:55:17 +05:30
Violet Caulfield
09b9dee789 style fixes, sign out flow fixes, maestro fixes 2025-08-16 09:43:27 -05:00
Violet Caulfield
9eab9f0aef fix tests 2025-08-15 23:21:34 -05:00
Violet Caulfield
fe721640b6 instantmix fixes 2025-08-15 23:11:42 -05:00
Violet Caulfield
5ea91cc049 discover context menus
signout modal styling
2025-08-15 23:11:31 -05:00
Violet Caulfield
cb4f1c6acd additional context menu actuation
fix maestro
2025-08-15 22:27:57 -05:00
Violet Caulfield
d7013f9588 fix tests 2025-08-15 20:14:07 -05:00
Violet Caulfield
8a294e39f1 safe area fixes 2025-08-15 19:50:37 -05:00
Violet Caulfield
50a9c20bb2 Merge branch 'feature/0.15' of github.com:Jellify-Music/App into feature/context-menus 2025-08-15 19:28:49 -05:00
Violet Caulfield
91322b426b navigational and styling fixes 2025-08-15 19:26:42 -05:00
Ritesh Shukla
efc58a2e36 Fixes Issue with SafeAreaView (#476) 2025-08-15 19:26:00 -05:00
Violet Caulfield
6ccd88c0a6 fix issue where context menu on an artist would show a link to the album
update tamagui
2025-08-15 15:26:52 -05:00
Violet Caulfield
9b2ddeb176 typing and navigation fixes 2025-08-15 15:21:50 -05:00
Violet Caulfield
5a723bcefe getting context sheet navigation to work 2025-08-15 11:32:13 -05:00
Violet Caulfield
a2e3237766 library navigation jumps 2025-08-14 18:18:09 -05:00
Violet Caulfield
2748e74bf1 Merge branch 'main' of github.com:Jellify-Music/App into feature/context-menus 2025-08-14 14:36:25 -05:00
Violet Caulfield
753a3a289d fixes and typing and stuff 2025-08-14 14:08:40 -05:00
riteshshukla04
611d4cadf9 Perf-1 2025-08-14 14:07:14 -05:00
riteshshukla04
8f976a2aaa Perf-1 2025-08-14 14:07:14 -05:00
riteshshukla04
fe7df38710 Perf-1 2025-08-14 14:07:14 -05:00
Violet Caulfield
df2d78f868 tsc fixes 2025-08-14 07:29:45 -05:00
Violet Caulfield
66a084c44b update Tanstack
Android  build fixes
2025-08-14 07:19:48 -05:00
Violet Caulfield
aa3921c2c1 Merge branch 'main' of github.com:Jellify-Music/App into feature/context-menus 2025-08-14 06:50:03 -05:00
Ritesh Shukla
a6b575c998 React native upgrade to 0.81 (#472)
React Native and dependency upgrades
2025-08-14 06:30:10 -05:00