mirror of https://github.com/topjohnwu/Magisk
39 lines
985 B
Kotlin
39 lines
985 B
Kotlin
package com.topjohnwu.magisk.events.dialog
|
|
|
|
import com.topjohnwu.magisk.arch.ActivityExecutor
|
|
import com.topjohnwu.magisk.arch.UIActivity
|
|
import com.topjohnwu.magisk.arch.ViewEvent
|
|
import com.topjohnwu.magisk.core.utils.BiometricHelper
|
|
|
|
class BiometricEvent(
|
|
builder: Builder.() -> Unit
|
|
) : ViewEvent(), ActivityExecutor {
|
|
|
|
private var listenerOnFailure: GenericDialogListener = {}
|
|
private var listenerOnSuccess: GenericDialogListener = {}
|
|
|
|
init {
|
|
builder(Builder())
|
|
}
|
|
|
|
override fun invoke(activity: UIActivity<*>) {
|
|
BiometricHelper.authenticate(
|
|
activity,
|
|
onError = listenerOnFailure,
|
|
onSuccess = listenerOnSuccess
|
|
)
|
|
}
|
|
|
|
inner class Builder internal constructor() {
|
|
|
|
fun onFailure(listener: GenericDialogListener) {
|
|
listenerOnFailure = listener
|
|
}
|
|
|
|
fun onSuccess(listener: GenericDialogListener) {
|
|
listenerOnSuccess = listener
|
|
}
|
|
}
|
|
|
|
}
|