diff --git a/kaspresso/src/main/kotlin/com/kaspersky/kaspresso/device/permissions/Permissions.kt b/kaspresso/src/main/kotlin/com/kaspersky/kaspresso/device/permissions/Permissions.kt index 9862b14f0..8caef3a24 100644 --- a/kaspresso/src/main/kotlin/com/kaspersky/kaspresso/device/permissions/Permissions.kt +++ b/kaspresso/src/main/kotlin/com/kaspersky/kaspresso/device/permissions/Permissions.kt @@ -7,8 +7,11 @@ interface Permissions { /** * Passes the permission-requesting permissions dialog and allows permissions. + * + * @param button - the button which would be pressed. Changing the default value may be useful in android 11+ cases + * @see (https://developer.android.com/about/versions/11/privacy/location and https://developer.android.com/about/versions/14/changes/partial-photo-video-access) */ - fun allowViaDialog() + fun allowViaDialog(button: Button = Button.ALLOW) /** * Passes the permission-requesting permissions dialog and denies permissions. diff --git a/kaspresso/src/main/kotlin/com/kaspersky/kaspresso/device/permissions/PermissionsImpl.kt b/kaspresso/src/main/kotlin/com/kaspersky/kaspresso/device/permissions/PermissionsImpl.kt index 684c96539..d0447ac9f 100644 --- a/kaspresso/src/main/kotlin/com/kaspersky/kaspresso/device/permissions/PermissionsImpl.kt +++ b/kaspresso/src/main/kotlin/com/kaspersky/kaspresso/device/permissions/PermissionsImpl.kt @@ -42,12 +42,12 @@ class PermissionsImpl( /** * Waits for 1 sec, passes the permission-requesting permissions dialog and allows permissions. */ - override fun allowViaDialog() { + override fun allowViaDialog(button: Permissions.Button) { wait( timeoutMs = DIALOG_TIMEOUT_MS, logger = logger ) { - handlePermissionRequest(Permissions.Button.ALLOW) + handlePermissionRequest(button) } logger.i("Allow permission via dialog") }