Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aa9fcab9 authored by Vania Januar's avatar Vania Januar Committed by Automerger Merge Worker
Browse files

Merge "Unsuppress USI low battery notifications when new stylus used." into...

Merge "Unsuppress USI low battery notifications when new stylus used." into tm-qpr-dev am: e220dd05 am: 7ef43716

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20809149



Change-Id: I7df33d93c019f2d3ae0a6251d0157901faabc9d8
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 44fa901e 7ef43716
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -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()
    }
+14 −0
Original line number Diff line number Diff line
@@ -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")