Add status load comments button

merge-requests/67/merge
Hank Grabowski 2022-11-22 09:53:35 -05:00
rodzic 91d1267659
commit 9d8f914df0
1 zmienionych plików z 12 dodań i 16 usunięć

Wyświetl plik

@ -2,7 +2,7 @@ import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart'; import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';
import 'package:logging/logging.dart'; import 'package:logging/logging.dart';
import 'package:result_monad/result_monad.dart'; import 'package:provider/provider.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
import '../../globals.dart'; import '../../globals.dart';
@ -36,6 +36,7 @@ class _StatusControlState extends State<StatusControl> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final manager = context.watch<TimelineManager>();
_logger.finest('Building ${item.entry.toShortString()}'); _logger.finest('Building ${item.entry.toShortString()}');
return Padding( return Padding(
padding: const EdgeInsets.all(8.0), padding: const EdgeInsets.all(8.0),
@ -59,7 +60,13 @@ class _StatusControlState extends State<StatusControl> {
const VerticalPadding( const VerticalPadding(
height: 5, height: 5,
), ),
buildChildComments(context), if (entry.parentId.isEmpty &&
entry.engagementSummary.repliesCount > 0)
TextButton(
onPressed: () async => await manager.refreshPost(item.id),
child: Text('Load Comments'),
),
if (item.totalChildren > 0) buildChildComments(context),
], ],
), ),
); );
@ -90,9 +97,9 @@ class _StatusControlState extends State<StatusControl> {
ElapsedDateUtils.epochSecondsToString(entry.backdatedTimestamp), ElapsedDateUtils.epochSecondsToString(entry.backdatedTimestamp),
style: Theme.of(context).textTheme.caption, style: Theme.of(context).textTheme.caption,
), ),
Text( // Text(
item.id, // item.id,
), // ),
], ],
), ),
], ],
@ -192,17 +199,6 @@ class _StatusControlState extends State<StatusControl> {
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
if (entry.parentId.isEmpty)
ElevatedButton(
onPressed: () async {
await getIt<TimelineManager>()
.refreshPost(item.id)
.andThenSuccessAsync((newItem) async => setState(() {}));
},
child: Center(
child: Text('Load All'),
),
),
Icon(Icons.subdirectory_arrow_right), Icon(Icons.subdirectory_arrow_right),
Expanded( Expanded(
child: Column( child: Column(