Loading packages/SystemUI/src/com/android/systemui/dagger/SystemUICoreStartableModule.kt +7 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import com.android.systemui.power.PowerUI import com.android.systemui.recents.Recents import com.android.systemui.shortcut.ShortcutKeyDispatcher import com.android.systemui.statusbar.notification.InstantAppNotifier import com.android.systemui.statusbar.phone.KeyguardLiftController import com.android.systemui.theme.ThemeOverlayController import com.android.systemui.toast.ToastUI import com.android.systemui.usb.StorageNotification Loading Loading @@ -198,4 +199,10 @@ abstract class SystemUICoreStartableModule { @IntoMap @ClassKey(WMShell::class) abstract fun bindWMShell(sysui: WMShell): CoreStartable /** Inject into KeyguardLiftController. */ @Binds @IntoMap @ClassKey(KeyguardLiftController::class) abstract fun bindKeyguardLiftController(sysui: KeyguardLiftController): CoreStartable } No newline at end of file packages/SystemUI/src/com/android/systemui/keyguard/dagger/KeyguardModule.java +0 −22 Original line number Diff line number Diff line Loading @@ -16,10 +16,8 @@ package com.android.systemui.keyguard.dagger; import android.annotation.Nullable; import android.app.trust.TrustManager; import android.content.Context; import android.content.pm.PackageManager; import android.os.PowerManager; import com.android.internal.jank.InteractionJankMonitor; Loading @@ -44,18 +42,14 @@ import com.android.systemui.keyguard.DismissCallbackRegistry; import com.android.systemui.keyguard.KeyguardUnlockAnimationController; import com.android.systemui.keyguard.KeyguardViewMediator; import com.android.systemui.navigationbar.NavigationModeController; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.statusbar.NotificationShadeDepthController; import com.android.systemui.statusbar.NotificationShadeWindowController; import com.android.systemui.statusbar.SysuiStatusBarStateController; import com.android.systemui.statusbar.phone.CentralSurfaces; import com.android.systemui.statusbar.phone.DozeParameters; import com.android.systemui.statusbar.phone.KeyguardLiftController; import com.android.systemui.statusbar.phone.ScreenOffAnimationController; import com.android.systemui.statusbar.policy.KeyguardStateController; import com.android.systemui.statusbar.policy.UserSwitcherController; import com.android.systemui.util.DeviceConfigProxy; import com.android.systemui.util.sensors.AsyncSensorManager; import java.util.concurrent.Executor; Loading Loading @@ -133,20 +127,4 @@ public class KeyguardModule { notificationShadeWindowController, activityLaunchAnimator); } @SysUISingleton @Provides @Nullable static KeyguardLiftController provideKeyguardLiftController( Context context, StatusBarStateController statusBarStateController, AsyncSensorManager asyncSensorManager, KeyguardUpdateMonitor keyguardUpdateMonitor, DumpManager dumpManager) { if (!context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FACE)) { return null; } return new KeyguardLiftController(statusBarStateController, asyncSensorManager, keyguardUpdateMonitor, dumpManager); } } packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardLiftController.kt +36 −14 Original line number Diff line number Diff line Loading @@ -16,34 +16,52 @@ package com.android.systemui.statusbar.phone import android.content.Context import android.content.pm.PackageManager import android.hardware.Sensor import android.hardware.TriggerEvent import android.hardware.TriggerEventListener import com.android.keyguard.KeyguardUpdateMonitor import com.android.keyguard.KeyguardUpdateMonitorCallback import com.android.systemui.CoreStartable import com.android.systemui.Dumpable import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dump.DumpManager import com.android.systemui.plugins.statusbar.StatusBarStateController import com.android.systemui.util.Assert import com.android.systemui.util.sensors.AsyncSensorManager import java.io.FileDescriptor import java.io.PrintWriter import javax.inject.Inject class KeyguardLiftController constructor( /** * Triggers face auth on lift when the device is showing the lock screen. Only initialized * if face auth is supported on the device. Not to be confused with the lift to wake gesture * which is handled by {@link com.android.server.policy.PhoneWindowManager}. */ @SysUISingleton class KeyguardLiftController @Inject constructor( private val context: Context, private val statusBarStateController: StatusBarStateController, private val asyncSensorManager: AsyncSensorManager, private val keyguardUpdateMonitor: KeyguardUpdateMonitor, dumpManager: DumpManager ) : StatusBarStateController.StateListener, Dumpable, KeyguardUpdateMonitorCallback() { private val dumpManager: DumpManager ) : Dumpable, CoreStartable(context) { private val pickupSensor = asyncSensorManager.getDefaultSensor(Sensor.TYPE_PICK_UP_GESTURE) private var isListening = false private var bouncerVisible = false init { override fun start() { if (context.packageManager.hasSystemFeature(PackageManager.FEATURE_FACE)) { init() } } private fun init() { dumpManager.registerDumpable(javaClass.name, this) statusBarStateController.addCallback(this) keyguardUpdateMonitor.registerCallback(this) statusBarStateController.addCallback(statusBarStateListener) keyguardUpdateMonitor.registerCallback(keyguardUpdateMonitorCallback) updateListeningState() } Loading @@ -58,10 +76,7 @@ class KeyguardLiftController constructor( } } override fun onDozingChanged(isDozing: Boolean) { updateListeningState() } private val keyguardUpdateMonitorCallback = object : KeyguardUpdateMonitorCallback() { override fun onKeyguardBouncerChanged(bouncer: Boolean) { bouncerVisible = bouncer updateListeningState() Loading @@ -70,6 +85,13 @@ class KeyguardLiftController constructor( override fun onKeyguardVisibilityChanged(showing: Boolean) { updateListeningState() } } private val statusBarStateListener = object : StatusBarStateController.StateListener { override fun onDozingChanged(isDozing: Boolean) { updateListeningState() } } override fun dump(fd: FileDescriptor, pw: PrintWriter, args: Array<out String>) { pw.println("KeyguardLiftController:") Loading Loading
packages/SystemUI/src/com/android/systemui/dagger/SystemUICoreStartableModule.kt +7 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import com.android.systemui.power.PowerUI import com.android.systemui.recents.Recents import com.android.systemui.shortcut.ShortcutKeyDispatcher import com.android.systemui.statusbar.notification.InstantAppNotifier import com.android.systemui.statusbar.phone.KeyguardLiftController import com.android.systemui.theme.ThemeOverlayController import com.android.systemui.toast.ToastUI import com.android.systemui.usb.StorageNotification Loading Loading @@ -198,4 +199,10 @@ abstract class SystemUICoreStartableModule { @IntoMap @ClassKey(WMShell::class) abstract fun bindWMShell(sysui: WMShell): CoreStartable /** Inject into KeyguardLiftController. */ @Binds @IntoMap @ClassKey(KeyguardLiftController::class) abstract fun bindKeyguardLiftController(sysui: KeyguardLiftController): CoreStartable } No newline at end of file
packages/SystemUI/src/com/android/systemui/keyguard/dagger/KeyguardModule.java +0 −22 Original line number Diff line number Diff line Loading @@ -16,10 +16,8 @@ package com.android.systemui.keyguard.dagger; import android.annotation.Nullable; import android.app.trust.TrustManager; import android.content.Context; import android.content.pm.PackageManager; import android.os.PowerManager; import com.android.internal.jank.InteractionJankMonitor; Loading @@ -44,18 +42,14 @@ import com.android.systemui.keyguard.DismissCallbackRegistry; import com.android.systemui.keyguard.KeyguardUnlockAnimationController; import com.android.systemui.keyguard.KeyguardViewMediator; import com.android.systemui.navigationbar.NavigationModeController; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.statusbar.NotificationShadeDepthController; import com.android.systemui.statusbar.NotificationShadeWindowController; import com.android.systemui.statusbar.SysuiStatusBarStateController; import com.android.systemui.statusbar.phone.CentralSurfaces; import com.android.systemui.statusbar.phone.DozeParameters; import com.android.systemui.statusbar.phone.KeyguardLiftController; import com.android.systemui.statusbar.phone.ScreenOffAnimationController; import com.android.systemui.statusbar.policy.KeyguardStateController; import com.android.systemui.statusbar.policy.UserSwitcherController; import com.android.systemui.util.DeviceConfigProxy; import com.android.systemui.util.sensors.AsyncSensorManager; import java.util.concurrent.Executor; Loading Loading @@ -133,20 +127,4 @@ public class KeyguardModule { notificationShadeWindowController, activityLaunchAnimator); } @SysUISingleton @Provides @Nullable static KeyguardLiftController provideKeyguardLiftController( Context context, StatusBarStateController statusBarStateController, AsyncSensorManager asyncSensorManager, KeyguardUpdateMonitor keyguardUpdateMonitor, DumpManager dumpManager) { if (!context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FACE)) { return null; } return new KeyguardLiftController(statusBarStateController, asyncSensorManager, keyguardUpdateMonitor, dumpManager); } }
packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardLiftController.kt +36 −14 Original line number Diff line number Diff line Loading @@ -16,34 +16,52 @@ package com.android.systemui.statusbar.phone import android.content.Context import android.content.pm.PackageManager import android.hardware.Sensor import android.hardware.TriggerEvent import android.hardware.TriggerEventListener import com.android.keyguard.KeyguardUpdateMonitor import com.android.keyguard.KeyguardUpdateMonitorCallback import com.android.systemui.CoreStartable import com.android.systemui.Dumpable import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dump.DumpManager import com.android.systemui.plugins.statusbar.StatusBarStateController import com.android.systemui.util.Assert import com.android.systemui.util.sensors.AsyncSensorManager import java.io.FileDescriptor import java.io.PrintWriter import javax.inject.Inject class KeyguardLiftController constructor( /** * Triggers face auth on lift when the device is showing the lock screen. Only initialized * if face auth is supported on the device. Not to be confused with the lift to wake gesture * which is handled by {@link com.android.server.policy.PhoneWindowManager}. */ @SysUISingleton class KeyguardLiftController @Inject constructor( private val context: Context, private val statusBarStateController: StatusBarStateController, private val asyncSensorManager: AsyncSensorManager, private val keyguardUpdateMonitor: KeyguardUpdateMonitor, dumpManager: DumpManager ) : StatusBarStateController.StateListener, Dumpable, KeyguardUpdateMonitorCallback() { private val dumpManager: DumpManager ) : Dumpable, CoreStartable(context) { private val pickupSensor = asyncSensorManager.getDefaultSensor(Sensor.TYPE_PICK_UP_GESTURE) private var isListening = false private var bouncerVisible = false init { override fun start() { if (context.packageManager.hasSystemFeature(PackageManager.FEATURE_FACE)) { init() } } private fun init() { dumpManager.registerDumpable(javaClass.name, this) statusBarStateController.addCallback(this) keyguardUpdateMonitor.registerCallback(this) statusBarStateController.addCallback(statusBarStateListener) keyguardUpdateMonitor.registerCallback(keyguardUpdateMonitorCallback) updateListeningState() } Loading @@ -58,10 +76,7 @@ class KeyguardLiftController constructor( } } override fun onDozingChanged(isDozing: Boolean) { updateListeningState() } private val keyguardUpdateMonitorCallback = object : KeyguardUpdateMonitorCallback() { override fun onKeyguardBouncerChanged(bouncer: Boolean) { bouncerVisible = bouncer updateListeningState() Loading @@ -70,6 +85,13 @@ class KeyguardLiftController constructor( override fun onKeyguardVisibilityChanged(showing: Boolean) { updateListeningState() } } private val statusBarStateListener = object : StatusBarStateController.StateListener { override fun onDozingChanged(isDozing: Boolean) { updateListeningState() } } override fun dump(fd: FileDescriptor, pw: PrintWriter, args: Array<out String>) { pw.println("KeyguardLiftController:") Loading