Commit Graph

146 Commits

Author SHA1 Message Date
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
57cd8607dd Revert "refactor: migrate deprecated warnings"
chore: undo flutter 3.22.x related deprecated theme migrations
2024-06-06 08:19:07 +06:00
Kingkor Roy Tirtho
56241f773a refactor: migrate deprecated warnings 2024-06-02 21:15:11 +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
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
a77b6776e8
refactor: Dart based Github Workflow CLI (#1490)
* feat: add build dart script for windows

* feat: add android build support

* feat: add linux build support

* feat: add macos build support

* feat: add ios build support

* feat: add deps install command and workflow file

* cd: what?

* cd: what?

* cd: what?

* cd: update workflow inputs

* cd: replace release binary

* cd: run flutter pub get

* cd: use dpkg zstd instead of xz, windows disable innoInstall, fix channel enum.name and reset pubspec after changing build no for nightly

* cd: fix tar copy path

* cd: fix copy linux command

* cd: fix windows inno depend and fix android aab path

* cd: idk

* cd: linux why???

* cd: windows choco copy failed

* cd: use dart tar archive for creating tar file

* cd: fix linux file copy error

* cd: use tar command directly

* feat: add linux_arm platform

* cd: add linux_arm platform

* cd: don't know what?

* feat: notification about nightly channel update

* chore: fix some errors parsing nightly version info
2024-05-09 15:26:58 +06:00
Kingkor Roy Tirtho
7ac791757a fix(linux): tray icon not showing #541
upgrade old packages
2024-04-17 22:20:30 +06:00
Kingkor Roy Tirtho
57ccf16311 refactor: rename providers 2024-04-12 11:06:03 +06:00
Kingkor Roy Tirtho
de68fe3a6b chore: make dropdown buttons more attractive 2024-04-09 01:15:39 +06:00
Kingkor Roy Tirtho
68374efd3e
feat: LAN connect a.k.a control remote Spotube playback and local output device selection (#1355)
* 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
2024-04-04 22:22:00 +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
0ae6af61c9 chore: untranslated messages 2024-02-25 23:06:40 +06:00
Kingkor Roy Tirtho
96a2a1f5a6 feat: add getting started page 2024-02-25 22:01:38 +06:00
Kingkor Roy Tirtho
9dfd49ca04 feat: add endless playback support #285 2024-01-31 18:00:54 +06:00
Kingkor Roy Tirtho
9d74cf5fc2 fix(macos): download folder unchangeable 2024-01-24 11:45:26 +06:00
Kingkor Roy Tirtho
24a2294512 feat: toggle for discord rpc 2023-12-08 13:27:31 +06:00
Kingkor Roy Tirtho
2a87a0fe28 chore: change API Type to Audio Source 2023-12-02 22:17:53 +06:00
Kingkor Roy Tirtho
ee8229020b fix: settings page scrollbar position 2023-11-27 19:39:53 +06:00
Kingkor Roy Tirtho
14069cd4fe
feat: Add JioSaavn as audio source (#881)
* 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
2023-11-15 18:34:46 +06:00
Kingkor Roy Tirtho
57c03ad045 refactor: use json serializer for preferences 2023-11-14 22:48:02 +06:00
Kingkor Roy Tirtho
dc980b024e fix(genres): lag while scrolling 2023-11-14 20:58:16 +06:00
Kingkor Roy Tirtho
0e07506716 refactor: organize hooks 2023-11-14 19:46:54 +06:00
Kingkor Roy Tirtho
2e2c44f0af feat(android): better quick scroll/drag to scroll implementation 2023-11-13 23:17:16 +06:00
Kingkor Roy Tirtho
e29a38dfa4 fix: changed settings are not persisting after force stop #821 2023-11-13 20:59:54 +06:00
Kingkor Roy Tirtho
ac0e2e74d8 refactor: extract settings section to separate files 2023-11-08 11:43:17 +06:00
Kingkor Roy Tirtho
d056dbf9ee fix: android invalid download location Download not starting or not explaining error #720 2023-10-29 19:02:39 +06:00
Kingkor Roy Tirtho
edb8928d53 chore: remove unused save lyrics toggle 2023-10-15 10:56:09 +06:00
Kingkor Roy Tirtho
34b80a36b4 chore: fix normalize audio unneeded subtitle 2023-10-15 10:38:09 +06:00
Kingkor Roy Tirtho
8ca1aa38a2 chore: include interscrollbar in left out pages 2023-10-01 13:24:36 +06:00
Kingkor Roy Tirtho
a3250882df chore: fix width of scrollbar & non-interactive scrollbar in android 2023-10-01 13:19:34 +06:00
Kingkor Roy Tirtho
b1d79428a3 chore: fix translations & normalize audio icon 2023-09-30 18:46:32 +06:00
Kingkor Roy Tirtho
f5bd90731d
feat: LastFM scrobbling support (#761)
* feat: add login with lastfm support

* feat: add lastfm scrobbling support

* fix: scrobblenaut local path
2023-09-29 18:45:00 +06:00
Kingkor Roy Tirtho
e54762be6a
feat: customizable stream/download file formats (#757)
* feat: add codec configuration in settings

* fix: show no value for codec configuration in smaller screen

* feat: implement configurable codec for download & streaming music
2023-09-28 17:02:41 +06:00
Kingkor Roy Tirtho
94c386638f feat: add restore default settings button 2023-09-27 13:34:19 +06:00
Kingkor Roy Tirtho
d3b7a435f9 chore: remove openFile call 2023-09-26 22:35:25 +06:00
Kingkor Roy Tirtho
b3cf639ee2 fix(android ): file_selector getDirectoryPath returns unusable content urls #720 2023-09-26 22:34:21 +06:00
Kingkor Roy Tirtho
ae2745fdb7 refactor: fix caching isn't working with spotify 0.12 2023-09-26 20:22:05 +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
c325911c0d feat: configurable audio normalization switch 2023-09-17 00:39:00 +06:00
Kingkor Roy Tirtho
5c5dbf69ec feat: add Amoled theme #724 2023-09-16 12:35:46 +06:00
Kingkor Roy Tirtho
ab0fe5bdfa
Playlist info editing (#708)
* feat: playlist metadata edit support

* refactor: replace file_picker with file_selector
2023-09-10 16:39:21 +06:00
Kingkor Roy Tirtho
179d536ccc fix: lyrics page text contrast 2023-08-26 15:28:58 +06:00
Kingkor Roy Tirtho
8d4602962b feat: ability to toggle system title bar & custom title bar (#185) 2023-08-26 13:52:59 +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
cf7b849cdd feat: web compatibility 2023-08-05 10:49:53 +06:00
Kingkor Roy Tirtho
b492840512 fix: login dialog stays after login, mention sp_gaid in tutorial 2023-08-04 21:25:01 +06:00
Kingkor Roy Tirtho
5a563ef428 fix: flags not showing up, html in descriptions 2023-08-04 13:47:26 +06:00
Kingkor Roy Tirtho
929261b6f8
V3 playstore patch (#567)
* chore: add playstore appbundle build step without update checker

* chore: only include playstore upload binary for now

* chore: update build number to patch 1

* chore: rollback

* chore: rollback upload artifact
2023-07-11 09:58:09 +06:00
Kingkor Roy Tirtho
b54ee96233 feat: re-introduce youtube API along with piped 2023-06-30 10:52:44 +06:00
Kingkor Roy Tirtho
699b236ce5 chore: fix dep problem and code style 2023-06-28 17:55:17 +06:00
Kingkor Roy Tirtho
b041887402 chore: remove predownload option 2023-06-28 16:36:50 +06:00
Kingkor Roy Tirtho
60328a6baf feat: show country code piped instance list 2023-06-28 14:23:12 +06:00
Kingkor Roy Tirtho
17a25a501e feat: add piped search mode 2023-06-28 14:05:01 +06:00
Kingkor Roy Tirtho
b78e7f57a0 feat: logs page in settings 2023-06-19 22:36:05 +06:00
Kingkor Roy Tirtho
af6ab5fc2c refactor: use table in about 2023-06-18 15:13:44 +06:00
Kingkor Roy Tirtho
e1c0f5cf1e fix: remove useBreakpoints as it clogs up memory with unnecessary state updates 2023-06-10 13:10:01 +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
6752adc939 feat: Better download manager with download progress 2023-06-08 08:36:56 +06:00
Kingkor Roy Tirtho
bed0d3bd70 feat: piped instance picker on settings 2023-06-04 22:02:14 +06:00
Kingkor Roy Tirtho
19d0ddcdd9 chore: remove tuple and replace with records 2023-05-28 22:18:05 +06:00
Kingkor Roy Tirtho
fb780da327 feat: remove SponsorBlock in favor of YT Music and remove pocketbase backend track support 2023-05-16 10:50:17 +06:00
Kingkor Roy Tirtho
6430a25870 feat: better language picker, adaptive select tile and settings section contrast 2023-05-01 00:44:35 +06:00
Kingkor Roy Tirtho
7b7b1f2647 fix: language changer not working 2023-04-29 14:15:28 +06:00
Kingkor Roy Tirtho
a5c36bbb20 feat: localize settings, about, login, player queue with Bengali and English translations 2023-04-29 13:46:42 +06:00
Kingkor Roy Tirtho
f12d81259f feat: setup localization (l10n) and language switcher, add sidebar and navbar locale 2023-04-29 00:13:37 +06:00
Kingkor Roy Tirtho
31b9249cc8 feat: album art dominant color as accent color (#447) 2023-04-28 12:58:03 +06:00
Kingkor Roy Tirtho
c85ae85002 chore(settings): fix download list tile exception 2023-04-28 09:41:45 +06:00
Kingkor Roy Tirtho
52835b2ce2 feat(local_tracks): delete local track (#484) 2023-04-27 23:19:03 +06:00
Kingkor Roy Tirtho
1cc62c40a0 build: support for enabling or disabling the update checker in build time 2023-04-27 22:18:09 +06:00
Kingkor Roy Tirtho
06a043764d feat: system tray support (#31) 2023-04-10 23:19:14 +06:00
Kingkor Roy Tirtho
80959aa0ca refactor(settings): use dropdown button instead of dropdown menu for smaller selections 2023-04-07 10:07:31 +06:00
Kingkor Roy Tirtho
862c4b8faf feat: use system color scheme 2023-03-16 13:30:17 +06:00
Kingkor Roy Tirtho
bb60b01ef2 feat: color scheme picker dialog vertical list view instead of wrap 2023-03-16 13:19:06 +06:00
Kingkor Roy Tirtho
92a418c8a8 feat: artist card redesign
chore: add license as asset for about
2023-03-12 10:06:37 +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
a4927c7013 refactor: working dissect of platform_ui 2023-03-09 23:24:09 +06:00
Kingkor Roy Tirtho
60ede5f92b feat(theme): use material3 monet for colors and remove background color preference 2023-03-07 10:38:01 +06:00
Kingkor Roy Tirtho
a5b7e5faf0 refactor(authentication): immutable authentication state 2023-02-10 17:30:31 +06:00
Kingkor Roy Tirtho
669e3706da cd: changed the nightly versioning format 2023-02-07 20:00:51 +06:00
Kingkor Roy Tirtho
d68d150d3f feat: failsafe pocketbase requests, removal of unneeded preferences options & vertical playbutton actions 2023-02-06 09:45:20 +06:00
Kingkor Roy Tirtho
1d82bb0987 feat: bring pre download on desktop, disable pre download for long videos
fix: audio service calling self ref of playlist queue provider
2023-02-03 13:21:41 +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
59561abdc2 feat: use typed assets instead of hard coded paths 2023-01-31 14:53:21 +06:00
Kingkor Roy Tirtho
e7acb9ed5c feat: centralized icon collection with new icon set and nav bar labels hidden 2023-01-08 12:08:45 +06:00
Kingkor Roy Tirtho
a4a7f1a74f fix(about): wrong link of License
feat(about): discord server
docs: fix workflow guild and use new blue color scheme for guilds
2023-01-07 22:04:19 +06:00
Kingkor Roy Tirtho
dc96cb38ce feat: new logo and compact search in playlist/album in mobile 2023-01-07 12:16:01 +06:00
Kingkor Roy Tirtho
d495709c99 refactor(blacklist): blacklist page instead of dialog 2023-01-06 17:58:59 +06:00
Kingkor Roy Tirtho
947c14353e feat: black list artist or track 2023-01-06 16:39:01 +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
4cadfa9375 feat: new refined about page, update checker only check for same update channel 2022-12-09 18:03:41 +06:00
Kingkor Roy Tirtho
3282370f74 feat: tablet mode navigation bar & windows semi transparent bg, 2022-12-09 11:25:44 +06:00
Kingkor Roy Tirtho
7c25e1cc8a feat: rename files to snake_case and reorganize folder structure 2022-12-08 11:43:31 +06:00