Commit Graph

643 Commits

Author SHA1 Message Date
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
1089e90511 refactor: use shadcn CardImage for playbutton card 2024-12-21 15:21:13 +06:00
Kingkor Roy Tirtho
04190f2dda refactor: use DropdownMenu for adaptive pop sheet list, shadcn widgets for bottom player and player controls and actions 2024-12-21 12:42:51 +06:00
Kingkor Roy Tirtho
57c8f85731 fix: playlist displaying descriptions unescaped html #1784 2024-09-15 17:45:57 +06:00
Kingkor Roy Tirtho
1119c0e47d chore: pushed pages not closing 2024-09-15 17:23:11 +06:00
Kingkor Roy Tirtho
5ff36a8643 fix(android): pressing back while the player is open doesn't take to previous page
#1388
2024-09-15 14:53:41 +06:00
Kingkor Roy Tirtho
9cb828bb55 fix: handle dublicated items in playback queue correctly #1852 2024-09-15 13:59:09 +06:00
Kingkor Roy Tirtho
36d161c05a fix(desktop): scrollbar overlapping with more options of tracks and playlists 2024-09-15 10:51:13 +06:00
Kingkor Roy Tirtho
3afe3cea80 Squashed commit of the following:
commit e160d4f561ff2e945fd67bf12b223c012da58b1e
Author: Kingkor Roy Tirtho <krtirtho@gmail.com>
Date:   Sat Sep 14 10:48:08 2024 +0600

    fix: pagination issues in playlist and album pages
2024-09-14 10:48:39 +06:00
Kingkor Roy Tirtho
9294858fb6 fix: start radio not working #1629 2024-08-15 20:38:14 +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
b211813213 fix: go to track album shows up for local tracks 2024-07-29 17:23:13 +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
44861a9f5c fix: unescape html escape values #1300 2024-07-09 22:13:05 +06:00
Kingkor Roy Tirtho
1cfd377c29 refactor: synced lyric cache to use drift db 2024-06-30 11:01:40 +06:00
Kingkor Roy Tirtho
08ac29c979 refactor(stats): migrate stats to use drift db 2024-06-29 17:05:06 +06:00
Kingkor Roy Tirtho
75173e5096 refactor: use provider based is track loading implementation 2024-06-24 21:01:09 +06:00
Kingkor Roy Tirtho
a83dd64476 refactor: replace all instances of proxy playlist 2024-06-24 20:52:40 +06:00
Kingkor Roy Tirtho
b9b7d5c8aa refactor: lastfm scrobbling to drift db 2024-06-17 18:08:57 +06:00
Kingkor Roy Tirtho
d18f74fd65 refactor: use drift db based authentication 2024-06-16 22:33:23 +06:00
Kingkor Roy Tirtho
bf6cec8d69 refactor(blacklist): use drift sql db instead of hive 2024-06-14 22:23:12 +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
d115e57058 fix: popup menu item opacity 2024-06-09 09:56:29 +06:00
Kingkor Roy Tirtho
7816cb8068 refactor: break down heart button hook into a different file 2024-06-09 09:30:17 +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
b224af21ea refactor: left out modules 2024-06-07 22:34:03 +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
f81219e83e chore: introduce breakpoint enum for constrains 2024-06-07 22:00:16 +06:00
Kingkor Roy Tirtho
5f280a19f4 fix(desktop): titlebar drag to move not working 2024-06-06 13:41:02 +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
f6ba95fb64 chore: upgrade deps and appbar bg fix 2024-06-03 13:13:05 +06:00
Kingkor Roy Tirtho
56241f773a refactor: migrate deprecated warnings 2024-06-02 21:15:11 +06:00
Kingkor Roy Tirtho
02acbd9327 feat: play initially available tracks of playlist/album immediately and fetch rest in background #670 2024-06-01 15:45:06 +06:00
Kingkor Roy Tirtho
c4023aa09d chore: downloaded tracks folder not opening 2024-06-01 13:05:16 +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
Akash Pattnaik
8fad2251b3
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>
2024-05-10 23:16:10 +06:00
Omari Sopromadze
1e7f0e1fe7
feat(translations): add georgian language (#1450)
* feat: add georgian language

* feat: translate more georgian words
2024-05-10 22:37:22 +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
937a706ac9
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
2024-05-04 20:10:19 +06:00
Kingkor Roy Tirtho
9bccbc93c6 fix: spotify friends and user profile icon (mobile) showing when not authenticated #1410 2024-04-18 00:19:47 +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
930539ca48 chore: fix analyzer issues 2024-04-15 19:47:15 +06:00
Kingkor Roy Tirtho
6f4c308457 chore: fix shuffle doesn't move active track to top and library gridview with floating filter field 2024-04-15 19:11:59 +06:00
Kingkor Roy Tirtho
9e25c742d4
feat: add Spotify homepage personalized recommendations (#1402)
* feat: add spotify homepage recommendations

* chore: bring back made for user sectin
2024-04-14 12:10:34 +06:00
Kingkor Roy Tirtho
2d1f4b9380 chore: fix song link button not showing up 2024-04-13 13:12:20 +06:00
Kingkor Roy Tirtho
39e97eef34 feat: add user profile page 2024-04-13 13:05:41 +06:00
Kingkor Roy Tirtho
f82253c6ba refactor: show devices in sidebar in big screens 2024-04-13 10:22:59 +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
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
044d3b4820 refactor: use CustomScrollView in player queue 2024-03-28 22:49:40 +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
1a6cea926f refactor: use widget for artist link instead of a utility function 2024-03-21 00:38:10 +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
b354f57d4e chore: hide songlink when not youtube track 2024-03-08 19:12:40 +06:00
Kingkor Roy Tirtho
ca76a39910 fix: album images are small in certain places 2024-03-08 19:10:33 +06:00
Kingkor Roy Tirtho
b0970090b1 chore: add song link text in player view shortcut 2024-03-01 19:16:52 +06:00
Kingkor Roy Tirtho
96a2a1f5a6 feat: add getting started page 2024-02-25 22:01:38 +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
6f71e52ea8 fix: no draggable scrollbar in playlist/album page #1158 2024-02-24 22:53:30 +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
3294f657fe fix(android): system back button in player page exits the app 2024-02-18 23:05:43 +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
5ad5d16683 chore: use query as key name for endless playback radio search 2024-01-31 18:07:40 +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
2168a640af feat: add create playlist button in add playlist dialog 2024-01-27 21:59:10 +06:00
Kingkor Roy Tirtho
62fde50442 fix: alternative source doesn't persist on next restart #840 2024-01-27 20:59:50 +06:00
Kingkor Roy Tirtho
6242200905 feat: haptic feedback on long press and reordering actions 2024-01-24 12:29:35 +06:00
Kingkor Roy Tirtho
eb7477273f chore: fix wrong audio source result showing up in Alternative track sheet 2024-01-24 12:11:49 +06:00
Kingkor Roy Tirtho
b9417ca357 fix(macos): backbutton and window button overlap and unused empty space on home 2024-01-24 12:03:31 +06:00
Kingkor Roy Tirtho
a752cf4c97 fix: track index not showing after 200 2024-01-24 11:50:48 +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
682e88e0c5 fix: releases section is empty when user doesn't follow any artists #1104 2024-01-22 19:09:57 +06:00
Kingkor Roy Tirtho
a8e9b824f3 fix: alternative searched sources doesn't play #1059 2024-01-22 19:02:10 +06:00
Kingkor Roy Tirtho
59e0e6bb65 fix: track pad horizontal scrolling not working 2024-01-22 18:03:08 +06:00
Kingkor Roy Tirtho
27057ea0c8 fix(macos): system tray shows name and sidebar weird gap #1083 2024-01-22 17:20:30 +06:00
Kingkor Roy Tirtho
a76ee0acf2 chore: new liked tracks image 2024-01-08 22:57:03 +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
c203ac69ee fix: search page vertical scrollbar moves on horizontal scroll #1017 2024-01-05 20:02:27 +06:00
Kingkor Roy Tirtho
988a975bf1 feat(deep-link): add track opening page 2024-01-05 14:14:15 +06:00
Kingkor Roy Tirtho
0f6d0a44ea chore: fix not closing player 2023-12-30 23:13:27 +06:00
Kingkor Roy Tirtho
b4999993bf fix: wrong artist name sent while scrobbling #958 2023-12-29 18:28:25 +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
82ed5e9057 feat: compact genre view in home page 2023-12-08 22:18:18 +06:00
Kingkor Roy Tirtho
c592cff1ee chore: fix padding issues 2023-12-08 18:41:57 +06:00
Kingkor Roy Tirtho
b04d8849e7 fix: track view header title overflow and player view drag glitch 2023-12-08 14:46:27 +06:00
Kingkor Roy Tirtho
581b241f99 chore: add not found for empty lists 2023-12-08 13:58:12 +06:00
Kingkor Roy Tirtho
b92583d0df feat: improve loading animations 2023-12-04 22:20:47 +06:00