mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-24 06:48:38 +02:00
service status button updates (#1388)
* service status button updates * small fix * update wording
This commit is contained in:
@@ -106,10 +106,10 @@ class _DashboardPageView extends BasePage {
|
||||
Widget leading(BuildContext context) {
|
||||
return Observer(
|
||||
builder: (context) {
|
||||
if (dashboardViewModel.isEnabledBulletinAction) {
|
||||
return ServicesUpdatesWidget(dashboardViewModel.getServicesStatus());
|
||||
}
|
||||
return const SizedBox();
|
||||
return ServicesUpdatesWidget(
|
||||
dashboardViewModel.getServicesStatus(),
|
||||
enabled: dashboardViewModel.isEnabledBulletinAction,
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
@@ -107,7 +107,10 @@ class DesktopSidebarWrapper extends BasePage {
|
||||
: unselectedIconPath,
|
||||
),
|
||||
SideMenuItem(
|
||||
widget: ServicesUpdatesWidget(dashboardViewModel.getServicesStatus()),
|
||||
widget: ServicesUpdatesWidget(
|
||||
dashboardViewModel.getServicesStatus(),
|
||||
enabled: dashboardViewModel.isEnabledBulletinAction,
|
||||
),
|
||||
isSelected: desktopSidebarViewModel.currentPage == SidebarItem.status,
|
||||
onTap: () {},
|
||||
),
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
import 'package:cake_wallet/di.dart';
|
||||
import 'package:cake_wallet/entities/preferences_key.dart';
|
||||
import 'package:cake_wallet/entities/service_status.dart';
|
||||
import 'package:cake_wallet/generated/i18n.dart';
|
||||
import 'package:cake_wallet/src/widgets/alert_with_one_action.dart';
|
||||
import 'package:cake_wallet/src/widgets/primary_button.dart';
|
||||
import 'package:cake_wallet/src/widgets/service_status_tile.dart';
|
||||
import 'package:cake_wallet/themes/extensions/dashboard_page_theme.dart';
|
||||
import 'package:cake_wallet/themes/extensions/wallet_list_theme.dart';
|
||||
import 'package:cake_wallet/utils/show_pop_up.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_svg/flutter_svg.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
@@ -12,8 +15,9 @@ import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
class ServicesUpdatesWidget extends StatefulWidget {
|
||||
final Future<ServicesResponse> servicesResponse;
|
||||
final bool enabled;
|
||||
|
||||
const ServicesUpdatesWidget(this.servicesResponse, {super.key});
|
||||
const ServicesUpdatesWidget(this.servicesResponse, {super.key, required this.enabled});
|
||||
|
||||
@override
|
||||
State<ServicesUpdatesWidget> createState() => _ServicesUpdatesWidgetState();
|
||||
@@ -24,6 +28,27 @@ class _ServicesUpdatesWidgetState extends State<ServicesUpdatesWidget> {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
if (!widget.enabled) {
|
||||
return InkWell(
|
||||
onTap: () async {
|
||||
await showPopUp<void>(
|
||||
context: context,
|
||||
builder: (BuildContext context) {
|
||||
return AlertWithOneAction(
|
||||
alertTitle: S.current.service_health_disabled,
|
||||
alertContent: S.current.service_health_disabled_message,
|
||||
buttonText: S.current.ok,
|
||||
buttonAction: () => Navigator.of(context).pop(),
|
||||
);
|
||||
});
|
||||
},
|
||||
child: SvgPicture.asset(
|
||||
"assets/images/notification_icon.svg",
|
||||
color: Theme.of(context).extension<DashboardPageTheme>()!.pageTitleTextColor,
|
||||
width: 30,
|
||||
),
|
||||
);
|
||||
}
|
||||
return Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: FutureBuilder<ServicesResponse>(
|
||||
|
||||
Reference in New Issue
Block a user