Loading src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollmentIntroV2Fragment.kt +3 −3 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ import android.annotation.StringRes import android.graphics.Color import android.graphics.PorterDuff import android.graphics.PorterDuffColorFilter import android.hardware.fingerprint.FingerprintSensorProperties import android.os.Bundle import android.text.Html import android.text.method.LinkMovementMethod Loading @@ -39,6 +38,7 @@ import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.Fing import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintGatekeeperViewModel import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintScrollViewModel import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.Unicorn import com.android.systemui.biometrics.shared.model.FingerprintSensorType import com.google.android.setupcompat.template.FooterBarMixin import com.google.android.setupcompat.template.FooterButton import com.google.android.setupdesign.GlifLayout Loading Loading @@ -144,8 +144,8 @@ class FingerprintEnrollmentIntroV2Fragment : Fragment(R.layout.fingerprint_v2_en val iconShield: ImageView = view.requireViewById(R.id.icon_shield) val footerMessage6: TextView = view.requireViewById(R.id.footer_message_6) when (sensorType) { FingerprintSensorProperties.TYPE_UDFPS_ULTRASONIC, FingerprintSensorProperties.TYPE_UDFPS_OPTICAL -> { FingerprintSensorType.UDFPS_ULTRASONIC, FingerprintSensorType.UDFPS_OPTICAL -> { footerMessage6.visibility = View.VISIBLE iconShield.visibility = View.VISIBLE } Loading src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollViewModel.kt +9 −5 Original line number Diff line number Diff line Loading @@ -16,20 +16,24 @@ package com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel import android.hardware.fingerprint.FingerprintSensorProperties import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintManagerInteractor import com.android.systemui.biometrics.shared.model.FingerprintSensorType import com.android.systemui.biometrics.shared.model.toSensorType import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.transform import kotlinx.coroutines.flow.filterNotNull import kotlinx.coroutines.flow.map /** Represents all of the fingerprint information needed for fingerprint enrollment. */ class FingerprintEnrollViewModel(fingerprintManagerInteractor: FingerprintManagerInteractor) : ViewModel() { /** Represents the stream of [FingerprintSensorProperties.SensorType] */ val sensorType: Flow<Int> = fingerprintManagerInteractor.sensorPropertiesInternal.transform { it?.sensorType } /** Represents the stream of [FingerprintSensorType] */ val sensorType: Flow<FingerprintSensorType> = fingerprintManagerInteractor.sensorPropertiesInternal.filterNotNull().map { it.sensorType.toSensorType() } class FingerprintEnrollViewModelFactory(val interactor: FingerprintManagerInteractor) : ViewModelProvider.Factory { Loading src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsViewModel.kt +8 −8 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ package com.android.settings.biometrics.fingerprint2.ui.settings.viewmodel import android.hardware.fingerprint.FingerprintManager import android.hardware.fingerprint.FingerprintSensorProperties import android.util.Log import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider Loading @@ -25,6 +24,8 @@ import androidx.lifecycle.viewModelScope import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintManagerInteractor import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintAuthAttemptViewModel import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintViewModel import com.android.systemui.biometrics.shared.model.FingerprintSensorType import com.android.systemui.biometrics.shared.model.toSensorType import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.MutableSharedFlow Loading Loading @@ -89,8 +90,10 @@ class FingerprintSettingsViewModel( private val _consumerShouldAuthenticate: MutableStateFlow<Boolean> = MutableStateFlow(false) private val _fingerprintSensorType: Flow<Int> = fingerprintManagerInteractor.sensorPropertiesInternal.transform { it?.sensorType } private val _fingerprintSensorType: Flow<FingerprintSensorType> = fingerprintManagerInteractor.sensorPropertiesInternal.filterNotNull().map { it.sensorType.toSensorType() } private val _sensorNullOrEmpty: Flow<Boolean> = fingerprintManagerInteractor.sensorPropertiesInternal.map { it == null } Loading Loading @@ -147,10 +150,7 @@ class FingerprintSettingsViewModel( return@combine false } if ( listOf( FingerprintSensorProperties.TYPE_UDFPS_OPTICAL, FingerprintSensorProperties.TYPE_UDFPS_ULTRASONIC ) listOf(FingerprintSensorType.UDFPS_ULTRASONIC, FingerprintSensorType.UDFPS_OPTICAL) .contains(sensorType) ) { return@combine false Loading Loading
src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollmentIntroV2Fragment.kt +3 −3 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ import android.annotation.StringRes import android.graphics.Color import android.graphics.PorterDuff import android.graphics.PorterDuffColorFilter import android.hardware.fingerprint.FingerprintSensorProperties import android.os.Bundle import android.text.Html import android.text.method.LinkMovementMethod Loading @@ -39,6 +38,7 @@ import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.Fing import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintGatekeeperViewModel import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.FingerprintScrollViewModel import com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel.Unicorn import com.android.systemui.biometrics.shared.model.FingerprintSensorType import com.google.android.setupcompat.template.FooterBarMixin import com.google.android.setupcompat.template.FooterButton import com.google.android.setupdesign.GlifLayout Loading Loading @@ -144,8 +144,8 @@ class FingerprintEnrollmentIntroV2Fragment : Fragment(R.layout.fingerprint_v2_en val iconShield: ImageView = view.requireViewById(R.id.icon_shield) val footerMessage6: TextView = view.requireViewById(R.id.footer_message_6) when (sensorType) { FingerprintSensorProperties.TYPE_UDFPS_ULTRASONIC, FingerprintSensorProperties.TYPE_UDFPS_OPTICAL -> { FingerprintSensorType.UDFPS_ULTRASONIC, FingerprintSensorType.UDFPS_OPTICAL -> { footerMessage6.visibility = View.VISIBLE iconShield.visibility = View.VISIBLE } Loading
src/com/android/settings/biometrics/fingerprint2/ui/enrollment/viewmodel/FingerprintEnrollViewModel.kt +9 −5 Original line number Diff line number Diff line Loading @@ -16,20 +16,24 @@ package com.android.settings.biometrics.fingerprint2.ui.enrollment.viewmodel import android.hardware.fingerprint.FingerprintSensorProperties import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintManagerInteractor import com.android.systemui.biometrics.shared.model.FingerprintSensorType import com.android.systemui.biometrics.shared.model.toSensorType import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.transform import kotlinx.coroutines.flow.filterNotNull import kotlinx.coroutines.flow.map /** Represents all of the fingerprint information needed for fingerprint enrollment. */ class FingerprintEnrollViewModel(fingerprintManagerInteractor: FingerprintManagerInteractor) : ViewModel() { /** Represents the stream of [FingerprintSensorProperties.SensorType] */ val sensorType: Flow<Int> = fingerprintManagerInteractor.sensorPropertiesInternal.transform { it?.sensorType } /** Represents the stream of [FingerprintSensorType] */ val sensorType: Flow<FingerprintSensorType> = fingerprintManagerInteractor.sensorPropertiesInternal.filterNotNull().map { it.sensorType.toSensorType() } class FingerprintEnrollViewModelFactory(val interactor: FingerprintManagerInteractor) : ViewModelProvider.Factory { Loading
src/com/android/settings/biometrics/fingerprint2/ui/settings/viewmodel/FingerprintSettingsViewModel.kt +8 −8 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ package com.android.settings.biometrics.fingerprint2.ui.settings.viewmodel import android.hardware.fingerprint.FingerprintManager import android.hardware.fingerprint.FingerprintSensorProperties import android.util.Log import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider Loading @@ -25,6 +24,8 @@ import androidx.lifecycle.viewModelScope import com.android.settings.biometrics.fingerprint2.domain.interactor.FingerprintManagerInteractor import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintAuthAttemptViewModel import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintViewModel import com.android.systemui.biometrics.shared.model.FingerprintSensorType import com.android.systemui.biometrics.shared.model.toSensorType import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.MutableSharedFlow Loading Loading @@ -89,8 +90,10 @@ class FingerprintSettingsViewModel( private val _consumerShouldAuthenticate: MutableStateFlow<Boolean> = MutableStateFlow(false) private val _fingerprintSensorType: Flow<Int> = fingerprintManagerInteractor.sensorPropertiesInternal.transform { it?.sensorType } private val _fingerprintSensorType: Flow<FingerprintSensorType> = fingerprintManagerInteractor.sensorPropertiesInternal.filterNotNull().map { it.sensorType.toSensorType() } private val _sensorNullOrEmpty: Flow<Boolean> = fingerprintManagerInteractor.sensorPropertiesInternal.map { it == null } Loading Loading @@ -147,10 +150,7 @@ class FingerprintSettingsViewModel( return@combine false } if ( listOf( FingerprintSensorProperties.TYPE_UDFPS_OPTICAL, FingerprintSensorProperties.TYPE_UDFPS_ULTRASONIC ) listOf(FingerprintSensorType.UDFPS_ULTRASONIC, FingerprintSensorType.UDFPS_OPTICAL) .contains(sensorType) ) { return@combine false Loading