* feat: add one additional library folder
This folder just doesn't get downloaded to.
I think I'm going to rework it so that it can be multiple folders,
but I'm going to commit my progress so far anyway.
Signed-off-by: Blake Leonard <me@blakes.dev>
* chore: update dependencies so that it builds
I'm not sure if this breaks CI or something, but I couldn't build
it locally to test my changes, so I made these changes and it
builds again.
Signed-off-by: Blake Leonard <me@blakes.dev>
* feat: index multiple folders of local music
If you used a previous commit from this branch, this is a breaking
change, because it changes the type of a configuration field. but
since this is still in development, it should be fine.
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: manage local library in local tracks tab
This also refactors the list to use slivers instead. That's the
easiest way to have multiple scrolling lists here...
The console keeps getting spammed with some intermediate layout
error but I can't hold it long enough to figure out what's causing
it.
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: use folder add/remove icons in library
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: remove redundant settings page
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: rename "Local Tracks" to just "Local"
Not sure if this would be the recommended way to do it...
Signed-off-by: Blake Leonard <me@blakes.dev>
* fix: console spam about useless Expanded
Signed-off-by: Blake Leonard <me@blakes.dev>
* chore: remove completed TODO
Signed-off-by: Blake Leonard <me@blakes.dev>
* chore: use new Platform constants; regenerate plugins
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: put local libraries on separate pages
Signed-off-by: Blake Leonard <me@blakes.dev>
---------
Signed-off-by: Blake Leonard <me@blakes.dev>
* fix: certificate error by using custom ssl certificate
* Cd/docker linux ar (#1468)
* cd: use docker buildx
* cd: use linux host for linux arm instead of macos m1
m1 doesn't support nested virtualization. (Apple truly sucks)
* cd: don't specify arch in Dockerfile
* cd: use custom Dockerfile from ubuntu instead of flutter image
* cd: add setup java for android
* cd: add flutter distributor pre-built docker image for arm
* cd: save me from this cursed arm build
* cd: ??
* cd: ??
* cd: use docker build
* fix: windows SSL Exception for Signing in
* refactor: extract update checker as a basic function instead of a hook
* refactor: remove SourcedTrack based audio player and utilize mediakit playback system
* feat: implement local (loopback) server to resolve stream source and leverage the media_kit playback API
* feat: add source change support and re-add prefetching tracks
* fix: assign lastId when track fetch completes regardless of error
* chore: remove print statements
* fix: remote queue not working
* fix: increase mpv network timeout to reduce auto-skipping
* fix: do not pre-fetch local tracks
* fix(proxy-playlist): reset collections on load
* chore: fix lint warnings
* fix(mobile): player overlay should not be visible when the player is not playing
* chore: fix typo in turkish translation
* cd: checkout PR branch
* cd: upgrade flutter version
* chore: fix lint errors
* feat: add connect server support
* feat: add ability discover and connect to same network Spotube(s) and sync queue
* feat(connect): add player controls, shuffle, loop, progress bar and queue support
* feat: make control page adaptive
* feat: add volume control support
* cd: upgrade macos runner version
* chore: upgrade inappwebview version to 6
* feat: customized devices button
* feat: add user icon next to devices button
* feat: add play in remote device support
* feat: show alert when new client connects
* fix: ignore the device itself from broadcast list
* fix: volume control not working
* feat: add ability to select current device's output speaker
* feat: add riverpod based favorite album provider
* feat: add album is saved, new releases and tracks providers
* feat: add artist related providers
* feat: add all categories providers
* feat: add lyrics provider
* feat: add playlist related providers
* feat: add search provider
* feat: add view and spotify friends provider
* feat: add playlist create and update and favorite handlers
* feat: use providers in home screen
* chore: fix dart lint issues
* feat: use new providers for playlist and albums screen
* feat: use providers in artist page
* feat: use providers on library page
* feat: use provider for playlist and album card and heart button
* feat: use provider in search page
* feat: use providers in generate playlist
* feat: use provider in lyrics screen
* feat: use provider for create playlist
* feat: use provider in add track dialog
* feat: use providers in remaining pages and remove fl_query
* fix: remove direct access to provider.value
* fix: glitching when loading
* fix: user album loading next page indicator
* feat: make many provider autoDispose after 5 minutes of no usage
* fix: ignore episodes in tracks
* this change fixes the garbled audio on my Pixel 6a while the screen is off. Not familiar with libmpv, but seems to favor audiotrack audio output over opensles. KRTirtho/spotube#571
* get audio session id, send it to AudioTrack in libmpv, broadcast it to other apps. FixesKRTirtho/spotube#1221
---------
Co-authored-by: Kingkor Roy Tirtho <krtirtho@gmail.com>
* feat: implement new SourcedTrack for youtube and piped
* refactor: replace old spotube track with sourced track
* feat: add jiosaavn as audio source
* fix: download not working other than jiosaavn
* Merge branch 'dev' into feat-jiosaavn