Fix Focus Mode setting shouldn't be updated on construction of Riverpod provider

This commit is contained in:
Hank Grabowski 2024-08-26 14:59:07 -04:00
parent ea407da655
commit 70f2d4e2a1

View file

@ -12,7 +12,7 @@ part 'focus_mode.g.dart';
class FocusMode extends _$FocusMode {
Timer? _disableTimer;
void setMode(FocusModeData newMode) {
void setMode(FocusModeData newMode, {bool updateSettingsService = true}) {
_disableTimer?.cancel();
var updatedState = newMode;
if (newMode.enabled && newMode.disableTime != null) {
@ -25,14 +25,16 @@ class FocusMode extends _$FocusMode {
});
}
getIt<SettingsService>().focusModeData = updatedState;
if (updateSettingsService) {
getIt<SettingsService>().focusModeData = updatedState;
}
state = updatedState;
}
@override
FocusModeData build() {
final storedFocusMode = getIt<SettingsService>().focusModeData;
setMode(storedFocusMode);
setMode(storedFocusMode, updateSettingsService: false);
return state;
}
}