Skip to content

Commit 7b0195e

Browse files
committed
refactor(account): Improve saved headlines page
- Handle loading and failure states - Load prefs on user change in AccountBloc - Corrected event name
1 parent 913d38f commit 7b0195e

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed

lib/account/view/saved_headlines_page.dart

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ class SavedHeadlinesPage extends StatelessWidget {
2828
appBar: AppBar(title: Text(l10n.accountSavedHeadlinesTile)),
2929
body: BlocBuilder<AccountBloc, AccountState>(
3030
builder: (context, state) {
31-
if (state.status == AccountStatus.loading &&
32-
state.preferences == null) {
31+
// Initial load or loading state for preferences
32+
if (state.status == AccountStatus.loading && state.preferences == null) {
3333
return const LoadingStateWidget(
3434
icon: Icons.bookmarks_outlined,
3535
headline: 'Loading Saved Headlines...', // Placeholder
@@ -38,19 +38,19 @@ class SavedHeadlinesPage extends StatelessWidget {
3838
);
3939
}
4040

41-
if (state.status == AccountStatus.failure &&
42-
state.preferences == null) {
41+
// Failure to load preferences
42+
if (state.status == AccountStatus.failure && state.preferences == null) {
4343
return FailureStateWidget(
4444
message:
4545
state.errorMessage ??
4646
'Could not load saved headlines.', // Placeholder
4747
onRetry: () {
4848
if (state.user?.id != null) {
4949
context.read<AccountBloc>().add(
50-
AccountLoadContentPreferencesRequested(
51-
userId: state.user!.id,
52-
),
53-
);
50+
AccountLoadUserPreferences( // Corrected event name
51+
userId: state.user!.id,
52+
),
53+
);
5454
}
5555
},
5656
);
@@ -59,11 +59,11 @@ class SavedHeadlinesPage extends StatelessWidget {
5959
final savedHeadlines = state.preferences?.savedHeadlines ?? [];
6060

6161
if (savedHeadlines.isEmpty) {
62-
return const InitialStateWidget(
62+
return const InitialStateWidget(
6363
icon: Icons.bookmark_add_outlined,
64-
headline: 'No Saved Headlines', // Placeholder
64+
headline: 'No Saved Headlines', // Placeholder - Reverted
6565
subheadline:
66-
"You haven't saved any articles yet. Start exploring!", // Placeholder
66+
"You haven't saved any articles yet. Start exploring!", // Placeholder - Reverted
6767
);
6868
}
6969

@@ -103,6 +103,7 @@ class SavedHeadlinesPage extends StatelessWidget {
103103
),
104104
trailing: trailingButton,
105105
);
106+
break;
106107
case HeadlineImageStyle.smallThumbnail:
107108
tile = HeadlineTileImageStart(
108109
headline: headline,
@@ -114,6 +115,7 @@ class SavedHeadlinesPage extends StatelessWidget {
114115
),
115116
trailing: trailingButton,
116117
);
118+
break;
117119
case HeadlineImageStyle.largeThumbnail:
118120
tile = HeadlineTileImageTop(
119121
headline: headline,
@@ -125,6 +127,7 @@ class SavedHeadlinesPage extends StatelessWidget {
125127
),
126128
trailing: trailingButton,
127129
);
130+
break;
128131
}
129132
return tile;
130133
},

0 commit comments

Comments
 (0)