Skip to content

Commit 6e97d36

Browse files
committed
fix(settings): handle missing user settings
- Added default settings on creation - Improved error handling - Added DisplaySettings, FeedDisplayPreferences - Used default values for user settings - Updated UserAppSettings model
1 parent ee066ed commit 6e97d36

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

lib/settings/bloc/settings_bloc.dart

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,23 @@ class SettingsBloc extends Bloc<SettingsEvent, SettingsState> {
3535
);
3636
emit(SettingsLoadSuccess(userAppSettings: userAppSettings));
3737
} on NotFoundException {
38-
final defaultSettings = UserAppSettings(id: event.userId!);
38+
final defaultSettings = UserAppSettings(
39+
id: event.userId!,
40+
displaySettings: const DisplaySettings(
41+
baseTheme: AppBaseTheme.system,
42+
accentTheme: AppAccentTheme.defaultBlue,
43+
fontFamily: 'SystemDefault',
44+
textScaleFactor: AppTextScaleFactor.medium,
45+
fontWeight: AppFontWeight.regular,
46+
),
47+
language: 'en',
48+
feedPreferences: const FeedDisplayPreferences(
49+
headlineDensity: HeadlineDensity.standard,
50+
headlineImageStyle: HeadlineImageStyle.largeThumbnail,
51+
showSourceInHeadlineFeed: true,
52+
showPublishDateInHeadlineFeed: true,
53+
),
54+
);
3955
await _userAppSettingsRepository.create(item: defaultSettings);
4056
emit(SettingsLoadSuccess(userAppSettings: defaultSettings));
4157
} on HtHttpException catch (e) {

0 commit comments

Comments
 (0)