Commit Graph

56 Commits

Author SHA1 Message Date
Kingkor Roy Tirtho
3aca7372af
chore: Release v3.7.0 (#1552)
* chore: fix analyzer issues

* fix(updater): dead link (#1408)

* docs: broken link in README.md (fixes #1310) (#1311)

* docs: remove appimage link in readme #1082 (#1171)

* Updating Readme according to #1082

Updating Readme according to #1082

* Added explanation

The explanation is now given and the expression is more formal and explanatory, instead of just linking the issue.

* Update use_update_checker.dart

---------

Co-authored-by: MerkomassDev <70111455+MerkomassDev@users.noreply.github.com>
Co-authored-by: Karim <37943746+ksaadDE@users.noreply.github.com>
Co-authored-by: Kingkor Roy Tirtho <krtirtho@gmail.com>

* fix(linux): tray icon not showing #541

upgrade old packages

* fix(search): load more button not working #1417

* fix: spotify friends and user profile icon (mobile) showing when not authenticated #1410

* chore: add docker and m1 based linux arm build

* cd: fix sed failing us

* cd: use docker cask

* fix: windows SSL Certificate error breaking login #905 (#1474)

* 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

* cd: fix windows build error due to nightly version format

* cd: fix github versioning scheme

* chore:  remove assets/ca entry in pubspec.yaml

* fix(macos): Logs directory not created by default #1353

* 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

* refactor: move dart scripts as commands under CLI

* chore: add translated message command to command list

* feat(translations): add Basque translation (#1493)

* added Basque translation

* chore: fix country codes and language native name

---------

Co-authored-by: Kingkor Roy Tirtho <krtirtho@gmail.com>

* feat(translations): add georgian language (#1450)

* feat: add georgian language

* feat: translate more georgian words

* feat(translations): add Finnish translations (#1449)

* docs: broken link in README.md (fixes #1310) (#1311)

* docs: remove appimage link in readme #1082 (#1171)

* Updating Readme according to #1082

Updating Readme according to #1082

* Added explanation

The explanation is now given and the expression is more formal and explanatory, instead of just linking the issue.

* added finnish translation

* chore: fix arb syntax errors and language in l10n entries

---------

Co-authored-by: MerkomassDev <70111455+MerkomassDev@users.noreply.github.com>
Co-authored-by: Karim <37943746+ksaadDE@users.noreply.github.com>
Co-authored-by: Kingkor Roy Tirtho <krtirtho@gmail.com>
Co-authored-by: Onni Nevala <nevalaonni@gmail.com>

* feat(translations): add Indonesian translation (#1426)

* docs: broken link in README.md (fixes #1310) (#1311)

* docs: remove appimage link in readme #1082 (#1171)

* Updating Readme according to #1082

Updating Readme according to #1082

* Added explanation

The explanation is now given and the expression is more formal and explanatory, instead of just linking the issue.

* Add Indonesia translation

---------

Co-authored-by: MerkomassDev <70111455+MerkomassDev@users.noreply.github.com>
Co-authored-by: Karim <37943746+ksaadDE@users.noreply.github.com>
Co-authored-by: Kingkor Roy Tirtho <krtirtho@gmail.com>

* feat(translations): Improve tr locales (#1419)

* docs: broken link in README.md (fixes #1310) (#1311)

* docs: remove appimage link in readme #1082 (#1171)

* Updating Readme according to #1082

Updating Readme according to #1082

* Added explanation

The explanation is now given and the expression is more formal and explanatory, instead of just linking the issue.

* Improve tr locales

---------

Co-authored-by: MerkomassDev <70111455+MerkomassDev@users.noreply.github.com>
Co-authored-by: Karim <37943746+ksaadDE@users.noreply.github.com>
Co-authored-by: Kingkor Roy Tirtho <krtirtho@gmail.com>

* feat(player): add volume slider floating label showing percentage (#1445)

* docs: broken link in README.md (fixes #1310) (#1311)

* docs: remove appimage link in readme #1082 (#1171)

* Updating Readme according to #1082

Updating Readme according to #1082

* Added explanation

The explanation is now given and the expression is more formal and explanatory, instead of just linking the issue.

* add volume level tooltip in volume_slider

---------

Co-authored-by: MerkomassDev <70111455+MerkomassDev@users.noreply.github.com>
Co-authored-by: Karim <37943746+ksaadDE@users.noreply.github.com>
Co-authored-by: Kingkor Roy Tirtho <krtirtho@gmail.com>

* fix: fallback to LRCLIB when lyrics line less than 6 lines #1461

* 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>

* fix: local track not showing up in queue

* feat: local library folder cards

* 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

* fix: some text are garbled in different parts of the app #1463 #1505

* refactor: use replace http with dio and use it as the default

* cd: use dio in cli as well

* chore: fix home feed not showing up

* chore: downloaded tracks folder not opening

* feat: play initially available tracks of playlist/album immediately and fetch rest in background #670

* feat: upgrade to Flutter 3.22.0

* refactor: migrate deprecated warnings

* fix(playback): skipping tracks with unplayable sources instead of falling back #1492

* chore: migrate android gradle to declarative config syntax

* chore: disable impeller for now

* fix(windows): installer tries to install in current directory

* chore: upgrade deps and appbar bg fix

* chore: podspec update

* chore: bump version and generate changelogs

---------

Signed-off-by: Blake Leonard <me@blakes.dev>
Co-authored-by: Kshamendra <github@ghoulcloud.slmail.me>
Co-authored-by: MerkomassDev <70111455+MerkomassDev@users.noreply.github.com>
Co-authored-by: Karim <37943746+ksaadDE@users.noreply.github.com>
Co-authored-by: Josu Igoa <josuigoa@ni.eus>
Co-authored-by: Omari Sopromadze <omari.sopromadze@gmail.com>
Co-authored-by: ctih <78687256+ctih1@users.noreply.github.com>
Co-authored-by: Onni Nevala <nevalaonni@gmail.com>
Co-authored-by: Yusril Rapsanjani <yusriltakeuchi@gmail.com>
Co-authored-by: W͏ I͏ N͏ Z͏ O͏ R͏ T͏ <75412448+mikropsoft@users.noreply.github.com>
Co-authored-by: Akash Pattnaik <akashjio66666@gmail.com>
Co-authored-by: Blake Leonard <blake@1024256.xyz>
2024-06-03 13:45:04 +06:00
Kingkor Roy Tirtho
57ccf16311 refactor: rename providers 2024-04-12 11:06:03 +06:00
Kingkor Roy Tirtho
22a49e56a2
refactor: use tcp server based track matcher (#1386)
* 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
2024-04-11 17:56:41 +06:00
Kingkor Roy Tirtho
5afe823abd feat(lyrics): add LRCLIB lyrics provider as fallback 2024-04-05 00:48:08 +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
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
1cea95bbda refactor: artist name string as extension 2024-03-21 00:30:27 +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
a6cb78380d chore: show icon with error msg #1085 2024-01-24 00:22:14 +06:00
Kingkor Roy Tirtho
e58e18de33 fix: better error message for failing to find lyrics #1085 2024-01-23 23:13:38 +06:00
Kingkor Roy Tirtho
05f9ae6a89 Merge branch 'master' into dev 2023-12-12 20:58:04 +06:00
Alex Stan
66d492b4b3
Fix a typo in lib/pages/lyrics/synced_lyrics.dart (#933)
"Synced lyrics is not ..." -> "Synced lyrics are not ..."
2023-12-08 11:20:22 +06:00
Kingkor Roy Tirtho
b92583d0df feat: improve loading animations 2023-12-04 22:20:47 +06:00
Kingkor Roy Tirtho
dcbb156833 feat(mini_player): show/hide lyrics #851 2023-11-21 22:56:45 +06:00
Kingkor Roy Tirtho
0e07506716 refactor: organize hooks 2023-11-14 19:46:54 +06:00
Kingkor Roy Tirtho
1d77556157 fix: check for unsynced lyrics and error handling for timed lyrics query 2023-11-08 12:26:27 +06:00
Kingkor Roy Tirtho
0eb9ee8648 feat: ability to select/copy lyrics #802 2023-10-14 12:33:43 +06:00
Kingkor Roy Tirtho
179d536ccc fix: lyrics page text contrast 2023-08-26 15:28:58 +06:00
Kingkor Roy Tirtho
a14fb9ec38 feat: jump to specific time on lyric click (#590) 2023-08-26 12:38:29 +06:00
Kingkor Roy Tirtho
fb360035ad fix: window size remains same after exiting mini player (#618) 2023-08-26 11:02:44 +06:00
Kingkor Roy Tirtho
f554f6d43b fix: track stops at last second 2023-06-30 12:10:25 +06:00
Kingkor Roy Tirtho
699b236ce5 chore: fix dep problem and code style 2023-06-28 17:55:17 +06:00
Kingkor Roy Tirtho
df79638fb6 fix: screen breakpoints and persist lyrics delay across screens 2023-06-28 17:00:37 +06:00
Kingkor Roy Tirtho
6b4584e91b fix: lyrics page blur in player and cut off text when line too big 2023-06-28 16:50:05 +06:00
Kingkor Roy Tirtho
925fa86271 feat: download button on each track 2023-06-25 17:03:36 +06:00
Kingkor Roy Tirtho
ce38233de8 feat: player details dialog and separate location of lyrics button in player page 2023-06-15 12:51:33 +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
5f70207076 refactor(playback): migration to ProxyPlaylist based playback 2023-05-13 12:46:56 +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
11fe9ec744 feat(locale): localize search, library, lyrics, artist with both Bengali and English 2023-04-29 10:11:56 +06:00
Kingkor Roy Tirtho
2e8b647a51 feat(mini_player): show/hide UI on hover toggle 2023-04-25 22:30:07 +06:00
Kingkor Roy Tirtho
28ff3216ef fix: mini player not working in release mode 2023-04-15 13:54:11 +06:00
Kingkor Roy Tirtho
625901482a feat(mini_player): remove window shadow 2023-04-15 12:34:45 +06:00
Kingkor Roy Tirtho
471812d789 feat: desktop mini player support 2023-04-15 12:29:07 +06:00
Kingkor Roy Tirtho
54d5907f14 feat: adjust lyric page blurriness and player playbutton 2023-04-06 13:07:56 +06:00
Kingkor Roy Tirtho
7a0fd64cf9 Merge branch 'master' into dev 2023-03-24 20:04:04 +06:00
Kingkor Roy Tirtho
f160ec767d fix: android audio service and notification and fallback for lyrics when anonymous 2023-03-24 19:55:16 +06:00
Kingkor Roy Tirtho
eeb8cabf49 feat: compact and adaptive playbutton card design 2023-03-11 22:41:46 +06:00
Kingkor Roy Tirtho
a0b377104f feat: macos title bar spacing and lyrics page margin separate 2023-03-11 10:50:52 +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
2ebcbc4cea feat(lyrics): lyrics delay working implementation 2023-03-05 00:01:03 +06:00
Kingkor Roy Tirtho
1ce0972b88 refactor: remove un-working lyric delay 2023-03-04 22:59:16 +06:00
Kingkor Roy Tirtho
10d0660972 feat(lyrics): use official spotify API for fetching lyrics and add zoom controls 2023-03-04 22:15:05 +06:00
Kingkor Roy Tirtho
3d9da8b4e3 refactor: use singleton for Queries and Mutations service classes 2023-02-24 15:27:13 +06:00
Kingkor Roy Tirtho
d85867a245 feat: initial integration 2023-02-24 13:56:05 +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
c809d2daba fix: lyrics not changing on track change 2023-01-31 13:51:56 +06:00
Kingkor Roy Tirtho
3db28f43b4 fix: lyrics modal sheet out of safe area so use 80% of screen height instead of full 2023-01-08 14:18:29 +06:00