incomingGroupCallNotification static method

void incomingGroupCallNotification({
  1. required GroupCallSession session,
  2. required GlobalKey<NavigatorState> navigatorKey,
})

Implementation

static void incomingGroupCallNotification({
  required GroupCallSession session,
  required GlobalKey<NavigatorState> navigatorKey,
}) {
  if (PendingCallsScreen.isVisible) {
    return;
  }

  OverlaySupportEntry? entry;

  entry = showSimpleNotification(
    GestureDetector(
      onTap: () {
        entry?.dismiss();
        navigatorKey.currentState?.push(
          MaterialPageRoute(builder: (_) => const PendingCallsScreen()),
        );
      },
      child: Text(
        "${session.peerUserName ?? session.peerUserId} started a group call",
        style: const TextStyle(
          color: Colors.white,
          fontWeight: FontWeight.w600,
        ),
      ),
    ),
    duration: const Duration(seconds: 10),
    background: Colors.blue.shade700,
    leading: const Icon(Icons.groups, color: Colors.white),
  );
}