Merge changes I116424c4,Ibd0ef67f into eclair
* changes: Remove obsolete hardware auto-brightness support. Add documentation for proximity and light sensors.
This commit is contained in:
@@ -46,13 +46,21 @@ public class Sensor {
|
||||
|
||||
/** A constant describing a gyroscope sensor type */
|
||||
public static final int TYPE_GYROSCOPE = 4;
|
||||
/** A constant describing a light sensor type */
|
||||
/**
|
||||
* A constant describing an light sensor type.
|
||||
* See {@link android.hardware.SensorEvent SensorEvent}
|
||||
* for more details.
|
||||
*/
|
||||
public static final int TYPE_LIGHT = 5;
|
||||
/** A constant describing a pressure sensor type */
|
||||
public static final int TYPE_PRESSURE = 6;
|
||||
/** A constant describing a temperature sensor type */
|
||||
public static final int TYPE_TEMPERATURE = 7;
|
||||
/** A constant describing a proximity sensor type */
|
||||
/**
|
||||
* A constant describing an proximity sensor type.
|
||||
* See {@link android.hardware.SensorEvent SensorEvent}
|
||||
* for more details.
|
||||
*/
|
||||
public static final int TYPE_PROXIMITY = 8;
|
||||
|
||||
|
||||
|
||||
@@ -115,8 +115,19 @@ public class SensorEvent {
|
||||
* <p>{@link android.hardware.Sensor#TYPE_MAGNETIC_FIELD Sensor.TYPE_MAGNETIC_FIELD}:<p>
|
||||
* All values are in micro-Tesla (uT) and measure the ambient magnetic
|
||||
* field in the X, Y and Z axis.
|
||||
*
|
||||
*/
|
||||
*
|
||||
* <p>{@link android.hardware.Sensor#TYPE_LIGHT Sensor.TYPE_LIGHT}:<p>
|
||||
*
|
||||
* <p>values[0]: Ambient light level in SI lux units
|
||||
*
|
||||
* <p>{@link android.hardware.Sensor#TYPE_PROXIMITY Sensor.TYPE_PROXIMITY}:<p>
|
||||
*
|
||||
* <p>values[0]: Proximity sensor distance measured in centimeters
|
||||
*
|
||||
* <p> Note that some proximity sensors only support a binary "close" or "far" measurement.
|
||||
* In this case, the sensor should report its maxRange value in the "far" state and a value
|
||||
* less than maxRange in the "near" state.
|
||||
*/
|
||||
public final float[] values;
|
||||
|
||||
/**
|
||||
|
||||
@@ -71,11 +71,6 @@
|
||||
the slider can be opened (for example, in a pocket or purse). -->
|
||||
<bool name="config_bypass_keyguard_if_slider_open">true</bool>
|
||||
|
||||
<!-- Flag indicating whether the device supports automatic brightness mode in hardware.
|
||||
WARNING - DO NOT USE THIS FEATURE
|
||||
Hardware auto brightness support is deprecated and will be removed in the next release. -->
|
||||
<bool name="config_hardware_automatic_brightness_available">false</bool>
|
||||
|
||||
<!-- Flag indicating whether the we should enable the automatic brightness in Settings.
|
||||
Software implementation will be used if config_hardware_auto_brightness_available is not set -->
|
||||
<bool name="config_automatic_brightness_available">false</bool>
|
||||
|
||||
@@ -59,8 +59,6 @@ public class HardwareService extends IHardwareService.Stub {
|
||||
private boolean mAttentionLightOn;
|
||||
private boolean mPulsing;
|
||||
|
||||
private boolean mAutoBrightnessAvailable;
|
||||
|
||||
private class Vibration implements IBinder.DeathRecipient {
|
||||
private final IBinder mToken;
|
||||
private final long mTimeout;
|
||||
@@ -131,9 +129,6 @@ public class HardwareService extends IHardwareService.Stub {
|
||||
IntentFilter filter = new IntentFilter();
|
||||
filter.addAction(Intent.ACTION_SCREEN_OFF);
|
||||
context.registerReceiver(mIntentReceiver, filter);
|
||||
|
||||
mAutoBrightnessAvailable = context.getResources().getBoolean(
|
||||
com.android.internal.R.bool.config_hardware_automatic_brightness_available);
|
||||
}
|
||||
|
||||
protected void finalize() throws Throwable {
|
||||
@@ -287,12 +282,6 @@ public class HardwareService extends IHardwareService.Stub {
|
||||
setLight_native(mNativePointer, light, color, mode, onMS, offMS);
|
||||
}
|
||||
|
||||
void setAutoBrightness_UNCHECKED(boolean on) {
|
||||
if (mAutoBrightnessAvailable) {
|
||||
setAutoBrightness_native(mNativePointer, on);
|
||||
}
|
||||
}
|
||||
|
||||
public void setAttentionLight(boolean on) {
|
||||
// Not worthy of a permission. We shouldn't have a flashlight permission.
|
||||
synchronized (this) {
|
||||
@@ -493,7 +482,6 @@ public class HardwareService extends IHardwareService.Stub {
|
||||
private static native int init_native();
|
||||
private static native void finalize_native(int ptr);
|
||||
|
||||
private static native void setAutoBrightness_native(int ptr, boolean automatic);
|
||||
private static native void setLight_native(int ptr, int light, int color, int mode,
|
||||
int onMS, int offMS);
|
||||
|
||||
|
||||
@@ -218,12 +218,6 @@ class PowerManagerService extends IPowerManager.Stub
|
||||
private int[] mButtonBacklightValues;
|
||||
private int[] mKeyboardBacklightValues;
|
||||
|
||||
/*
|
||||
* WARNING - DO NOT USE THE HARDWARE AUTO-BRIGHTNESS FEATURE
|
||||
* Hardware auto brightness support is deprecated and will be removed in the next release.
|
||||
*/
|
||||
private boolean mUseHardwareAutoBrightness;
|
||||
|
||||
// Used when logging number and duration of touch-down cycles
|
||||
private long mTotalTouchDownTime;
|
||||
private long mLastTouchDown;
|
||||
@@ -448,17 +442,6 @@ class PowerManagerService extends IPowerManager.Stub
|
||||
// read settings for auto-brightness
|
||||
mUseSoftwareAutoBrightness = resources.getBoolean(
|
||||
com.android.internal.R.bool.config_automatic_brightness_available);
|
||||
|
||||
/*
|
||||
* WARNING - DO NOT USE THE HARDWARE AUTO-BRIGHTNESS FEATURE
|
||||
* Hardware auto brightness support is deprecated and will be removed in the next release.
|
||||
*/
|
||||
mUseHardwareAutoBrightness = resources.getBoolean(
|
||||
com.android.internal.R.bool.config_hardware_automatic_brightness_available);
|
||||
if (mUseHardwareAutoBrightness) {
|
||||
mUseSoftwareAutoBrightness = false;
|
||||
}
|
||||
|
||||
if (mUseSoftwareAutoBrightness) {
|
||||
mAutoBrightnessLevels = resources.getIntArray(
|
||||
com.android.internal.R.array.config_autoBrightnessLevels);
|
||||
@@ -906,7 +889,6 @@ class PowerManagerService extends IPowerManager.Stub
|
||||
pw.println(" mLightSensorEnabled=" + mLightSensorEnabled);
|
||||
pw.println(" mLightSensorValue=" + mLightSensorValue);
|
||||
pw.println(" mLightSensorPendingValue=" + mLightSensorPendingValue);
|
||||
pw.println(" mUseHardwareAutoBrightness=" + mUseHardwareAutoBrightness);
|
||||
pw.println(" mUseSoftwareAutoBrightness=" + mUseSoftwareAutoBrightness);
|
||||
pw.println(" mAutoBrightessEnabled=" + mAutoBrightessEnabled);
|
||||
mScreenBrightness.dump(pw, " mScreenBrightness: ");
|
||||
@@ -2086,16 +2068,9 @@ class PowerManagerService extends IPowerManager.Stub
|
||||
|
||||
private void setScreenBrightnessMode(int mode) {
|
||||
boolean enabled = (mode == SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
|
||||
if (mAutoBrightessEnabled != enabled) {
|
||||
if (mUseSoftwareAutoBrightness && mAutoBrightessEnabled != enabled) {
|
||||
mAutoBrightessEnabled = enabled;
|
||||
|
||||
if (mUseHardwareAutoBrightness) {
|
||||
// When setting auto-brightness, must reset the brightness afterwards
|
||||
mHardware.setAutoBrightness_UNCHECKED(enabled);
|
||||
if (screenIsOn()) {
|
||||
setBacklightBrightness((int)mScreenBrightness.curValue);
|
||||
}
|
||||
} else if (mUseSoftwareAutoBrightness && screenIsOn()) {
|
||||
if (screenIsOn()) {
|
||||
// force recompute of backlight values
|
||||
if (mLightSensorValue >= 0) {
|
||||
int value = (int)mLightSensorValue;
|
||||
|
||||
@@ -100,18 +100,6 @@ static void finalize_native(JNIEnv *env, jobject clazz, int ptr)
|
||||
free(devices);
|
||||
}
|
||||
|
||||
static void setAutoBrightness_native(JNIEnv *env, jobject clazz, int ptr,
|
||||
jboolean automatic)
|
||||
{
|
||||
Devices* devices = (Devices*)ptr;
|
||||
|
||||
if (devices->lights[LIGHT_INDEX_BACKLIGHT] == NULL) {
|
||||
return;
|
||||
}
|
||||
|
||||
devices->lights[LIGHT_INDEX_BACKLIGHT]->set_als_mode(automatic ? 0 : 1);
|
||||
}
|
||||
|
||||
static void setLight_native(JNIEnv *env, jobject clazz, int ptr,
|
||||
int light, int colorARGB, int flashMode, int onMS, int offMS)
|
||||
{
|
||||
@@ -146,7 +134,6 @@ static void vibratorOff(JNIEnv *env, jobject clazz)
|
||||
static JNINativeMethod method_table[] = {
|
||||
{ "init_native", "()I", (void*)init_native },
|
||||
{ "finalize_native", "(I)V", (void*)finalize_native },
|
||||
{ "setAutoBrightness_native", "(IZ)V", (void*)setAutoBrightness_native },
|
||||
{ "setLight_native", "(IIIIII)V", (void*)setLight_native },
|
||||
{ "vibratorOn", "(J)V", (void*)vibratorOn },
|
||||
{ "vibratorOff", "()V", (void*)vibratorOff }
|
||||
|
||||
Reference in New Issue
Block a user