Only requests notification once.

This commit is contained in:
Vitor Pamplona
2023-08-11 19:44:34 -04:00
parent 7912d492e5
commit 30fc4c35f4

View File

@@ -93,6 +93,7 @@ fun NotificationScreen(
SummaryBar( SummaryBar(
model = userReactionsStatsModel model = userReactionsStatsModel
) )
RefresheableCardView( RefresheableCardView(
viewModel = notifFeedViewModel, viewModel = notifFeedViewModel,
accountViewModel = accountViewModel, accountViewModel = accountViewModel,
@@ -104,6 +105,9 @@ fun NotificationScreen(
} }
} }
// TODO: Turn this into an Account flag
var hasAlreadyAskedNotificationPermissions = false
@OptIn(ExperimentalPermissionsApi::class) @OptIn(ExperimentalPermissionsApi::class)
@Composable @Composable
fun CheckifItNeedsToRequestNotificationPermission() { fun CheckifItNeedsToRequestNotificationPermission() {
@@ -112,7 +116,10 @@ fun CheckifItNeedsToRequestNotificationPermission() {
Manifest.permission.POST_NOTIFICATIONS 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) { LaunchedEffect(notificationPermissionState) {
notificationPermissionState.launchPermissionRequest() notificationPermissionState.launchPermissionRequest()
} }