From ac917818fb60191437be78a4475eb7d698887119 Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Wed, 14 Oct 2026 15:16:36 +0300 Subject: [PATCH] improvements --- lib/modules/alerts/alerts_list_page.dart | 25 ++++++++++++------- .../asset_tracking/map_tracking_page.dart | 17 +++++-------- 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/lib/modules/alerts/alerts_list_page.dart b/lib/modules/alerts/alerts_list_page.dart index 90b0f5fb..c90a40e3 100644 --- a/lib/modules/alerts/alerts_list_page.dart +++ b/lib/modules/alerts/alerts_list_page.dart @@ -4,6 +4,7 @@ import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/modules/alerts/alert_item_view.dart'; import 'package:test_sa/modules/alerts/alert_provider.dart'; +import 'package:test_sa/new_views/app_style/app_color.dart'; import 'package:test_sa/new_views/common_widgets/default_app_bar.dart'; import 'package:test_sa/views/widgets/loaders/lazy_loading.dart'; import 'package:test_sa/views/widgets/loaders/no_data_found.dart'; @@ -19,18 +20,24 @@ class _AlertsListPageState extends State { AlertProvider? _provider; @override - Widget build(BuildContext context) { - _provider = Provider.of(context); - if (_provider!.items == null && !_provider!.isLoading) { - WidgetsBinding.instance.addPostFrameCallback((_) { - _provider!.reset(); - _provider!.getAlerts(); - }); - } + void initState() { + super.initState(); + _provider = Provider.of(context, listen: false); + // if (_provider!.items == null && !_provider!.isLoading) { + WidgetsBinding.instance.addPostFrameCallback((_) { + _provider!.reset(); + _provider!.getAlerts(); + }); + } + @override + Widget build(BuildContext context) { return Consumer(builder: (context, snapshot, _) { final list = snapshot.items ?? []; - if (list.isEmpty && !snapshot.isLoading) { + if (snapshot.isLoading) { + return CircularProgressIndicator(color: AppColor.loadingColor(context)).center; + } + else if (list.isEmpty && !snapshot.isLoading) { return NoDataFound(message: context.translation.noDataFound).center; } return LazyLoading( diff --git a/lib/modules/asset_tracking/map_tracking_page.dart b/lib/modules/asset_tracking/map_tracking_page.dart index e26056d2..59ce2742 100644 --- a/lib/modules/asset_tracking/map_tracking_page.dart +++ b/lib/modules/asset_tracking/map_tracking_page.dart @@ -71,12 +71,6 @@ class _MapTrackingPageState extends State { static const LatLng _fallbackCenter = LatLng(24.81200245073082, 46.624273601310186); - // --------------------------------------------------------------------------- - // Workflow switch: - // true -> NEW: paginated/searchable/multi-select draggable bottom sheet - // (see asset_tracking_draggable_sheet.dart) - // false -> EXISTING: "Assets found on this floor" UpwardExpansionTile + dropdown - // --------------------------------------------------------------------------- static const bool showAsDraggableSheet = false; /// NEW WORKFLOW: current query for the draggable sheet (null until "View" is pressed). @@ -295,8 +289,8 @@ class _MapTrackingPageState extends State { return Polygon( points: base.points, holePointsList: base.holePointsList, - color: isSelected ? AppColor.red30.withOpacity(0.35) : base.color, - borderColor: isSelected ? AppColor.red30 : base.borderColor, + color: isSelected ? AppColor.primary10.withOpacity(0.35) : base.color, + borderColor: isSelected ? AppColor.primary10 : base.borderColor, borderStrokeWidth: base.borderStrokeWidth, // Count is shown as a circular badge marker (see _buildZoneBadgeMarkers). hitValue: zone, @@ -410,6 +404,7 @@ class _MapTrackingPageState extends State { } void _showZoneDetails(GeoZone zone) { + if (zone.assets.isEmpty) return; showModalBottomSheet( context: context, isScrollControlled: true, @@ -558,8 +553,8 @@ class _MapTrackingPageState extends State { labelStyle: AppTextStyles.bodyText2.copyWith(color: AppColor.textColor(context)), labelPlacementCalculator: const PolygonLabelPlacementCalculator.simpleCentroid(), points: list, - color: AppColor.red30.withOpacity(0.3), - borderColor: AppColor.red30, + color: AppColor.primary10.withOpacity(0.3), + borderColor: AppColor.primary10, borderStrokeWidth: 2.0, hitValue: zone, ); @@ -833,7 +828,7 @@ class _ZoneCountBadge extends StatelessWidget { alignment: Alignment.center, decoration: BoxDecoration( shape: BoxShape.circle, - color: AppColor.red30, + color: AppColor.primary10, border: Border.all(color: Colors.white, width: 1), boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.25), blurRadius: 4, offset: const Offset(0, 2))], ),