From 30fc4c35f459b4695656e79846caba89087886d7 Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Fri, 11 Aug 2023 19:44:34 -0400 Subject: [PATCH] Only requests notification once. --- .../amethyst/ui/screen/loggedIn/NotificationScreen.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NotificationScreen.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NotificationScreen.kt index ab2859d6b8..6667575741 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NotificationScreen.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NotificationScreen.kt @@ -93,6 +93,7 @@ fun NotificationScreen( SummaryBar( model = userReactionsStatsModel ) + RefresheableCardView( viewModel = notifFeedViewModel, accountViewModel = accountViewModel, @@ -104,6 +105,9 @@ fun NotificationScreen( } } +// TODO: Turn this into an Account flag +var hasAlreadyAskedNotificationPermissions = false + @OptIn(ExperimentalPermissionsApi::class) @Composable fun CheckifItNeedsToRequestNotificationPermission() { @@ -112,7 +116,10 @@ fun CheckifItNeedsToRequestNotificationPermission() { Manifest.permission.POST_NOTIFICATIONS ) - if (!notificationPermissionState.status.isGranted) { + if (!notificationPermissionState.status.isGranted && !hasAlreadyAskedNotificationPermissions) { + hasAlreadyAskedNotificationPermissions = true + + // This will pause the APP, including the connection with relays. LaunchedEffect(notificationPermissionState) { notificationPermissionState.launchPermissionRequest() }