Merge "AOD: Introduce night brightness bucket" into oc-dr1-dev

This commit is contained in:
Andrew Lehmer
2017-07-28 01:03:44 +00:00
committed by Android (Google) Code Review
2 changed files with 19 additions and 28 deletions

View File

@@ -267,14 +267,15 @@
<!-- Doze: alpha to apply to small icons when dozing --> <!-- Doze: alpha to apply to small icons when dozing -->
<integer name="doze_small_icon_alpha">222</integer><!-- 87% of 0xff --> <integer name="doze_small_icon_alpha">222</integer><!-- 87% of 0xff -->
<!-- Doze: the brightness value to use for the lower brightness AOD mode --> <!-- Doze: Table that translates sensor values from the doze_brightness_sensor_type sensor
<integer name="config_doze_aod_brightness_low">5</integer> to brightness values; -1 means keeping the current brightness. -->
<integer-array name="config_doze_brightness_sensor_to_brightness">
<!-- Doze: the brightness value to use for the higher brightness AOD mode --> <item>-1</item> <!-- 0: OFF -->
<integer name="config_doze_aod_brightness_high">27</integer> <item>2</item> <!-- 1: NIGHT -->
<item>5</item> <!-- 2: LOW -->
<!-- Doze: the brightness value to use for the sunlight AOD mode --> <item>27</item> <!-- 3: HIGH -->
<integer name="config_doze_aod_brightness_sunlight">28</integer> <item>28</item> <!-- 4: SUN -->
</integer-array>
<!-- Doze: whether the double tap sensor reports 2D touch coordinates --> <!-- Doze: whether the double tap sensor reports 2D touch coordinates -->
<bool name="doze_double_tap_reports_touch_coordinates">false</bool> <bool name="doze_double_tap_reports_touch_coordinates">false</bool>

View File

@@ -35,12 +35,9 @@ public class DozeScreenBrightness implements DozeMachine.Part, SensorEventListen
private final Handler mHandler; private final Handler mHandler;
private final SensorManager mSensorManager; private final SensorManager mSensorManager;
private final Sensor mLightSensor; private final Sensor mLightSensor;
private final int[] mSensorToBrightness;
private boolean mRegistered; private boolean mRegistered;
private final int mHighBrightness;
private final int mLowBrightness;
private final int mSunlightBrightness;
public DozeScreenBrightness(Context context, DozeMachine.Service service, public DozeScreenBrightness(Context context, DozeMachine.Service service,
SensorManager sensorManager, Sensor lightSensor, Handler handler) { SensorManager sensorManager, Sensor lightSensor, Handler handler) {
mContext = context; mContext = context;
@@ -49,12 +46,8 @@ public class DozeScreenBrightness implements DozeMachine.Part, SensorEventListen
mLightSensor = lightSensor; mLightSensor = lightSensor;
mHandler = handler; mHandler = handler;
mLowBrightness = context.getResources().getInteger( mSensorToBrightness = context.getResources().getIntArray(
R.integer.config_doze_aod_brightness_low); R.array.config_doze_brightness_sensor_to_brightness);
mHighBrightness = context.getResources().getInteger(
R.integer.config_doze_aod_brightness_high);
mSunlightBrightness = context.getResources().getInteger(
R.integer.config_doze_aod_brightness_sunlight);
} }
@Override @Override
@@ -81,21 +74,18 @@ public class DozeScreenBrightness implements DozeMachine.Part, SensorEventListen
@Override @Override
public void onSensorChanged(SensorEvent event) { public void onSensorChanged(SensorEvent event) {
if (mRegistered) { if (mRegistered) {
mDozeService.setDozeScreenBrightness(computeBrightness((int) event.values[0])); int brightness = computeBrightness((int) event.values[0]);
if (brightness > 0) {
mDozeService.setDozeScreenBrightness(brightness);
}
} }
} }
private int computeBrightness(int sensorValue) { private int computeBrightness(int sensorValue) {
// The sensor reports 0 for off, 1 for low brightness, 2 for high brightness, and 3 for if (sensorValue < 0 || sensorValue >= mSensorToBrightness.length) {
// sunlight. We currently use DozeScreenState for screen off, so we treat off as low return -1;
// brightness.
if (sensorValue >= 3) {
return mSunlightBrightness;
} else if (sensorValue == 2) {
return mHighBrightness;
} else {
return mLowBrightness;
} }
return mSensorToBrightness[sensorValue];
} }
@Override @Override