From cd6e133c867249f95540f82d0d20b31b5ad8d0f5 Mon Sep 17 00:00:00 2001 From: Mathias Mogensen <42929161+Xazin@users.noreply.github.com> Date: Mon, 23 Oct 2023 14:51:59 +0200 Subject: [PATCH] fix: notification settings initial state (#3763) --- .../notifications/notification_settings_cubit.dart | 8 +++++++- frontend/rust-lib/flowy-user/src/entities/user_setting.rs | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/appflowy_flutter/lib/workspace/application/settings/notifications/notification_settings_cubit.dart b/frontend/appflowy_flutter/lib/workspace/application/settings/notifications/notification_settings_cubit.dart index 75874cf432..b495845909 100644 --- a/frontend/appflowy_flutter/lib/workspace/application/settings/notifications/notification_settings_cubit.dart +++ b/frontend/appflowy_flutter/lib/workspace/application/settings/notifications/notification_settings_cubit.dart @@ -18,6 +18,11 @@ class NotificationSettingsCubit extends Cubit { .getNotificationSettings() .then((notificationSettings) { _notificationSettings = notificationSettings; + emit( + state.copyWith( + isNotificationsEnabled: _notificationSettings.notificationsEnabled, + ), + ); _initCompleter.complete(); }); } @@ -26,13 +31,14 @@ class NotificationSettingsCubit extends Cubit { await _initCompleter.future; _notificationSettings.notificationsEnabled = !state.isNotificationsEnabled; - _saveNotificationSettings(); emit( state.copyWith( isNotificationsEnabled: _notificationSettings.notificationsEnabled, ), ); + + _saveNotificationSettings(); } Future _saveNotificationSettings() async { diff --git a/frontend/rust-lib/flowy-user/src/entities/user_setting.rs b/frontend/rust-lib/flowy-user/src/entities/user_setting.rs index 6dab6b4583..a4e91f4a5c 100644 --- a/frontend/rust-lib/flowy-user/src/entities/user_setting.rs +++ b/frontend/rust-lib/flowy-user/src/entities/user_setting.rs @@ -241,6 +241,7 @@ impl std::default::Default for DateTimeSettingsPB { #[derive(ProtoBuf, Serialize, Deserialize, Debug, Clone)] pub struct NotificationSettingsPB { #[pb(index = 1)] + #[serde(default)] pub notifications_enabled: bool, }