Loading src/com/android/settings/biometrics/fingerprint2/domain/interactor/AccessibilityInteractor.kt +26 −9 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.settings.biometrics.fingerprint2.domain.interactor import android.util.Log import android.view.accessibility.AccessibilityEvent import android.view.accessibility.AccessibilityEvent.TYPE_ANNOUNCEMENT import android.view.accessibility.AccessibilityManager Loading @@ -30,13 +31,16 @@ import kotlinx.coroutines.flow.stateIn interface AccessibilityInteractor { /** A flow that contains whether or not accessibility is enabled */ fun isEnabledFlow(scope: CoroutineScope): Flow<Boolean> val isEnabled: Boolean fun announce(clazz: Class<*>, announcement: CharSequence?) fun interrupt() } class AccessibilityInteractorImpl( private val accessibilityManager: AccessibilityManager, ) : AccessibilityInteractor { class AccessibilityInteractorImpl(private val accessibilityManager: AccessibilityManager) : AccessibilityInteractor { /** A flow that contains whether or not accessibility is enabled */ override fun isEnabledFlow(scope: CoroutineScope): Flow<Boolean> = callbackFlow { Loading @@ -63,4 +67,17 @@ class AccessibilityInteractorImpl( event.text.add(announcement) accessibilityManager.sendAccessibilityEvent(event) } /** Interrupts the current accessibility manager from announcing a phrase. */ override fun interrupt() { try { accessibilityManager.interrupt() } catch (e: IllegalStateException) { Log.e(TAG, "Error trying to interrupt when accessibility isn't enabled $e") } } companion object { const val TAG = "AccessibilityInteractor" } } tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/Injector.kt +1 −0 Original line number Diff line number Diff line Loading @@ -78,6 +78,7 @@ class Injector(step: FingerprintNavigationStep.UiStep) { override val isEnabled: Boolean get() = true override fun announce(clazz: Class<*>, announcement: CharSequence?) {} override fun interrupt() {} } var foldStateInteractor = Loading tests/unit/src/com/android/settings/fingerprint2/enrollment/viewmodel/FingerprintEnrollFindSensorViewModelV2Test.kt +2 −0 Original line number Diff line number Diff line Loading @@ -111,6 +111,8 @@ class FingerprintEnrollFindSensorViewModelV2Test { override val isEnabled: Boolean get() = true override fun announce(clazz: Class<*>, announcement: CharSequence?) {} override fun interrupt() { } } foldStateInteractor = object : FoldStateInteractor { Loading Loading
src/com/android/settings/biometrics/fingerprint2/domain/interactor/AccessibilityInteractor.kt +26 −9 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.settings.biometrics.fingerprint2.domain.interactor import android.util.Log import android.view.accessibility.AccessibilityEvent import android.view.accessibility.AccessibilityEvent.TYPE_ANNOUNCEMENT import android.view.accessibility.AccessibilityManager Loading @@ -30,13 +31,16 @@ import kotlinx.coroutines.flow.stateIn interface AccessibilityInteractor { /** A flow that contains whether or not accessibility is enabled */ fun isEnabledFlow(scope: CoroutineScope): Flow<Boolean> val isEnabled: Boolean fun announce(clazz: Class<*>, announcement: CharSequence?) fun interrupt() } class AccessibilityInteractorImpl( private val accessibilityManager: AccessibilityManager, ) : AccessibilityInteractor { class AccessibilityInteractorImpl(private val accessibilityManager: AccessibilityManager) : AccessibilityInteractor { /** A flow that contains whether or not accessibility is enabled */ override fun isEnabledFlow(scope: CoroutineScope): Flow<Boolean> = callbackFlow { Loading @@ -63,4 +67,17 @@ class AccessibilityInteractorImpl( event.text.add(announcement) accessibilityManager.sendAccessibilityEvent(event) } /** Interrupts the current accessibility manager from announcing a phrase. */ override fun interrupt() { try { accessibilityManager.interrupt() } catch (e: IllegalStateException) { Log.e(TAG, "Error trying to interrupt when accessibility isn't enabled $e") } } companion object { const val TAG = "AccessibilityInteractor" } }
tests/screenshot/src/com/android/settings/tests/screenshot/biometrics/fingerprint/Injector.kt +1 −0 Original line number Diff line number Diff line Loading @@ -78,6 +78,7 @@ class Injector(step: FingerprintNavigationStep.UiStep) { override val isEnabled: Boolean get() = true override fun announce(clazz: Class<*>, announcement: CharSequence?) {} override fun interrupt() {} } var foldStateInteractor = Loading
tests/unit/src/com/android/settings/fingerprint2/enrollment/viewmodel/FingerprintEnrollFindSensorViewModelV2Test.kt +2 −0 Original line number Diff line number Diff line Loading @@ -111,6 +111,8 @@ class FingerprintEnrollFindSensorViewModelV2Test { override val isEnabled: Boolean get() = true override fun announce(clazz: Class<*>, announcement: CharSequence?) {} override fun interrupt() { } } foldStateInteractor = object : FoldStateInteractor { Loading