Skip to content

Commit 8d70bc1

Browse files
committed
Change onPermissionGranted to onPermissionResult(isGranted: Boolean) for multiple platforms
1 parent acf5e45 commit 8d70bc1

File tree

6 files changed

+13
-12
lines changed

6 files changed

+13
-12
lines changed

kmpnotifier/src/androidMain/kotlin/com/mmk/kmpnotifier/permission/AndroidMockPermissionUtil.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ internal class AndroidMockPermissionUtil(private val context: Context) : Permiss
1313
onPermissionResult(context.hasNotificationPermission())
1414
}
1515

16-
override fun askNotificationPermission(onPermissionGranted: () -> Unit) = Unit.also {
16+
override fun askNotificationPermission(onPermissionResult: (Boolean) -> Unit) = Unit.also {
1717
println(
1818
"In Android this function is just a mock. You need to ask permission in Activity " +
1919
"using like below: \n" +

kmpnotifier/src/commonMain/kotlin/com/mmk/kmpnotifier/permission/EmptyPermissionUtilImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ internal class EmptyPermissionUtilImpl : PermissionUtil {
66
onPermissionResult(true)
77
}
88

9-
override fun askNotificationPermission(onPermissionGranted: () -> Unit) {
9+
override fun askNotificationPermission(onPermissionResult: (Boolean) -> Unit) {
1010
println("Not implemented: granted permission by default")
11-
onPermissionGranted()
11+
onPermissionResult(true)
1212
}
1313
}

kmpnotifier/src/commonMain/kotlin/com/mmk/kmpnotifier/permission/PermissionUtil.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ package com.mmk.kmpnotifier.permission
66
public interface PermissionUtil {
77

88

9-
public fun hasNotificationPermission(onPermissionResult: (Boolean) -> Unit = {})
10-
public fun askNotificationPermission(onPermissionGranted: () -> Unit = {})
9+
public fun hasNotificationPermission(onPermissionResult: (isGranted: Boolean) -> Unit = {})
10+
public fun askNotificationPermission(onPermissionResult: (isGranted: Boolean) -> Unit = {})
1111
}

kmpnotifier/src/iosMain/kotlin/com/mmk/kmpnotifier/permission/IosPermissionUtil.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ import platform.UserNotifications.UNAuthorizationOptionSound
77
import platform.UserNotifications.UNAuthorizationStatusAuthorized
88
import platform.UserNotifications.UNUserNotificationCenter
99

10-
internal class IosPermissionUtil(private val notificationCenter: UNUserNotificationCenter) : PermissionUtil {
10+
internal class IosPermissionUtil(private val notificationCenter: UNUserNotificationCenter) :
11+
PermissionUtil {
1112
companion object {
1213
val NOTIFICATION_PERMISSIONS =
1314
UNAuthorizationOptionAlert or
@@ -21,13 +22,13 @@ internal class IosPermissionUtil(private val notificationCenter: UNUserNotificat
2122
}
2223
}
2324

24-
override fun askNotificationPermission(onPermissionGranted: () -> Unit) {
25+
override fun askNotificationPermission(onPermissionResult: (Boolean) -> Unit) {
2526
notificationCenter.requestAuthorizationWithOptions(NOTIFICATION_PERMISSIONS) { isGranted, _ ->
2627
if (isGranted) {
2728
UNUserNotificationCenter.currentNotificationCenter().delegate =
2829
IosNotifier.NotificationDelegate()
29-
onPermissionGranted()
3030
}
31+
onPermissionResult(isGranted)
3132
}
3233
}
3334
}

kmpnotifier/src/jsMain/kotlin/com/mmk/kmpnotifier/permission/WebPermissionUtilImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ internal class WebPermissionUtilImpl : PermissionUtil {
1010
onPermissionResult(permission == NotificationPermission.GRANTED)
1111
}
1212

13-
override fun askNotificationPermission(onPermissionGranted: () -> Unit) {
13+
override fun askNotificationPermission(onPermissionResult: (Boolean) -> Unit) {
1414
Notification.requestPermission().then {
15-
onPermissionGranted()
15+
onPermissionResult(it == NotificationPermission.GRANTED)
1616
null
1717
}
1818
}

kmpnotifier/src/wasmJsMain/kotlin/com/mmk/kmpnotifier/permission/WebPermissionUtilImpl.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ internal class WebPermissionUtilImpl : PermissionUtil {
1010
onPermissionResult(permission == NotificationPermission.GRANTED)
1111
}
1212

13-
override fun askNotificationPermission(onPermissionGranted: () -> Unit) {
13+
override fun askNotificationPermission(onPermissionResult: (Boolean) -> Unit) {
1414
Notification.requestPermission().then {
15-
onPermissionGranted()
15+
onPermissionResult(it == NotificationPermission.GRANTED)
1616
null
1717
}
1818
}

0 commit comments

Comments
 (0)