From e7e03697d6e05f43e9766c2320a23535802ab60e Mon Sep 17 00:00:00 2001 From: Nicholas Wallace Date: Sun, 2 Feb 2025 12:49:08 -0700 Subject: [PATCH] Fix: shake to reset only during grace period or while playing --- .../com/audiobookshelf/app/managers/SleepTimerManager.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/android/app/src/main/java/com/audiobookshelf/app/managers/SleepTimerManager.kt b/android/app/src/main/java/com/audiobookshelf/app/managers/SleepTimerManager.kt index 43ab6980..ddf4aa4b 100644 --- a/android/app/src/main/java/com/audiobookshelf/app/managers/SleepTimerManager.kt +++ b/android/app/src/main/java/com/audiobookshelf/app/managers/SleepTimerManager.kt @@ -343,9 +343,12 @@ constructor(private val playerNotificationService: PlayerNotificationService) { } } - /** Handles the shake event to reset the sleep timer. */ + /** + * Handles the shake event to reset the sleep timer. Shaking to reset only works during the 2 + * minute grace period after the timer ends or while media is playing. + */ fun handleShake() { - if (sleepTimerRunning || sleepTimerFinishedAt > 0L) { + if ((sleepTimerRunning && getIsPlaying()) || sleepTimerFinishedAt > 0L) { if (DeviceManager.deviceData.deviceSettings?.disableShakeToResetSleepTimer == true) { Log.d(tag, "Shake to reset sleep timer is disabled") return