diff --git a/lib/screens/tasks/task_screen.dart b/lib/screens/tasks/task_screen.dart index f0cdbdd..8360b52 100644 --- a/lib/screens/tasks/task_screen.dart +++ b/lib/screens/tasks/task_screen.dart @@ -105,12 +105,14 @@ class _TaskScreenState extends State { _loadTasks(); } catch (e) { debugPrint('Error updating task status: $e'); - ScaffoldMessenger.of(context).showSnackBar( - SnackBar( - content: Text('Error updating task status: $e'), - backgroundColor: Colors.red, - ), - ); + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text('Error updating task status: $e'), + backgroundColor: Colors.red, + ), + ); + } } } @@ -125,12 +127,14 @@ class _TaskScreenState extends State { _loadTasks(); } catch (e) { debugPrint('Error updating task approval: $e'); - ScaffoldMessenger.of(context).showSnackBar( - SnackBar( - content: Text('Error updating task approval: $e'), - backgroundColor: Colors.red, - ), - ); + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text('Error updating task approval: $e'), + backgroundColor: Colors.red, + ), + ); + } } } @@ -161,6 +165,7 @@ class _TaskScreenState extends State { backgroundColor: Theme.of(context).scaffoldBackgroundColor, floatingActionButton: FloatingActionButton( onPressed: () async { + final messenger = ScaffoldMessenger.of(context); final result = await Navigator.push( context, MaterialPageRoute( @@ -169,9 +174,9 @@ class _TaskScreenState extends State { ), ); - if (result == true) { + if (result == true && mounted) { _loadTasks(); - ScaffoldMessenger.of(context).showSnackBar( + messenger.showSnackBar( const SnackBar( content: Text('Task created successfully'), backgroundColor: Colors.green, diff --git a/lib/screens/tickets/ticket_screen.dart b/lib/screens/tickets/ticket_screen.dart index 33cb38b..6e1601a 100644 --- a/lib/screens/tickets/ticket_screen.dart +++ b/lib/screens/tickets/ticket_screen.dart @@ -152,6 +152,7 @@ class _TicketScreenState extends State { backgroundColor: Theme.of(context).scaffoldBackgroundColor, floatingActionButton: FloatingActionButton( onPressed: () async { + final messenger = ScaffoldMessenger.of(context); final result = await Navigator.push( context, MaterialPageRoute( @@ -160,9 +161,9 @@ class _TicketScreenState extends State { ), ); - if (result == true) { + if (result == true && mounted) { refreshTickets(); - ScaffoldMessenger.of(context).showSnackBar( + messenger.showSnackBar( const SnackBar( content: Text('Ticket created successfully'), backgroundColor: Colors.green, diff --git a/lib/screens/workspace/workspace_screen.dart b/lib/screens/workspace/workspace_screen.dart index adfd44b..3ce586c 100644 --- a/lib/screens/workspace/workspace_screen.dart +++ b/lib/screens/workspace/workspace_screen.dart @@ -80,12 +80,14 @@ class _WorkspaceScreenState extends State // Force refresh of the task screen TaskScreen.refreshTasks(); - ScaffoldMessenger.of(context).showSnackBar( - const SnackBar( - content: Text('Task created successfully'), - backgroundColor: Colors.green, - ), - ); + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Task created successfully'), + backgroundColor: Colors.green, + ), + ); + } } }); } @@ -106,12 +108,14 @@ class _WorkspaceScreenState extends State // Force refresh of the ticket screen TicketScreen.refreshTickets(); - ScaffoldMessenger.of(context).showSnackBar( - const SnackBar( - content: Text('Ticket created successfully'), - backgroundColor: Colors.green, - ), - ); + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Ticket created successfully'), + backgroundColor: Colors.green, + ), + ); + } } }); } @@ -132,12 +136,14 @@ class _WorkspaceScreenState extends State // Force refresh of the meeting screen MeetingScreen.refreshMeetings(); - ScaffoldMessenger.of(context).showSnackBar( - const SnackBar( - content: Text('Meeting created successfully'), - backgroundColor: Colors.green, - ), - ); + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Meeting created successfully'), + backgroundColor: Colors.green, + ), + ); + } } }); }