refactor: update navigation to use push/pop and add conditional dashboard redirection for agents

This commit is contained in:
pradeepkumar
2026-03-31 19:36:30 +05:30
parent 548c822f89
commit 8a982bdf3d
4 changed files with 22 additions and 7 deletions

View File

@@ -847,7 +847,9 @@ class AboutScreen extends ConsumerWidget {
), ),
alignment: Alignment.center, alignment: Alignment.center,
child: Text( child: Text(
cta.buttonText, (ref.read(authProvider).user?.role == 'AGENT')
? 'Go to Dashboard'
: cta.buttonText,
style: const TextStyle( style: const TextStyle(
fontFamily: 'Fractul', fontFamily: 'Fractul',
fontSize: 16, fontSize: 16,

View File

@@ -613,8 +613,10 @@ class _ContactScreenState extends State<ContactScreen> {
child: Row( child: Row(
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
children: [ children: [
const Text( Text(
'Start Your Search', (ref.read(authProvider).user?.role == 'AGENT')
? 'Go to Dashboard'
: 'Start Your Search',
style: TextStyle( style: TextStyle(
fontFamily: 'Fractul', fontFamily: 'Fractul',
fontSize: 16, fontSize: 16,

View File

@@ -193,7 +193,13 @@ class _ChatScreenState extends ConsumerState<ChatScreen>
onConfirm: () async { onConfirm: () async {
final notifier = ref.read(messagingProvider.notifier); final notifier = ref.read(messagingProvider.notifier);
await notifier.deleteConversation(widget.conversationId); await notifier.deleteConversation(widget.conversationId);
if (mounted) context.go('/messages'); if (mounted) {
if (Navigator.of(context).canPop()) {
Navigator.of(context).pop();
} else {
context.go('/messages');
}
}
}, },
isDanger: true, isDanger: true,
); );
@@ -266,8 +272,13 @@ class _ChatScreenState extends ConsumerState<ChatScreen>
} }
void _handleBack() { void _handleBack() {
ref.read(messagingProvider.notifier).setActiveConversation(null); final notifier = ref.read(messagingProvider.notifier);
context.go('/messages'); Future.microtask(() => notifier.setActiveConversation(null));
if (Navigator.of(context).canPop()) {
Navigator.of(context).pop();
} else {
context.go('/messages');
}
} }
// ============================================================ // ============================================================

View File

@@ -434,7 +434,7 @@ class _ConversationsScreenState extends ConsumerState<ConversationsScreen> {
return _ConversationTile( return _ConversationTile(
conversation: filtered[index], conversation: filtered[index],
onTap: () => onTap: () =>
context.go('/messages/chat/${filtered[index].id}'), context.push('/messages/chat/${filtered[index].id}'),
); );
}, },
), ),