Skip to content
Commit 73298fa2 authored by Robert Horvath's avatar Robert Horvath
Browse files

Add additional dirty checks in updateWakefulnessLocked

updateWakefulnessLocked is responsible for updating the wakefulness
state, ie. going to sleep if sleep conditions are met.
By changing the sleep timeout settings to a value that is lower than the
time since last user activity, you can get into a state where the device
does not go to sleep even though the sleep timeout is expired.
updateWakefulnessLocked should check all dirty flags that could trigger
a change in wakefulness.

This CL adds checks for two dirty flags:
- DIRTY_SETTINGS: As described above, changing the sleep timeout could
  lead to a situation in which the sleep timeout is already expired and
  the device should go to sleep
- DIRTY_SCREEN_BRIGHTNESS_BOOST: Inattentive sleep is disabled during
  screen brightness boosts. As soon as the brightness boost ends, the
  device should go to sleep if the timeout is expired.

Bug: 149008991
Test: 1. adb shell settings put secure sleep_timeout 900000
      2. adb shell input keyevent HOME
      3. sleep 15
      4. adb shell settings put secure sleep_timeout 10000
      Observe: Device goes to sleep

Test: 1. adb shell settings put secure attentive_timeout -1
      2. adb shell input keyevent HOME
      3. sleep 40
      4. adb shell settings put secure attentive_timeout 32000
      Observe: Device goes to sleep

Change-Id: I86be64f18f5c4d9dba43376fa608223b8c5ae6b2
parent 8032bcb3
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment