File tree Expand file tree Collapse file tree 2 files changed +34
-2
lines changed Expand file tree Collapse file tree 2 files changed +34
-2
lines changed Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ import 'package:ht_main/app/bloc/app_bloc.dart';
9
9
import 'package:ht_main/headlines-search/bloc/headlines_search_bloc.dart' ;
10
10
// import 'package:ht_main/headlines-search/widgets/country_item_widget.dart';
11
11
import 'package:ht_main/headlines-search/widgets/source_item_widget.dart' ;
12
+ import 'package:ht_main/headlines-search/widgets/topic_item_widget.dart' ;
12
13
import 'package:ht_main/l10n/l10n.dart' ;
13
14
import 'package:ht_main/router/routes.dart' ;
14
15
import 'package:ht_main/shared/extensions/content_type_extensions.dart' ;
@@ -332,8 +333,7 @@ class _HeadlinesSearchViewState extends State<_HeadlinesSearchView> {
332
333
}
333
334
return tile;
334
335
} else if (feedItem is Topic ) {
335
- // TODO(user): Create a TopicItemWidget similar to CategoryItemWidget
336
- return ListTile (title: Text (feedItem.name));
336
+ return TopicItemWidget (topic: feedItem);
337
337
} else if (feedItem is Source ) {
338
338
return SourceItemWidget (source: feedItem);
339
339
} else if (feedItem is Ad ) {
Original file line number Diff line number Diff line change
1
+ import 'package:flutter/material.dart' ;
2
+ import 'package:go_router/go_router.dart' ;
3
+ import 'package:ht_main/entity_details/view/entity_details_page.dart' ;
4
+ import 'package:ht_main/router/routes.dart' ;
5
+ import 'package:ht_shared/ht_shared.dart' ;
6
+
7
+ /// A simple widget to display a Topic search result.
8
+ class TopicItemWidget extends StatelessWidget {
9
+ const TopicItemWidget ({required this .topic, super .key});
10
+
11
+ final Topic topic;
12
+
13
+ @override
14
+ Widget build (BuildContext context) {
15
+ return ListTile (
16
+ title: Text (topic.name),
17
+ subtitle: topic.description.isNotEmpty
18
+ ? Text (
19
+ topic.description,
20
+ maxLines: 2 ,
21
+ overflow: TextOverflow .ellipsis,
22
+ )
23
+ : null ,
24
+ onTap: () {
25
+ context.push (
26
+ Routes .topicDetails,
27
+ extra: EntityDetailsPageArguments (entity: topic),
28
+ );
29
+ },
30
+ );
31
+ }
32
+ }
You can’t perform that action at this time.
0 commit comments