Commit Graph

65 Commits

Author SHA1 Message Date
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
9f2d423cfe
feat: add invidious audio source and fix auto skipping tracks (#2005)
* feat: add invidious audio source with automatic track switch even on server playback endpoint

* fix: switching to different source on playback endpoint error not working

* chore: update invidious version

* feat: invidious instances customizability
2024-10-17 22:33:03 +06:00
Kingkor Roy Tirtho
33ecbe066c feat(desktop): show error dialog if webview is not found on login #1871 2024-09-15 10:31:20 +06:00
Kingkor Roy Tirtho
9b7a7ef1cf chore: update translations and refactor to flutter 3.22 ThemeData 2024-08-10 22:54:25 +06:00
Josu Igoa
7408a87860
feat(translations): make state page's hard coded strings translatable (#1719) 2024-08-10 22:06:15 +06:00
Kingkor Roy Tirtho
abfdbc63ce fix: Too many artists for a track causing overflows
#1470
2024-07-09 23:08:21 +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
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
4d6af8c0a7 chore: add translations for getting started screen 2024-02-25 22:48:27 +06:00
Kingkor Roy Tirtho
9095a8c8f8 feat: add songlink based track matching for youtube and open song link button
songlink.com will provide accurate match verified by community for most spotify tracks improving overall match accuracy for Youtube audio source
2024-02-25 11:13:23 +06:00
Kingkor Roy Tirtho
ab08c82c8d fix: friends list not scrollable with mouse drag 2024-02-24 18:38:18 +06:00
Kuyumee
6f8271f5e9
feat: Sort by Duration (#1238) 2024-02-18 23:35:42 +06:00
Kingkor Roy Tirtho
9f9244062a feat(playlist): show confirmation before deleting user playlist #1222 2024-02-17 23:01:14 +06:00
Kingkor Roy Tirtho
9dfd49ca04 feat: add endless playback support #285 2024-01-31 18:00:54 +06:00
Kingkor Roy Tirtho
4defeefe7e feat: start radio support 2024-01-31 16:33:50 +06:00
Kingkor Roy Tirtho
a6cb78380d chore: show icon with error msg #1085 2024-01-24 00:22:14 +06:00
Kingkor Roy Tirtho
79839329b0
feat: add spotify friends activity (#1130)
* feat: add spotify friend endpoint

* feat: add friend activity in home screen

* fix: when no friends, dummy UI still shows giving the user a false hope of friendship :'(
2024-01-23 22:44:00 +06:00
Kingkor Roy Tirtho
29f162c801 chore: remove the sp_key cookie requirement as no longer necessary 2024-01-05 21:25:23 +06:00
Kingkor Roy Tirtho
2fb16e64e9 fix: genre border issues 2023-12-12 21:27:14 +06:00
Kingkor Roy Tirtho
956f4b198b chore: fix translations issues 2023-12-08 22:37:56 +06:00
Kingkor Roy Tirtho
24a2294512 feat: toggle for discord rpc 2023-12-08 13:27:31 +06:00
Kingkor Roy Tirtho
b0beeca0cb feat: Add Go to Album option in track option #917 2023-12-02 22:41:52 +06:00
Kingkor Roy Tirtho
2a87a0fe28 chore: change API Type to Audio Source 2023-12-02 22:17:53 +06:00
Kingkor Roy Tirtho
353ca79be3 fix: spotube doesn't exit properly, hangs in infinite loop #768 2023-10-29 20:59:56 +06:00
Kingkor Roy Tirtho
edb8928d53 chore: remove unused save lyrics toggle 2023-10-15 10:56:09 +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
2eb3754953 refactor: playlist editor dialog 2023-09-27 12:27:32 +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
b9d5c70301 feat: search loading animation 2023-09-10 18:19:47 +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
8d4602962b feat: ability to toggle system title bar & custom title bar (#185) 2023-08-26 13:52:59 +06:00
Kingkor Roy Tirtho
f23e8719ee fix: replace connectivity_plus with internet_connection_checker 2023-08-26 10:52:19 +06:00
Kingkor Roy Tirtho
c69f81ec6f feat: show error dialog on piped API 500 error 2023-08-15 13:00:38 +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
b492840512 fix: login dialog stays after login, mention sp_gaid in tutorial 2023-08-04 21:25:01 +06:00
Kingkor Roy Tirtho
888a4b1162
fix(linux): crash on no secret service (#608) 2023-08-02 15:12:55 +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
Sir RaptaG
b573bf000f
Fix a dash 2023-07-03 14:49:22 +03:00
Kingkor Roy Tirtho
b54ee96233 feat: re-introduce youtube API along with piped 2023-06-30 10:52:44 +06:00
Kingkor Roy Tirtho
17a25a501e feat: add piped search mode 2023-06-28 14:05:01 +06:00
Kingkor Roy Tirtho
ba3f4281f1 feat: add german locale 2023-06-25 14:19:33 +06:00
Kingkor Roy Tirtho
b78e7f57a0 feat: logs page in settings 2023-06-19 22:36:05 +06:00
Kingkor Roy Tirtho
4a75f3dbd1 feat: add sleep timer support 2023-06-19 21:35:58 +06:00
Kingkor Roy Tirtho
0620b62023 refactor: extend list item for PopSheetEntry for better interactivity 2023-06-18 22:13:06 +06:00
Kingkor Roy Tirtho
b4713e377a feat: sort tracks by newest and oldest dates 2023-06-18 15:28:44 +06:00