Loading packages/SystemUI/src/com/android/systemui/stylus/StylusUsiPowerUI.kt +7 −5 Original line number Diff line number Diff line Loading @@ -36,10 +36,10 @@ import com.android.internal.annotations.VisibleForTesting import com.android.internal.logging.InstanceId import com.android.internal.logging.InstanceIdSequence import com.android.internal.logging.UiEventLogger import com.android.systemui.res.R import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.log.DebugLogger.debugLog import com.android.systemui.res.R import com.android.systemui.shared.hardware.hasInputDevice import com.android.systemui.shared.hardware.isAnyStylusSource import com.android.systemui.util.NotificationChannels Loading @@ -65,8 +65,10 @@ constructor( private var batteryCapacity = 1.0f private var suppressed = false private var instanceId: InstanceId? = null @VisibleForTesting var inputDeviceId: Int? = null @VisibleForTesting var inputDeviceId: Int? = null private set @VisibleForTesting var instanceIdSequence = InstanceIdSequence(1 shl 13) fun init() { Loading Loading @@ -113,7 +115,7 @@ constructor( inputDeviceId = deviceId if (batteryState.capacity == batteryCapacity || batteryState.capacity <= 0f) return@updateBattery // Note that batteryState.capacity == NaN will fall through to here batteryCapacity = batteryState.capacity debugLog { "Updating notification battery state to $batteryCapacity " + Loading Loading @@ -172,7 +174,7 @@ constructor( } private fun isBatteryBelowThreshold(): Boolean { return batteryCapacity <= LOW_BATTERY_THRESHOLD return !batteryCapacity.isNaN() && batteryCapacity <= LOW_BATTERY_THRESHOLD } private fun hasConnectedBluetoothStylus(): Boolean { Loading packages/SystemUI/tests/src/com/android/systemui/stylus/StylusUsiPowerUiTest.kt +9 −1 Original line number Diff line number Diff line Loading @@ -31,8 +31,8 @@ import androidx.test.filters.SmallTest import com.android.internal.logging.InstanceId import com.android.internal.logging.UiEventLogger import com.android.systemui.InstanceIdSequenceFake import com.android.systemui.res.R import com.android.systemui.SysuiTestCase import com.android.systemui.res.R import com.android.systemui.util.mockito.any import com.android.systemui.util.mockito.argumentCaptor import com.android.systemui.util.mockito.eq Loading Loading @@ -108,6 +108,14 @@ class StylusUsiPowerUiTest : SysuiTestCase() { verifyNoMoreInteractions(notificationManager) } @Test fun updateBatteryState_capacityNaN_cancelsNotification() { stylusUsiPowerUi.updateBatteryState(0, FixedCapacityBatteryState(Float.NaN)) verify(notificationManager, times(1)).cancel(R.string.stylus_battery_low_percentage) verifyNoMoreInteractions(notificationManager) } @Test fun updateBatteryState_capacityBelowThreshold_notifies() { stylusUsiPowerUi.updateBatteryState(0, FixedCapacityBatteryState(0.1f)) Loading Loading
packages/SystemUI/src/com/android/systemui/stylus/StylusUsiPowerUI.kt +7 −5 Original line number Diff line number Diff line Loading @@ -36,10 +36,10 @@ import com.android.internal.annotations.VisibleForTesting import com.android.internal.logging.InstanceId import com.android.internal.logging.InstanceIdSequence import com.android.internal.logging.UiEventLogger import com.android.systemui.res.R import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.log.DebugLogger.debugLog import com.android.systemui.res.R import com.android.systemui.shared.hardware.hasInputDevice import com.android.systemui.shared.hardware.isAnyStylusSource import com.android.systemui.util.NotificationChannels Loading @@ -65,8 +65,10 @@ constructor( private var batteryCapacity = 1.0f private var suppressed = false private var instanceId: InstanceId? = null @VisibleForTesting var inputDeviceId: Int? = null @VisibleForTesting var inputDeviceId: Int? = null private set @VisibleForTesting var instanceIdSequence = InstanceIdSequence(1 shl 13) fun init() { Loading Loading @@ -113,7 +115,7 @@ constructor( inputDeviceId = deviceId if (batteryState.capacity == batteryCapacity || batteryState.capacity <= 0f) return@updateBattery // Note that batteryState.capacity == NaN will fall through to here batteryCapacity = batteryState.capacity debugLog { "Updating notification battery state to $batteryCapacity " + Loading Loading @@ -172,7 +174,7 @@ constructor( } private fun isBatteryBelowThreshold(): Boolean { return batteryCapacity <= LOW_BATTERY_THRESHOLD return !batteryCapacity.isNaN() && batteryCapacity <= LOW_BATTERY_THRESHOLD } private fun hasConnectedBluetoothStylus(): Boolean { Loading
packages/SystemUI/tests/src/com/android/systemui/stylus/StylusUsiPowerUiTest.kt +9 −1 Original line number Diff line number Diff line Loading @@ -31,8 +31,8 @@ import androidx.test.filters.SmallTest import com.android.internal.logging.InstanceId import com.android.internal.logging.UiEventLogger import com.android.systemui.InstanceIdSequenceFake import com.android.systemui.res.R import com.android.systemui.SysuiTestCase import com.android.systemui.res.R import com.android.systemui.util.mockito.any import com.android.systemui.util.mockito.argumentCaptor import com.android.systemui.util.mockito.eq Loading Loading @@ -108,6 +108,14 @@ class StylusUsiPowerUiTest : SysuiTestCase() { verifyNoMoreInteractions(notificationManager) } @Test fun updateBatteryState_capacityNaN_cancelsNotification() { stylusUsiPowerUi.updateBatteryState(0, FixedCapacityBatteryState(Float.NaN)) verify(notificationManager, times(1)).cancel(R.string.stylus_battery_low_percentage) verifyNoMoreInteractions(notificationManager) } @Test fun updateBatteryState_capacityBelowThreshold_notifies() { stylusUsiPowerUi.updateBatteryState(0, FixedCapacityBatteryState(0.1f)) Loading