From c2c1b517779dadb701e9b90129eb7e83f58be7ab Mon Sep 17 00:00:00 2001 From: pradeepkumar Date: Tue, 31 Mar 2026 20:41:01 +0530 Subject: [PATCH] refactor: update back navigation to prioritize popping the route stack before defaulting to home --- .../agents/presentation/screens/agent_network_screen.dart | 8 +++++++- .../agents/presentation/screens/agent_search_screen.dart | 8 +++++++- .../presentation/screens/conversations_screen.dart | 2 ++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/lib/features/agents/presentation/screens/agent_network_screen.dart b/lib/features/agents/presentation/screens/agent_network_screen.dart index b130262..26d05df 100644 --- a/lib/features/agents/presentation/screens/agent_network_screen.dart +++ b/lib/features/agents/presentation/screens/agent_network_screen.dart @@ -154,7 +154,13 @@ class AgentNetworkScreen extends ConsumerWidget { child: Row( children: [ GestureDetector( - onTap: () => context.go('/home'), + onTap: () { + if (Navigator.of(context).canPop()) { + Navigator.of(context).pop(); + } else { + context.go('/home'); + } + }, child: const Icon( Icons.arrow_back_ios_new_rounded, size: 18, diff --git a/lib/features/agents/presentation/screens/agent_search_screen.dart b/lib/features/agents/presentation/screens/agent_search_screen.dart index bb3417f..da3b2bc 100644 --- a/lib/features/agents/presentation/screens/agent_search_screen.dart +++ b/lib/features/agents/presentation/screens/agent_search_screen.dart @@ -122,7 +122,13 @@ class _AgentSearchScreenState extends ConsumerState { child: Row( children: [ GestureDetector( - onTap: () => context.go('/home'), + onTap: () { + if (Navigator.of(context).canPop()) { + Navigator.of(context).pop(); + } else { + context.go('/home'); + } + }, child: const Padding( padding: EdgeInsets.only(right: 8), child: Icon( diff --git a/lib/features/messaging/presentation/screens/conversations_screen.dart b/lib/features/messaging/presentation/screens/conversations_screen.dart index c7e365b..cc29556 100644 --- a/lib/features/messaging/presentation/screens/conversations_screen.dart +++ b/lib/features/messaging/presentation/screens/conversations_screen.dart @@ -75,6 +75,8 @@ class _ConversationsScreenState extends ConsumerState { _isSearchActive = false; _searchController.clear(); }); + } else if (Navigator.of(context).canPop()) { + Navigator.of(context).pop(); } else { context.go('/home'); }