✨ Notifications
This commit is contained in:
@ -1,3 +1,4 @@
|
||||
import 'package:firebase_messaging/firebase_messaging.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
|
||||
@ -11,13 +12,17 @@ class AgentNavigation extends StatefulWidget {
|
||||
icon: Icon(Icons.home),
|
||||
label: 'Dashboard',
|
||||
),
|
||||
NavigationDestination(
|
||||
icon: Icon(Icons.notifications),
|
||||
label: 'Notifications',
|
||||
),
|
||||
NavigationDestination(
|
||||
icon: Icon(Icons.account_circle),
|
||||
label: 'Account',
|
||||
)
|
||||
];
|
||||
|
||||
static const destinations = ["/", "/account"];
|
||||
static const destinations = ["/", "/notifications", "/account"];
|
||||
|
||||
@override
|
||||
State<AgentNavigation> createState() => _AgentNavigationState();
|
||||
@ -26,6 +31,32 @@ class AgentNavigation extends StatefulWidget {
|
||||
class _AgentNavigationState extends State<AgentNavigation> {
|
||||
int _selected = 0;
|
||||
|
||||
Future<void> initMessage(BuildContext context) async {
|
||||
void navigate() {
|
||||
widget.router.push("/notifications");
|
||||
setState(() {
|
||||
_selected = 1;
|
||||
});
|
||||
}
|
||||
|
||||
RemoteMessage? initialMessage =
|
||||
await FirebaseMessaging.instance.getInitialMessage();
|
||||
|
||||
if (initialMessage != null) {
|
||||
navigate();
|
||||
}
|
||||
|
||||
FirebaseMessaging.onMessageOpenedApp.listen((event) {
|
||||
navigate();
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
initMessage(context);
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return NavigationBar(
|
||||
|
Reference in New Issue
Block a user