tetraq/lib/core/theme_manager.dart

33 lines
1.1 KiB
Dart
Raw Normal View History

2026-03-04 21:00:00 +01:00
// ===========================================================================
// FILE: lib/core/theme_manager.dart
// ===========================================================================
2026-02-27 23:35:54 +01:00
import 'package:flutter/material.dart';
import 'app_colors.dart';
import '../services/storage_service.dart';
2026-03-04 21:00:00 +01:00
import '../services/audio_service.dart'; // <-- NUOVO IMPORT PER LA MUSICA
2026-02-27 23:35:54 +01:00
class ThemeManager extends ChangeNotifier {
late AppThemeType _currentThemeType;
ThemeManager() {
// Quando l'app parte, legge il tema dalla memoria!
_currentThemeType = AppThemeType.values[StorageService.instance.savedThemeIndex];
2026-03-04 21:00:00 +01:00
// Fai partire subito la colonna sonora del tema salvato!
AudioService.instance.playBgm(_currentThemeType);
2026-02-27 23:35:54 +01:00
}
AppThemeType get currentThemeType => _currentThemeType;
ThemeColors get currentColors => AppColors.getTheme(_currentThemeType);
void setTheme(AppThemeType type) {
_currentThemeType = type;
StorageService.instance.saveTheme(type); // Salva la scelta nel "disco fisso"
2026-03-04 21:00:00 +01:00
// Cambia magicamente la canzone in sottofondo!
AudioService.instance.playBgm(type);
2026-02-27 23:35:54 +01:00
notifyListeners();
}
}