File tree Expand file tree Collapse file tree 6 files changed +13
-12
lines changed
androidMain/kotlin/com/mmk/kmpnotifier/permission
commonMain/kotlin/com/mmk/kmpnotifier/permission
iosMain/kotlin/com/mmk/kmpnotifier/permission
jsMain/kotlin/com/mmk/kmpnotifier/permission
wasmJsMain/kotlin/com/mmk/kmpnotifier/permission Expand file tree Collapse file tree 6 files changed +13
-12
lines changed Original file line number Diff line number Diff 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 " +
Original file line number Diff line number Diff 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}
Original file line number Diff line number Diff line change @@ -6,6 +6,6 @@ package com.mmk.kmpnotifier.permission
66public 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}
Original file line number Diff line number Diff line change @@ -7,7 +7,8 @@ import platform.UserNotifications.UNAuthorizationOptionSound
77import platform.UserNotifications.UNAuthorizationStatusAuthorized
88import 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}
Original file line number Diff line number Diff 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 }
Original file line number Diff line number Diff 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 }
You can’t perform that action at this time.
0 commit comments