pull to refresh (#1389)

Serhii committed Apr 16, 2024 at 02:04 UTC a0820e8a7358fb25d304979fba1d9cfe0519925a
2 files changed +20 -5
lib/src/screens/dashboard/dashboard_page.dart
+16 -5
@@ -51,14 +51,25 @@ class DashboardPage extends StatelessWidget {
51
52 @override
53 Widget build(BuildContext context) {
54 + final screenHeight = MediaQuery.of(context).size.height;
55 return Scaffold(
56 body: Observer(
57 builder: (_) {
57 - final dashboardPageView = _DashboardPageView(
58 - balancePage: balancePage,
59 - bottomSheetService: bottomSheetService,
60 - dashboardViewModel: dashboardViewModel,
61 - addressListViewModel: addressListViewModel,
58 + final dashboardPageView = RefreshIndicator(
59 + displacement: screenHeight * 0.1,
60 + onRefresh: () async => await dashboardViewModel.refreshDashboard(),
61 + child: SingleChildScrollView(
62 + physics: AlwaysScrollableScrollPhysics(),
63 + child: Container(
64 + height: screenHeight,
65 + child: _DashboardPageView(
66 + balancePage: balancePage,
67 + bottomSheetService: bottomSheetService,
68 + dashboardViewModel: dashboardViewModel,
69 + addressListViewModel: addressListViewModel,
70 + ),
71 + ),
72 + ),
73 );
74
75 if (DeviceInfo.instance.isDesktop) {
lib/view_model/dashboard/dashboard_view_model.dart
+4
@@ -547,4 +547,8 @@ abstract class DashboardViewModelBase with Store {
547 return ServicesResponse([], false, '');
548 }
549 }
550 +
551 + Future<void> refreshDashboard() async {
552 + reconnect();
553 + }
554 }