✨ Lyrics & sync with album color
This commit is contained in:
@ -4,6 +4,7 @@ import 'package:get/get.dart';
|
||||
import 'package:palette_generator/palette_generator.dart';
|
||||
import 'package:rhythm_box/providers/audio_player.dart';
|
||||
import 'package:rhythm_box/providers/history.dart';
|
||||
import 'package:rhythm_box/providers/palette.dart';
|
||||
import 'package:rhythm_box/providers/scrobbler.dart';
|
||||
import 'package:rhythm_box/providers/skip_segments.dart';
|
||||
import 'package:rhythm_box/providers/user_preferences.dart';
|
||||
@ -16,7 +17,6 @@ import 'package:rhythm_box/widgets/auto_cache_image.dart';
|
||||
|
||||
class AudioPlayerStreamProvider extends GetxController {
|
||||
late final AudioServices notificationService;
|
||||
final Rxn<PaletteGenerator?> palette = Rxn<PaletteGenerator?>();
|
||||
|
||||
List<StreamSubscription>? _subscriptions;
|
||||
|
||||
@ -58,9 +58,7 @@ class AudioPlayerStreamProvider extends GetxController {
|
||||
|
||||
Future<void> updatePalette() async {
|
||||
if (!Get.find<UserPreferencesProvider>().state.value.albumColorSync) {
|
||||
if (palette.value != null) {
|
||||
palette.value = null;
|
||||
}
|
||||
Get.find<PaletteProvider>().clear();
|
||||
return;
|
||||
}
|
||||
|
||||
@ -74,7 +72,7 @@ class AudioPlayerStreamProvider extends GetxController {
|
||||
(activeTrack.album?.images).asUrlString()!,
|
||||
),
|
||||
);
|
||||
palette.value = newPalette;
|
||||
Get.find<PaletteProvider>().updatePalette(newPalette);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:palette_generator/palette_generator.dart';
|
||||
|
||||
@ -6,6 +7,17 @@ class PaletteProvider extends GetxController {
|
||||
|
||||
void updatePalette(PaletteGenerator? newPalette) {
|
||||
palette.value = newPalette;
|
||||
print('call update!');
|
||||
print(newPalette);
|
||||
if (newPalette != null) {
|
||||
Get.changeTheme(
|
||||
ThemeData.from(
|
||||
colorScheme:
|
||||
ColorScheme.fromSeed(seedColor: newPalette.dominantColor!.color),
|
||||
useMaterial3: true,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
void clear() {
|
||||
|
Reference in New Issue
Block a user