Improve brightness handling during screen off timeout.

- Align doze brightness logic with DisplayPowerController, so that the
  'minimum dim amount' is taken into account by DozeScreenBrightness.
- Clamp brightness to the now-correct dim value during the entire screen
  off animation, rather than sometimes transitioning to the sensor value.
  Apply the sensor brightness value on changing to the DOZE Display state,
  which happens after the screen off animation.

This brings the changes from ag/15974454 (Improve brightness handling
during screen off timeout) and ag/16047064 (Fix DozeScreenBrightnessTest)
into sc-v2/master from sc/qpr1, along with externalizing the minimum dim
percent as a config value.

Bug: 194972547
Test: at 0%, 45%, and 100% brightness, allow the screen to time out in
bright and dark rooms, observe minimal brightness changes
Change-Id: I0a1ae320274661e58d6b398a8facdfad54e49a06
7 files changed