Loading packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewConfigurator.kt +3 −0 Original line number Original line Diff line number Diff line Loading @@ -71,6 +71,7 @@ import com.android.systemui.shade.domain.interactor.ShadeInteractor import com.android.systemui.statusbar.KeyguardIndicationController import com.android.systemui.statusbar.KeyguardIndicationController import com.android.systemui.statusbar.VibratorHelper import com.android.systemui.statusbar.VibratorHelper import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator import com.google.android.msdl.domain.MSDLPlayer import com.google.android.msdl.domain.MSDLPlayer import dagger.Lazy import dagger.Lazy Loading Loading @@ -112,6 +113,7 @@ constructor( private val clockInteractor: KeyguardClockInteractor, private val clockInteractor: KeyguardClockInteractor, private val keyguardViewMediator: KeyguardViewMediator, private val keyguardViewMediator: KeyguardViewMediator, private val deviceEntryUnlockTrackerViewBinder: Optional<DeviceEntryUnlockTrackerViewBinder>, private val deviceEntryUnlockTrackerViewBinder: Optional<DeviceEntryUnlockTrackerViewBinder>, private val statusBarKeyguardViewManager: StatusBarKeyguardViewManager, @Main private val mainDispatcher: CoroutineDispatcher, @Main private val mainDispatcher: CoroutineDispatcher, private val msdlPlayer: MSDLPlayer, private val msdlPlayer: MSDLPlayer, ) : CoreStartable { ) : CoreStartable { Loading Loading @@ -220,6 +222,7 @@ constructor( vibratorHelper, vibratorHelper, falsingManager, falsingManager, keyguardViewMediator, keyguardViewMediator, statusBarKeyguardViewManager, mainDispatcher, mainDispatcher, msdlPlayer, msdlPlayer, ) ) Loading packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardRootViewBinder.kt +28 −1 Original line number Original line Diff line number Diff line Loading @@ -24,6 +24,8 @@ import android.graphics.Point import android.graphics.Rect import android.graphics.Rect import android.util.Log import android.util.Log import android.view.HapticFeedbackConstants import android.view.HapticFeedbackConstants import android.view.InputDevice import android.view.MotionEvent import android.view.View import android.view.View import android.view.View.OnLayoutChangeListener import android.view.View.OnLayoutChangeListener import android.view.View.VISIBLE import android.view.View.VISIBLE Loading @@ -41,6 +43,7 @@ import com.android.app.tracing.coroutines.launch import com.android.internal.jank.InteractionJankMonitor import com.android.internal.jank.InteractionJankMonitor import com.android.internal.jank.InteractionJankMonitor.CUJ_SCREEN_OFF_SHOW_AOD import com.android.internal.jank.InteractionJankMonitor.CUJ_SCREEN_OFF_SHOW_AOD import com.android.keyguard.AuthInteractionProperties import com.android.keyguard.AuthInteractionProperties import com.android.systemui.Flags import com.android.systemui.Flags.msdlFeedback import com.android.systemui.Flags.msdlFeedback import com.android.systemui.Flags.newAodTransition import com.android.systemui.Flags.newAodTransition import com.android.systemui.common.shared.model.Icon import com.android.systemui.common.shared.model.Icon Loading Loading @@ -73,6 +76,7 @@ import com.android.systemui.shade.domain.interactor.ShadeInteractor import com.android.systemui.statusbar.CrossFadeHelper import com.android.systemui.statusbar.CrossFadeHelper import com.android.systemui.statusbar.VibratorHelper import com.android.systemui.statusbar.VibratorHelper import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager import com.android.systemui.temporarydisplay.ViewPriority import com.android.systemui.temporarydisplay.ViewPriority import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator import com.android.systemui.temporarydisplay.chipbar.ChipbarInfo import com.android.systemui.temporarydisplay.chipbar.ChipbarInfo Loading Loading @@ -115,6 +119,7 @@ object KeyguardRootViewBinder { vibratorHelper: VibratorHelper?, vibratorHelper: VibratorHelper?, falsingManager: FalsingManager?, falsingManager: FalsingManager?, keyguardViewMediator: KeyguardViewMediator?, keyguardViewMediator: KeyguardViewMediator?, statusBarKeyguardViewManager: StatusBarKeyguardViewManager?, mainImmediateDispatcher: CoroutineDispatcher, mainImmediateDispatcher: CoroutineDispatcher, msdlPlayer: MSDLPlayer?, msdlPlayer: MSDLPlayer?, ): DisposableHandle { ): DisposableHandle { Loading @@ -124,12 +129,30 @@ object KeyguardRootViewBinder { if (KeyguardBottomAreaRefactor.isEnabled) { if (KeyguardBottomAreaRefactor.isEnabled) { disposables += disposables += view.onTouchListener { _, event -> view.onTouchListener { _, event -> var consumed = false if (falsingManager?.isFalseTap(FalsingManager.LOW_PENALTY) == false) { if (falsingManager?.isFalseTap(FalsingManager.LOW_PENALTY) == false) { // signifies a primary button click down has reached keyguardrootview // we need to return true here otherwise an ACTION_UP will never arrive if (Flags.nonTouchscreenDevicesBypassFalsing()) { if ( event.action == MotionEvent.ACTION_DOWN && event.buttonState == MotionEvent.BUTTON_PRIMARY && !event.isTouchscreenSource() ) { consumed = true } else if ( event.action == MotionEvent.ACTION_UP && !event.isTouchscreenSource() ) { statusBarKeyguardViewManager?.showBouncer(true) consumed = true } } viewModel.setRootViewLastTapPosition( viewModel.setRootViewLastTapPosition( Point(event.x.toInt(), event.y.toInt()) Point(event.x.toInt(), event.y.toInt()) ) ) } } false consumed } } } } Loading Loading @@ -637,6 +660,10 @@ object KeyguardRootViewBinder { } } } } private fun MotionEvent.isTouchscreenSource(): Boolean { return device?.supportsSource(InputDevice.SOURCE_TOUCHSCREEN) == true } private fun ViewPropertyAnimator.animateInIconTranslation(): ViewPropertyAnimator = private fun ViewPropertyAnimator.animateInIconTranslation(): ViewPropertyAnimator = setInterpolator(Interpolators.DECELERATE_QUINT).translationY(0f) setInterpolator(Interpolators.DECELERATE_QUINT).translationY(0f) Loading packages/SystemUI/src/com/android/systemui/keyguard/ui/preview/KeyguardPreviewRenderer.kt +1 −0 Original line number Original line Diff line number Diff line Loading @@ -417,6 +417,7 @@ constructor( null, // device entry haptics not required for preview mode null, // device entry haptics not required for preview mode null, // falsing manager not required for preview mode null, // falsing manager not required for preview mode null, // keyguard view mediator is not required for preview mode null, // keyguard view mediator is not required for preview mode null, // primary bouncer interactor is not required for preview mode mainDispatcher, mainDispatcher, null, null, ) ) Loading Loading
packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewConfigurator.kt +3 −0 Original line number Original line Diff line number Diff line Loading @@ -71,6 +71,7 @@ import com.android.systemui.shade.domain.interactor.ShadeInteractor import com.android.systemui.statusbar.KeyguardIndicationController import com.android.systemui.statusbar.KeyguardIndicationController import com.android.systemui.statusbar.VibratorHelper import com.android.systemui.statusbar.VibratorHelper import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator import com.google.android.msdl.domain.MSDLPlayer import com.google.android.msdl.domain.MSDLPlayer import dagger.Lazy import dagger.Lazy Loading Loading @@ -112,6 +113,7 @@ constructor( private val clockInteractor: KeyguardClockInteractor, private val clockInteractor: KeyguardClockInteractor, private val keyguardViewMediator: KeyguardViewMediator, private val keyguardViewMediator: KeyguardViewMediator, private val deviceEntryUnlockTrackerViewBinder: Optional<DeviceEntryUnlockTrackerViewBinder>, private val deviceEntryUnlockTrackerViewBinder: Optional<DeviceEntryUnlockTrackerViewBinder>, private val statusBarKeyguardViewManager: StatusBarKeyguardViewManager, @Main private val mainDispatcher: CoroutineDispatcher, @Main private val mainDispatcher: CoroutineDispatcher, private val msdlPlayer: MSDLPlayer, private val msdlPlayer: MSDLPlayer, ) : CoreStartable { ) : CoreStartable { Loading Loading @@ -220,6 +222,7 @@ constructor( vibratorHelper, vibratorHelper, falsingManager, falsingManager, keyguardViewMediator, keyguardViewMediator, statusBarKeyguardViewManager, mainDispatcher, mainDispatcher, msdlPlayer, msdlPlayer, ) ) Loading
packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardRootViewBinder.kt +28 −1 Original line number Original line Diff line number Diff line Loading @@ -24,6 +24,8 @@ import android.graphics.Point import android.graphics.Rect import android.graphics.Rect import android.util.Log import android.util.Log import android.view.HapticFeedbackConstants import android.view.HapticFeedbackConstants import android.view.InputDevice import android.view.MotionEvent import android.view.View import android.view.View import android.view.View.OnLayoutChangeListener import android.view.View.OnLayoutChangeListener import android.view.View.VISIBLE import android.view.View.VISIBLE Loading @@ -41,6 +43,7 @@ import com.android.app.tracing.coroutines.launch import com.android.internal.jank.InteractionJankMonitor import com.android.internal.jank.InteractionJankMonitor import com.android.internal.jank.InteractionJankMonitor.CUJ_SCREEN_OFF_SHOW_AOD import com.android.internal.jank.InteractionJankMonitor.CUJ_SCREEN_OFF_SHOW_AOD import com.android.keyguard.AuthInteractionProperties import com.android.keyguard.AuthInteractionProperties import com.android.systemui.Flags import com.android.systemui.Flags.msdlFeedback import com.android.systemui.Flags.msdlFeedback import com.android.systemui.Flags.newAodTransition import com.android.systemui.Flags.newAodTransition import com.android.systemui.common.shared.model.Icon import com.android.systemui.common.shared.model.Icon Loading Loading @@ -73,6 +76,7 @@ import com.android.systemui.shade.domain.interactor.ShadeInteractor import com.android.systemui.statusbar.CrossFadeHelper import com.android.systemui.statusbar.CrossFadeHelper import com.android.systemui.statusbar.VibratorHelper import com.android.systemui.statusbar.VibratorHelper import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.statusbar.phone.ScreenOffAnimationController import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager import com.android.systemui.temporarydisplay.ViewPriority import com.android.systemui.temporarydisplay.ViewPriority import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator import com.android.systemui.temporarydisplay.chipbar.ChipbarInfo import com.android.systemui.temporarydisplay.chipbar.ChipbarInfo Loading Loading @@ -115,6 +119,7 @@ object KeyguardRootViewBinder { vibratorHelper: VibratorHelper?, vibratorHelper: VibratorHelper?, falsingManager: FalsingManager?, falsingManager: FalsingManager?, keyguardViewMediator: KeyguardViewMediator?, keyguardViewMediator: KeyguardViewMediator?, statusBarKeyguardViewManager: StatusBarKeyguardViewManager?, mainImmediateDispatcher: CoroutineDispatcher, mainImmediateDispatcher: CoroutineDispatcher, msdlPlayer: MSDLPlayer?, msdlPlayer: MSDLPlayer?, ): DisposableHandle { ): DisposableHandle { Loading @@ -124,12 +129,30 @@ object KeyguardRootViewBinder { if (KeyguardBottomAreaRefactor.isEnabled) { if (KeyguardBottomAreaRefactor.isEnabled) { disposables += disposables += view.onTouchListener { _, event -> view.onTouchListener { _, event -> var consumed = false if (falsingManager?.isFalseTap(FalsingManager.LOW_PENALTY) == false) { if (falsingManager?.isFalseTap(FalsingManager.LOW_PENALTY) == false) { // signifies a primary button click down has reached keyguardrootview // we need to return true here otherwise an ACTION_UP will never arrive if (Flags.nonTouchscreenDevicesBypassFalsing()) { if ( event.action == MotionEvent.ACTION_DOWN && event.buttonState == MotionEvent.BUTTON_PRIMARY && !event.isTouchscreenSource() ) { consumed = true } else if ( event.action == MotionEvent.ACTION_UP && !event.isTouchscreenSource() ) { statusBarKeyguardViewManager?.showBouncer(true) consumed = true } } viewModel.setRootViewLastTapPosition( viewModel.setRootViewLastTapPosition( Point(event.x.toInt(), event.y.toInt()) Point(event.x.toInt(), event.y.toInt()) ) ) } } false consumed } } } } Loading Loading @@ -637,6 +660,10 @@ object KeyguardRootViewBinder { } } } } private fun MotionEvent.isTouchscreenSource(): Boolean { return device?.supportsSource(InputDevice.SOURCE_TOUCHSCREEN) == true } private fun ViewPropertyAnimator.animateInIconTranslation(): ViewPropertyAnimator = private fun ViewPropertyAnimator.animateInIconTranslation(): ViewPropertyAnimator = setInterpolator(Interpolators.DECELERATE_QUINT).translationY(0f) setInterpolator(Interpolators.DECELERATE_QUINT).translationY(0f) Loading
packages/SystemUI/src/com/android/systemui/keyguard/ui/preview/KeyguardPreviewRenderer.kt +1 −0 Original line number Original line Diff line number Diff line Loading @@ -417,6 +417,7 @@ constructor( null, // device entry haptics not required for preview mode null, // device entry haptics not required for preview mode null, // falsing manager not required for preview mode null, // falsing manager not required for preview mode null, // keyguard view mediator is not required for preview mode null, // keyguard view mediator is not required for preview mode null, // primary bouncer interactor is not required for preview mode mainDispatcher, mainDispatcher, null, null, ) ) Loading