1
- import 'package:apidash/services/services.dart' ;
2
- import 'package:apidash_design_system/apidash_design_system.dart' ;
3
1
import 'package:flutter/material.dart' ;
4
2
import 'package:hooks_riverpod/hooks_riverpod.dart' ;
3
+ import 'package:apidash_design_system/apidash_design_system.dart' ;
5
4
import 'package:apidash/providers/providers.dart' ;
6
5
import 'package:apidash/widgets/widgets.dart' ;
7
- import 'package:apidash /consts.dart' ;
6
+ import '../../.. /consts.dart' ;
8
7
9
8
class HistorySidebarHeader extends ConsumerWidget {
10
9
const HistorySidebarHeader ({super .key});
11
10
12
11
@override
13
12
Widget build (BuildContext context, WidgetRef ref) {
14
13
final mobileScaffoldKey = ref.read (mobileScaffoldKeyStateProvider);
14
+ final sm = ScaffoldMessenger .of (context);
15
15
return Padding (
16
16
padding: kPe4,
17
17
child: Row (
@@ -29,7 +29,30 @@ class HistorySidebarHeader extends ConsumerWidget {
29
29
color: Theme .of (context).brightness == Brightness .dark
30
30
? kColorDarkDanger
31
31
: kColorLightDanger,
32
- onPressed: () => hiveHandler.clearAllHistory (),
32
+ onPressed: () {
33
+ showOkCancelDialog (
34
+ context,
35
+ dialogTitle: kTitleClearHistory,
36
+ content: kMsgClearHistory,
37
+ onClickOk: () async {
38
+ sm.hideCurrentSnackBar ();
39
+ try {
40
+ await ref
41
+ .read (historyMetaStateNotifier.notifier)
42
+ .clearAllHistory ();
43
+ sm.showSnackBar (getSnackBar (
44
+ kMsgClearHistorySuccess,
45
+ ));
46
+ } catch (e) {
47
+ debugPrint ("Clear History Stack: $e " );
48
+ sm.showSnackBar (getSnackBar (
49
+ kMsgClearHistoryError,
50
+ color: kColorRed,
51
+ ));
52
+ }
53
+ },
54
+ );
55
+ },
33
56
),
34
57
ADIconButton (
35
58
icon: Icons .manage_history_rounded,
0 commit comments