Loading packages/SystemUI/src/com/android/systemui/stylus/StylusUsiPowerStartable.kt +11 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,17 @@ constructor( private val featureFlags: FeatureFlags, ) : CoreStartable, StylusManager.StylusCallback, StylusManager.StylusBatteryCallback { override fun onStylusAdded(deviceId: Int) { // On some devices, the addition of a new internal stylus indicates the use of a // USI stylus with a different vendor/product ID. We would therefore like to reset // the battery notification suppression, in case the user has dismissed a low battery // notification of the previous stylus. val device = inputManager.getInputDevice(deviceId) ?: return if (!device.isExternal) { stylusUsiPowerUi.updateSuppression(false) } } override fun onStylusBluetoothConnected(deviceId: Int, btAddress: String) { stylusUsiPowerUi.refresh() } Loading packages/SystemUI/tests/src/com/android/systemui/stylus/StylusUsiPowerStartableTest.kt +14 −0 Original line number Diff line number Diff line Loading @@ -91,6 +91,20 @@ class StylusUsiPowerStartableTest : SysuiTestCase() { verify(stylusUsiPowerUi, times(1)).init() } @Test fun onStylusAdded_internal_updatesNotificationSuppression() { startable.onStylusAdded(STYLUS_DEVICE_ID) verify(stylusUsiPowerUi, times(1)).updateSuppression(false) } @Test fun onStylusAdded_external_noop() { startable.onStylusAdded(EXTERNAL_DEVICE_ID) verifyZeroInteractions(stylusUsiPowerUi) } @Test fun onStylusBluetoothConnected_refreshesNotification() { startable.onStylusBluetoothConnected(STYLUS_DEVICE_ID, "ANY") Loading Loading
packages/SystemUI/src/com/android/systemui/stylus/StylusUsiPowerStartable.kt +11 −0 Original line number Diff line number Diff line Loading @@ -39,6 +39,17 @@ constructor( private val featureFlags: FeatureFlags, ) : CoreStartable, StylusManager.StylusCallback, StylusManager.StylusBatteryCallback { override fun onStylusAdded(deviceId: Int) { // On some devices, the addition of a new internal stylus indicates the use of a // USI stylus with a different vendor/product ID. We would therefore like to reset // the battery notification suppression, in case the user has dismissed a low battery // notification of the previous stylus. val device = inputManager.getInputDevice(deviceId) ?: return if (!device.isExternal) { stylusUsiPowerUi.updateSuppression(false) } } override fun onStylusBluetoothConnected(deviceId: Int, btAddress: String) { stylusUsiPowerUi.refresh() } Loading
packages/SystemUI/tests/src/com/android/systemui/stylus/StylusUsiPowerStartableTest.kt +14 −0 Original line number Diff line number Diff line Loading @@ -91,6 +91,20 @@ class StylusUsiPowerStartableTest : SysuiTestCase() { verify(stylusUsiPowerUi, times(1)).init() } @Test fun onStylusAdded_internal_updatesNotificationSuppression() { startable.onStylusAdded(STYLUS_DEVICE_ID) verify(stylusUsiPowerUi, times(1)).updateSuppression(false) } @Test fun onStylusAdded_external_noop() { startable.onStylusAdded(EXTERNAL_DEVICE_ID) verifyZeroInteractions(stylusUsiPowerUi) } @Test fun onStylusBluetoothConnected_refreshesNotification() { startable.onStylusBluetoothConnected(STYLUS_DEVICE_ID, "ANY") Loading