final fix of the lyrics issue

This commit is contained in:
Kingkor Roy Tirtho 2022-03-21 00:31:36 +06:00
parent 2ec0172741
commit b4e79ce7ff
3 changed files with 9 additions and 8 deletions

View File

@ -18,7 +18,7 @@ class Lyrics extends HookConsumerWidget {
var lyrics = useState({});
bool hasToken = (userPreferences.geniusAccessToken != null ||
(userPreferences.geniusAccessToken?.isNotEmpty ?? false));
(userPreferences.geniusAccessToken.isNotEmpty));
var lyricsFuture = useMemoized(() {
if (playback.currentTrack == null ||
!hasToken ||
@ -29,7 +29,7 @@ class Lyrics extends HookConsumerWidget {
return getLyrics(
playback.currentTrack!.name!,
artistsToString<Artist>(playback.currentTrack!.artists ?? []),
apiKey: userPreferences.geniusAccessToken!,
apiKey: userPreferences.geniusAccessToken,
optimizeQuery: true,
);
}, [playback.currentTrack]);

View File

@ -67,7 +67,7 @@ class Settings extends HookConsumerWidget {
SharedPreferences localStorage =
await SharedPreferences.getInstance();
preferences.setGeniusAccessToken(
geniusAccessToken.value);
geniusAccessToken.value ?? "");
localStorage.setString(
LocalStorageKeys.geniusAccessToken,
geniusAccessToken.value ?? "");

View File

@ -7,15 +7,15 @@ import 'package:shared_preferences/shared_preferences.dart';
import 'package:spotube/models/LocalStorageKeys.dart';
class UserPreferences extends ChangeNotifier {
String? geniusAccessToken;
String geniusAccessToken;
HotKey? nextTrackHotKey;
HotKey? prevTrackHotKey;
HotKey? playPauseHotKey;
UserPreferences({
required this.geniusAccessToken,
this.nextTrackHotKey,
this.prevTrackHotKey,
this.playPauseHotKey,
this.geniusAccessToken,
}) {
onInit();
}
@ -38,7 +38,7 @@ class UserPreferences extends ChangeNotifier {
String? accessToken =
localStorage.getString(LocalStorageKeys.geniusAccessToken);
geniusAccessToken ??= accessToken;
if (accessToken != null) geniusAccessToken = accessToken;
nextTrackHotKey ??= (await _getHotKeyFromLocalStorage(
localStorage,
@ -73,7 +73,7 @@ class UserPreferences extends ChangeNotifier {
}
}
setGeniusAccessToken(String? token) {
setGeniusAccessToken(String token) {
geniusAccessToken = token;
notifyListeners();
}
@ -112,4 +112,5 @@ class UserPreferences extends ChangeNotifier {
}
}
var userPreferencesProvider = ChangeNotifierProvider((_) => UserPreferences());
var userPreferencesProvider =
ChangeNotifierProvider((_) => UserPreferences(geniusAccessToken: ""));