fix: add SettingsProvider to SpeedometerViewModel and fix ProviderNotFoundException

- SpeedometerViewModel now requires both LocationRepository and SettingsProvider
- SpeedometerView uses SettingsProvider.currentTheme instead of non-existent Theme provider
- main.dart: SettingsProvider created before SpeedometerViewModel in provider hierarchy
- Restores proper DI wiring after layered architecture refactor
This commit is contained in:
2026-08-23 23:26:03 +09:00
parent fff81719b1
commit 54cec166b4
3 changed files with 15 additions and 21 deletions
+9 -8
View File
@@ -33,19 +33,20 @@ void main() async {
},
),
// UI layer — ViewModels subscribe to repositories
ChangeNotifierProvider<SpeedometerViewModel>(
create: (context) => SpeedometerViewModel(
context.read<LocationRepository>(),
),
),
ChangeNotifierProvider<OverlayViewModel>(
create: (_) => OverlayViewModel(),
),
ChangeNotifierProvider<SettingsProvider>(
create: (context) => SettingsProvider(
context.read<SharedPreferences>(),
),
),
ChangeNotifierProvider<SpeedometerViewModel>(
create: (context) => SpeedometerViewModel(
context.read<LocationRepository>(),
context.read<SettingsProvider>(),
),
),
ChangeNotifierProvider<OverlayViewModel>(
create: (_) => OverlayViewModel(),
),
],
child: const SpeedoApp(),
),