git commit

Upload code that can run
This commit is contained in:
2025-09-27 20:26:37 +08:00
parent 4981a23e8e
commit 674097e425
4 changed files with 78 additions and 12 deletions

View File

@@ -29,6 +29,7 @@ const kAppWindowOpacity = 'app_window_opacity';
const kAppEnterToSend = 'app_enter_to_send';
const kAppDefaultPoolId = 'app_default_pool_id';
const kAppMessageDisplayStyle = 'app_message_display_style';
const kAppThemeMode = 'app_theme_mode';
const kFeaturedPostsCollapsedId =
'featured_posts_collapsed_id'; // Key for storing the ID of the collapsed featured post
@@ -72,6 +73,7 @@ sealed class AppSettings with _$AppSettings {
required double windowOpacity, // The window opacity for desktop platforms
required String? defaultPoolId,
required String messageDisplayStyle,
required String? themeMode,
}) = _AppSettings;
}
@@ -94,6 +96,7 @@ class AppSettingsNotifier extends _$AppSettingsNotifier {
windowOpacity: prefs.getDouble(kAppWindowOpacity) ?? 1.0,
defaultPoolId: prefs.getString(kAppDefaultPoolId),
messageDisplayStyle: prefs.getString(kAppMessageDisplayStyle) ?? 'bubble',
themeMode: prefs.getString(kAppThemeMode) ?? 'system',
);
}
@@ -207,6 +210,12 @@ class AppSettingsNotifier extends _$AppSettingsNotifier {
state = state.copyWith(windowOpacity: value);
Future(() => windowManager.setOpacity(value));
}
void setThemeMode(String value) {
final prefs = ref.read(sharedPreferencesProvider);
prefs.setString(kAppThemeMode, value);
state = state.copyWith(themeMode: value);
}
}
final updateInfoProvider =