diff --git a/lib/components/Lyrics.dart b/lib/components/Lyrics.dart index 1e70891c..735e00f6 100644 --- a/lib/components/Lyrics.dart +++ b/lib/components/Lyrics.dart @@ -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(playback.currentTrack!.artists ?? []), - apiKey: userPreferences.geniusAccessToken!, + apiKey: userPreferences.geniusAccessToken, optimizeQuery: true, ); }, [playback.currentTrack]); diff --git a/lib/components/Settings.dart b/lib/components/Settings.dart index 3ab93e98..ed5609f5 100644 --- a/lib/components/Settings.dart +++ b/lib/components/Settings.dart @@ -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 ?? ""); diff --git a/lib/provider/UserPreferences.dart b/lib/provider/UserPreferences.dart index 7e881377..b9a70cf3 100644 --- a/lib/provider/UserPreferences.dart +++ b/lib/provider/UserPreferences.dart @@ -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: ""));