Commit Graph

46 Commits

Author SHA1 Message Date
Kingkor Roy Tirtho
b8f2495acb refactor: user local library 2025-01-05 11:54:50 +06:00
Kingkor Roy Tirtho
d53782da23 refactor: playlist and album pages 2024-12-28 14:30:25 +06:00
Kingkor Roy Tirtho
7ee071f2e3 refactor: connected device button 2024-12-21 21:40:34 +06:00
Kingkor Roy Tirtho
f80ea32de4 refactor: use Appbar titlebar throughout the app 2024-12-21 17:02:13 +06:00
Kingkor Roy Tirtho
fcefce4b1b refactor: titlebar to use shadcn appbar and library tabs to use shadcn TabList 2024-12-21 16:05:35 +06:00
Kingkor Roy Tirtho
8ca2115ef0
feat: track caching and cached track export support (#2117)
* feat: add caching support with track metadata

* feat(settings): add cache music toggle

* fix(mobile): cache dir not open-able

* feat(local folder): add cache export/clear actions and size of the folder

* chore: ios deps upgrades

* chore: upgrade lint flutter version

* chore: lint secrets causing error

* cd: invalid value for env var
2024-12-08 20:03:01 +06:00
Kingkor Roy Tirtho
1c66646798 fix(windows): local tracks plays but disabled playback controls 2024-08-07 21:54:47 +06:00
Kingkor Roy Tirtho
a83dd64476 refactor: replace all instances of proxy playlist 2024-06-24 20:52:40 +06:00
Kingkor Roy Tirtho
3fb003ea60 refactor(preferences): use Drift sql db for preferences 2024-06-14 00:29:09 +06:00
Kingkor Roy Tirtho
8cb6c6d126 refactor: breakdown page window titlebar widget into multiple small widgets 2024-06-09 09:19:41 +06:00
Kingkor Roy Tirtho
4af23241c8 refactor: move shared components to 1 level up 2024-06-07 22:40:44 +06:00
Kingkor Roy Tirtho
1cfeef54e7 refactor: move route related components to modules folder 2024-06-07 22:19:45 +06:00
Kingkor Roy Tirtho
82307bc030
feat: personalized stats based on local music history (#1522)
* feat: add playback history provider

* feat: implement recently played section

* refactor: use route names

* feat: add stats summary and top tracks/artists/albums

* feat: add top date based filtering

* feat: add stream money calculation

* refactor: place search in mobile navbar and settings in home appbar

* feat: add individual minutes and streams page

* feat(stats): add individual minutes and streams page

* chore: default period to 1 month

* feat: add text to explain user how hypothetical fees are calculated

* chore: ensure usage of route names instead of direct paths

* cd: add cache key

* cd: remove media_kit_event_loop from git
2024-06-01 11:40:01 +06:00
Kingkor Roy Tirtho
fc5bfa089c feat: local library folder cards 2024-05-23 21:27:09 +06:00
Kingkor Roy Tirtho
d82261cb25 fix: local track not showing up in queue 2024-05-23 16:56:52 +06:00
Blake Leonard
22caa818f4
feat: Local music library (#1479)
* 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>
2024-05-23 15:18:01 +06:00
Kingkor Roy Tirtho
57ccf16311 refactor: rename providers 2024-04-12 11:06:03 +06:00
Kingkor Roy Tirtho
ee97aedcfc chore: remove direct access to .value without calling asData.value 2024-03-23 20:37:52 +06:00
Kingkor Roy Tirtho
9f96b5c537 refactor: use extension methods for simple album to album and simple track to track conversion 2024-03-21 00:48:21 +06:00
Kingkor Roy Tirtho
7545ff6415 refactor: use extension method for image to url string 2024-03-21 00:18:43 +06:00
Kingkor Roy Tirtho
6673e5a8a8
feat: improved caching based on riverpod (#1343)
* 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
2024-03-20 23:38:39 +06:00
Kingkor Roy Tirtho
ab08c82c8d fix: friends list not scrollable with mouse drag 2024-02-24 18:38:18 +06:00
Kingkor Roy Tirtho
96021e1a49 fix: "Add () to Playlist" option not showing in favorited playlists #904 2023-11-27 20:38:50 +06:00
Kingkor Roy Tirtho
722dd86810 chore: track view play not working properly 2023-11-27 19:34:18 +06:00
Kingkor Roy Tirtho
57c03ad045 refactor: use json serializer for preferences 2023-11-14 22:48:02 +06:00
Kingkor Roy Tirtho
afbb8ba5a7 refactor: make compatible with spotify lib 0.12 2023-09-26 19:49:59 +06:00
Kingkor Roy Tirtho
4adf6951d9 fix: generate playlist page max width 2023-08-15 13:13:07 +06:00
Kingkor Roy Tirtho
38dc4beb44
feat: blazingly™ fast download manager (#619)
* feat: concurrent download service & download prorvider

* feat: implement chunked downloader

* fix: no audio-tags in Linux and duration not showing up for local tracks

* feat: show matching tracks in queue as well

* feat: always uses piped api for download to avoid IP block

* fix: invalid downloadCount
2023-08-07 16:49:11 +06:00
Kingkor Roy Tirtho
e4cbdd3747 fix: remove adaptive widgets (#520) 2023-07-11 22:13:22 +06:00
Kingkor Roy Tirtho
925fa86271 feat: download button on each track 2023-06-25 17:03:36 +06:00
Kingkor Roy Tirtho
2b35c044ad fix: playlist generate slider shape 2023-06-15 13:00:49 +06:00
Kingkor Roy Tirtho
c8b7de0879 feat: adaptive controllers 2023-06-12 09:22:31 +06:00
Kingkor Roy Tirtho
c91d8c8efa feat: add generated to playlist(s) 2023-06-11 18:56:39 +06:00
Kingkor Roy Tirtho
91c72f9ec9 feat: playlist create support for generated playlist 2023-06-10 23:12:02 +06:00
Kingkor Roy Tirtho
9877d5f517 feat: playlist generation all parameters support 2023-06-08 12:49:08 +06:00
Kingkor Roy Tirtho
d57aad5612 feat: responsive playlist generate page and scrollable multi autocomplete 2023-06-08 10:01:01 +06:00
Kingkor Roy Tirtho
f4b0d134ca feat: custom playlist generator 2023-06-06 17:41:37 +06:00
Kingkor Roy Tirtho
11fe9ec744 feat(locale): localize search, library, lyrics, artist with both Bengali and English 2023-04-29 10:11:56 +06:00
Kingkor Roy Tirtho
1bdce9fe96 fix: content going below bottom player or nav bar 2023-03-11 11:58:48 +06:00
Kingkor Roy Tirtho
a90261ed19 feat: merge floating player with nav bar and nav bar translucent bg 2023-03-10 19:19:55 +06:00
Kingkor Roy Tirtho
67380f6876 feat: compact button tabbar 2023-03-10 15:56:38 +06:00
Kingkor Roy Tirtho
a4927c7013 refactor: working dissect of platform_ui 2023-03-09 23:24:09 +06:00
Kingkor Roy Tirtho
312f7fbe77 refactor(playback): new immutable queue based playback manager
Dropping support for search format, track match algorithm in favor of server track cache and alternative track source
2023-02-02 18:43:12 +06:00
Kingkor Roy Tirtho
e158dd0cec fix(about): license text hidden in the bottom of smaller screen devices 2023-01-05 18:26:52 +06:00
Kingkor Roy Tirtho
bd18f19821 fix(windows): windows global title bar 2022-12-08 14:21:51 +06:00
Kingkor Roy Tirtho
7c25e1cc8a feat: rename files to snake_case and reorganize folder structure 2022-12-08 11:43:31 +06:00