History log of /frameworks/base/services/java/com/android/server/PowerManagerService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
382872e3fa45fb1433976b7bda4b26bbc2072f71 26-Aug-2010 Joe Onorato <joeo@google.com> Continue trying to make the turn off quickly after call feature work.

The previous implementation worked if the set timeout is short enough, which mine was. This one
carries the remaining amount of timeout override forward through all of the countdown steps.

Bug: 2844990
Change-Id: I040df22f9f9ddf98c355ac6845b7624e95f84f33
/frameworks/base/services/java/com/android/server/PowerManagerService.java
8812535137ca657f6830dd01189c429bdb13c237 28-Jul-2010 Andreas Huber <andih@google.com> Add a missing break; to restore old functionality and not turn off the screen after 30secs regardless of system preference.

Change-Id: Ib71113a3bc5aa5fdc088ab4ac3627352499ad3fa
/frameworks/base/services/java/com/android/server/PowerManagerService.java
1fdb1fb43a39c8c29e3265592e0d6a2da419e08e 24-Jul-2010 Joe Onorato <joeo@android.com> Add a method to let a properly permissioned app directly
manipulate the user activity timeout. We should come up
with a better API for this, but this is for a last minute
power manager hack to turn off the screen sooner after a
phone call ends.

Change-Id: I76422f952e3e894c90b3311e7d889899c79cbbaa
/frameworks/base/services/java/com/android/server/PowerManagerService.java
f527c715d7065d8cf6943c37dd5e721bd7a805cd 10-Jun-2010 Mike Lockwood <lockwood@android.com> Don't adjust lights if screen or button brightness is changed when the screen is off.

Change-Id: I798a240374c3a739e1f1eaf36fa9fdef8416f2a2
BUG: 2758292

Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
48358bd5c1a35c153c024608b4a302b90f62abfd 18-Apr-2010 Mike Lockwood <lockwood@android.com> Fix inconsistency in how we handle light sensor when battery is low.

In lightSensorChangedLocked we ignore the light sensor if the battery is low.
But in applyButtonState() and applyKeyboardState() we were still using the previous
mLightSensorScreenBrightness value, which resulted in a race condition that could
leave the button lights on after the screen turns off.
Now we ignore the light sensor value and button brightness override if the battery
is low so the low battery behavior is consistent.

Change-Id: I4943f8904299883211a95596ee207df69d1eaea2
BUG: 2570962

Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
9c90a37c6e8885dfc7848330755401209b605ecd 13-Apr-2010 Mike Lockwood <lockwood@android.com> Fix wakelock leak in PowerManagerService.sendNotificationLocked()

Change-Id: Ia5f814fe81413dc5350faaf4c79cff47de62d0ed
BUG: 2592894
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
f5bd092b5099cf43f031c3f53ad01592dda57f4b 22-Mar-2010 Mike Lockwood <lockwood@android.com> Improve wakelock debugging:

Throw NullPointerException if tag is null in PowerManager.newWakelock()
Print wakelock owner's uid and pid in dumpsys power output.

BUG: 2522675

Change-Id: I462c7f8c49f9896b2f58cef5a678ebd2c062a8f7
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
b62f959430afa80e616675fe15cec5392e8178de 12-Mar-2010 Mike Lockwood <lockwood@android.com> Fix problems with new PowerManager.reboot() implementation.

ShutdownThread.reboot() does return so we need to block after calling it
to prevent PowerManager.reboot() from returning.

Since PowerManager.reboot() can now take significantly longer than before,
we now ignore ANRs during shutdown.

Change-Id: Ibceeb265ae382567215f6a399108d8be3a7bbc95
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
6ffce2e9a3c57634bb73f8ff133ca680f8070d5d 08-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Add new shutdown observer for MountService.
Use new observer before rebooting and shutting down.
Add some unit tests for unmount and shutdown code paths
Fix registering/unregistering part in MountService
Use ShutdownThread in PowerManager.reboot()
Add reboot support to ShutdownThread.
Remove MountService code from PowerManagerService.java and Power.java.
Clean shutdown/reboot is handled exclusively by ShutdownThread now.

Change-Id: Iefb157451d3d9c426cb431707b870a873c09123d
/frameworks/base/services/java/com/android/server/PowerManagerService.java
b42ab0f41cb9dc5988d152ba660d39b3910ae373 04-Mar-2010 Mike Lockwood <lockwood@android.com> Delay setting initial screen brightness until after the sensors are initialized.

Some devices will not activate the light sensor properly on boot
unless we do this.

Change-Id: Ia27b6fc2d515c31eb8597e1d52127d70e2643bd7
BUG: 2269307

Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
84a893467307eb3178b99a7926dea9c8e21579f1 02-Mar-2010 Mike Lockwood <lockwood@android.com> Don't poke user activity when unplugging unless screen is already on.

Change-Id: I5a5f233541e13b3a916ad0d8b3bf8d6fb49ab7fd
BUG: 1317687

Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
8a9b22056b13477f59df934928c00c58b5871c95 27-Feb-2010 Joe Onorato <joeo@android.com> Switch the services library to using the new Slog
/frameworks/base/services/java/com/android/server/PowerManagerService.java
ca44df86ac907fd147633955f6fda7a249625d50 25-Feb-2010 Mike Lockwood <lockwood@android.com> Fix synchronization problem in PowerManagerService.dump()

Fixes a race condition that resulted in an IndexOutOfBoundsException
due to a wakelock being released while dump() was iterating through the
wakelock list.

BUG: 2469910

Change-Id: I10d7a65b9f397934942b290cb047c4ca81214297
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
b104340496e3a531e26c8f428c808eca0e039f50 05-Feb-2010 San Mehat <san@google.com> Framework: Clean up / Refactor Mount APIs

- Move android.storage.* -> android.os.storage.* and refactor users
- Refactor generic shares back to explicit ums enable/disable/isEnabled
- Remove media insert/removed event callbacks (not ready for Froyo)
- Remove 'label' from volume state change callbacks
- Add public API functions for enabling/disabling USB mass storage (permissions enforced
in MountSevice)
- Remove some stray un-needed import lines
- Move android.os.IMountService / android.os.IMountServiceListener -> android.os.storage
- Improve code comments

Updated:
MountService: Add dup state check and move debugging behind a conditional
UsbStorageActivity: Fix review comments + a TODO
StorageNotification: Add @Override tags
StorageManager: Don't use a static Listener list
MountService: Reduce bloat and fix == where I meant .equals()
PackageManagerTests: Update for new API

Signed-off-by: San Mehat <san@google.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
b28654167466277fa262606810115164d9d24d67 03-Feb-2010 Mike Lockwood <lockwood@android.com> Keep automatic screen brightness monotonically increasing until screen is turned off.

This is an experimental change to avoid the light sensor screen fluctuation problem.
We only do this when undocked to since the lighting should be stable in the docked case
and since the dock keeps the screen on we need to be able to adjust the lighting.

Change-Id: I70afcc393f51f2679be8228d6cb993ddc07e5986
BUG: 2387223
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
ef73162887943e16587b8e737b19e59348338e8c 27-Jan-2010 Mike Lockwood <lockwood@android.com> Support for triggering the lockscreen while the screen is on:

Add new ALLOW_LOCK_WHILE_SCREEN_ON window manager flag, which when set
causes the window manager to put up the lockscreen after the
normal screen timeout has elapsed.

Add plumbing to pass PowerManager.userActivity() to the window manager policy.

Change-Id: I05adc52bad39c56031a08e8ec3cbcf5c2d9b9827
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
254cb446faa7cb13699d8150eb4cc4f44cb61a2d 28-Jan-2010 Dianne Hackborn <hackbod@google.com> More device admin.

- Clean up device policy manager APIs.
- Implement lockNow(). For now this just turns the screen off to lock the device.
/frameworks/base/services/java/com/android/server/PowerManagerService.java
df83afaf299666e99c519aa86e7e082b7c116e95 20-Jan-2010 Dianne Hackborn <hackbod@google.com> More device policy manager / admin work.

Update API with some new features, re-arrange how you check for valid
passwords, and start hooking up the back-end implementation.
/frameworks/base/services/java/com/android/server/PowerManagerService.java
43866e0c48bb0effe8805afd62b253e50ca7d591 07-Jan-2010 Doug Zongker <dougz@android.com> move some system services from gservices to secure settings

Change-Id: Ie2dfb99a2b42b2cc9310b858c044d8684e3493fa
/frameworks/base/services/java/com/android/server/PowerManagerService.java
1e512790bfe13bdf4d174892c8b699b93f7f2203 07-Jan-2010 San Mehat <san@google.com> PowerManagerService: Switch to using MountService shutdown for media

Signed-off-by: San Mehat <san@google.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
14e69afdfcefe21c81679a95c476e64ebb276fbe 06-Jan-2010 San Mehat <san@google.com> PowerManagerService: When rebooting, ensure external storage is unmounted

Signed-off-by: San Mehat <san@google.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
60d8762413e8daba5f73559786312a9ec5e3b827 17-Dec-2009 Dan Egnor <egnor@google.com> DropBox logging of app & system server crashes.

The crashes are also reported to the event log (and of course the
main logcat, like they always have been). Ordinary Log.e(t,m,e) isn't dropboxed
but there's a new Log.wtf() which always is. (Still @pending in this change.)

Add a hook to IPowerManager to crash the system server on demand
(only for apps with REBOOT permission, since it's basically a restart).
This is not exposed in PowerManager, must be invoked directly -- mostly
this is there so "Bad Behavior" in dev tools can do it.
/frameworks/base/services/java/com/android/server/PowerManagerService.java
ab5c49c7e7f5f61040650109a76f38a443fb852d 04-Dec-2009 Doug Zongker <dougz@android.com> move event log tags used by system server into this package

We can now locate event log tag definitions in individual packages
(and java constants for the tag numbers get auto-generated), so move
all the tags used by the system server into the package.
/frameworks/base/services/java/com/android/server/PowerManagerService.java
44000eb2a2340b1a47eaa587d4829810e04cbcdc 03-Dec-2009 Mike Lockwood <lockwood@android.com> am 678c2e35: Merge change I9ef88863 into eclair

Merge commit '678c2e35768a5426b4ad8f67c836008e7751a353' into eclair-mr2

* commit '678c2e35768a5426b4ad8f67c836008e7751a353':
Add WindowManagerPolicy.OFF_BECAUSE_OF_PROX_SENSOR to indicate screen was turned off by the proximity sensor.
435eb6464c1f326caf8179438a5401f358f0d7ac 03-Dec-2009 Mike Lockwood <lockwood@android.com> Add WindowManagerPolicy.OFF_BECAUSE_OF_PROX_SENSOR to indicate screen was turned off by the proximity sensor.

Part of a fix for bug b/2300622 (Proximity sensor always blows up the lock screen while in call)

Change-Id: I9ef888638b19540a78a34507d52ff522f505102f
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
3cb67a37f185a7a5b12712907630acb68e0ac402 27-Nov-2009 Mike Lockwood <lockwood@android.com> LightsService cleanup:

Add Light subclass to replace LightsService light setting methods
Remove LightsService.setAttentionLight() and LightsService.pulseBreathingLight()
Add support for Wifi and Bluetooth lights

Change-Id: I707f53cda27481c25649f402567a665d52e9cb62
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
b11832de735e95aac1a1b9e900dbbd8285cee3ad 25-Nov-2009 Mike Lockwood <lockwood@android.com> Add setAttentionLight() to IPowerManager for the Phone app.

Change-Id: Id7b9903e1efaf56a2336519a8653962b6ae2c13d
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
3a32213c4029a03fe39486f3d6ebd0ea18928ee1 24-Nov-2009 Mike Lockwood <lockwood@android.com> Remove HardwareService and move vibrator support to VibratorService.

The lights support is only needed by PowerManagerService and NotificationManagerService, so we do not need a Binder API for it.
Move backlight and notification light support to new LightsService class.
The camera flash is now handled directly by the camera HAL, so the flash Hardware service flash support is obsolete.

Change-Id: I086d681f54668e7f7de3e8b90df3de19d59833c5
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
fb73f79340375013225618a5d87f46b958f698ef 20-Nov-2009 Mike Lockwood <lockwood@android.com> Add window manager support for overriding button and keyboard backlight values.

The new backlightBrightness field works similarly as the existing WindowManager.LayoutParams.screenBrightness field

Needed for bugs:
b/2233655 (under low ambient light the touch keys remain illuminated during video playback and never timeout)
b/2221079 (Backlight for home/search/back/etc buttons should turn off when in dock in night mode)

Change-Id: I60dfecdc7bb653b0db38094464de651220b3d438
/frameworks/base/services/java/com/android/server/PowerManagerService.java
401a712e3b3b41c77e79a130d7b07d653e18bcab 20-Nov-2009 Mike Lockwood <lockwood@android.com> IPowerManager: remove some unused methods.

Change-Id: I7c7fa7eaf6c99e723da20939c27fbc172ad51613
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
50a21f4d3b70360b36acad20e234c380654fd59f 19-Nov-2009 Doug Zongker <dougz@android.com> add reboot() method to PowerManager

In order to unbundle System Update, we need some to expose in the SDK
some way to reboot the device into recovery. Add a reboot() method to
PowerManager, protected by the android.permission.REBOOT permission.
/frameworks/base/services/java/com/android/server/PowerManagerService.java
0e39ea83c5578e0d55e120c91ff7cfeeb0c1cb2f 18-Nov-2009 Mike Lockwood <lockwood@android.com> Fixes for proximity sensor behavior:

Add optional flag to Wakelock.release() to specify whether we should wait for proximity sensor to go negative before turning on the screen.
Clear the "waiting for proximity sensor to go negative" state when the power key is pressed.

Part of the fix for b/2243198 (Black screen lockup after ending call)

Change-Id: I813fdb7aa4192cd3384a25be9e59d7d4b90da53a
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
51b844965be75a2f2e4e83efdd887b0635637d19 17-Nov-2009 Mike Lockwood <lockwood@android.com> Revert "PowerManagerService: enable logging for when mPowerState changes."

This reverts commit 24ace3395b532e3cbb63d2a6197a91dd9242bb36.

Bug b/2265538 (verbose logging from power manager)
/frameworks/base/services/java/com/android/server/PowerManagerService.java
2d7bb81ac4c04447a1e04fef82986b939823dea4 16-Nov-2009 Mike Lockwood <lockwood@android.com> Keep screen bright until boot completed.

Fixes b/2262575 (device boots into darkness)

Change-Id: Ib1fb3fcfd4a389d8aa5803a60e07660cfbe4fe47
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
e090281428cbd1114f4ae2f10755013cea09cdb5 15-Nov-2009 Mike Lockwood <lockwood@android.com> Fix a race condition that resulted in the screen coming on without the brightness set to the correct value.

Do not cancel screen brightness animation in forceUserActivityLocked unless screen is turning off.
Also not turn the screen on if PowerManager.preventScreenOn(false) is called while proximity sensor is active.

Fixes b/2254818 (dim display) where due to a race condition the screen is stuck in a dim state.

Change-Id: If6f805609c8d463631b9e22805e5242714ce34c0
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
0e5bb7f1c9558bcf76af4f31dd5a11e78bcbdc9d 14-Nov-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Hold a wakelock while mProximityTask is queued

This prevents the device from sleeping while a deferred proximity sensor
event is pending.
Fixes b/2260005 (Proximity sensor can fail due to missing wakelock)

Change-Id: Ia4825f548b5b7d8a0b184f720b32c2f21b77b96e
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
cc9a63dbc2b5569ef65ec3a04d86dbdfdee3f134 10-Nov-2009 Mike Lockwood <lockwood@android.com> Add support for specifying the current LCD brightness mode to the backlight driver.

This allows the driver to behave differently depending on if the lighting is being
managed by the light sensor or by a user preference.

Change-Id: I4b9325f82b7aded0ce5cfc6c07658666bbdae331
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
50c548d242d637328ec6b2c4987969b02695cc7d 09-Nov-2009 Mike Lockwood <lockwood@android.com> Disabling user activity now resets user power state so the keyguard can set short screen timeout when keyguard is unhidden.

This is part of a fix for bug b/2248320 (Lock screen does not time out after

Change-Id: Iba7f8a7b9997ecb0e4da37667600055f9a35531c
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
ee2b094de0c5d7ffa64d51e7bd4ec3238be97113 09-Nov-2009 Mike Lockwood <lockwood@android.com> Do not deactivate the proximity sensor until after the sensor returns negative.

This ensures that we do not get cheek presses immediately after a call is ended.
Fixes bug b/2246824 (prox sensor subtleties when call ends)

Change-Id: I97d39b7689d9ea2e94ea9aceeb93bf15228ec095
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
24ace3395b532e3cbb63d2a6197a91dd9242bb36 10-Nov-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: enable logging for when mPowerState changes.

Change-Id: Idcd983106d66629070eda15e1160f708c789ab05
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
ba8eb1efefdc98c016b64e10c26f9729697f254f 09-Nov-2009 Mike Lockwood <lockwood@android.com> Use SystemClock.elapsedRealtime() instead of sensor timestamp

when processing light and proximity events.
This should fix loss of 2 second hysterisis for light sensor (b/2243521)

Change-Id: Ia3ce331e67d803eb5e51810cb7161b7c528312d7
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
497087e33d422d576d007f72fb970613d008f1cf 09-Nov-2009 Mike Lockwood <lockwood@android.com> Ignore the light sensor if the screen is turning off.

Fixes bug b/2202165. The light sensor was interfering with the screen off animation.

Change-Id: I1bc566a164af689b60b066e6cb3dcbf7959bc50a
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
20ee6f2dd30b8f0940b5f447ef2df340628e1876 08-Nov-2009 Mike Lockwood <lockwood@android.com> Do not apply light sensor debounce logic while the light sensor is still warming up.

This allows us to adjust immediately when we receive a correct light sensor reading
after the screen turns on.

Change-Id: I627047365640761727348e577c9164a6d6be2772
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
9b813692f5cfe06f10416b61bcb388f1e9ac198b 06-Nov-2009 Mike Lockwood <lockwood@android.com> Increase light sensor delay from one to two seconds.

Change-Id: I3f0ded49cb447835133cf8d5d693260e8312aa89
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
322591cb4b158dc2edbc3d95cd02e44f132feb5f 29-Oct-2009 Charles Mendis <cmendis@google.com> Expose PowerManager.isScreenOn in the public api.

Change-Id: I6ccd2ebcbf3f8ad9ffa4b86a9c037cb0c25a7b78
/frameworks/base/services/java/com/android/server/PowerManagerService.java
0d72f7e9fc0d6f774eda5758d111bec5608bcf42 06-Nov-2009 Mike Lockwood <lockwood@android.com> Fix a race condition that could result in the screen being forced off indefinitely after a phone call.

This should fix a "black screen" bug that Motorola identified.
mProximitySensorActive was being set to true due to a proximity sensor change being posted
just after we disabled the proximity sensor.
Now we ignore proximity changes after the phone app releases the proximity lock after the call is done.

Change-Id: I417d423de3d43515389b1b7b008cdcb795cd10f6
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
20f87d7aed6c926eadd8beea44968a8d13780021 05-Nov-2009 Mike Lockwood <lockwood@android.com> Throttle proximity sensor values so we do not process more than one change a second.

This is to prevent a noisy proximity sensor from causing the screen to turn on and off
in rapid succession, which can trigger race conditions in the keyguard manager.

Change-Id: I2c6e54e4b41716e038854ed9a827c901579c8865
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
27c6dd7aa4ff6f57435a3c87d8b9a782cf7c9116 04-Nov-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Fix manual brightness mode.

Change-Id: I10aec64e3f7ae2715475b9797565747295c19a00
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
f90ffcc639fe979f346f062d620d34c28e57c885 03-Nov-2009 Mike Lockwood <lockwood@android.com> Remove obsolete hardware auto-brightness support.

Change-Id: Ibd0ef67f887254f26ce19faf0627f8b246ec0a18
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
952211b4ae8fa8cd626ae5a077b87924f35e0081 02-Nov-2009 Mike Lockwood <lockwood@android.com> Fix problem with proximity sensor not reawaking screen if the values change too quickly.

The logic that disables user activity while turning off the screen should not affect proximity sensor.

Fixes bug b/2228734 (in-call, prox sensor gets confused)

Change-Id: Ieca126e6f79bf7baa5741981aea72d306ba03edc
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
f1d14f6a33bc6086db52a77b6a1217452b7eac90 02-Nov-2009 Mike Lockwood <lockwood@android.com> Do not advance mLastEventTime when enabling or disabling user activity.

Fixes a race condition between the keyguard and power key that sometimes resulted
in the power key failing to turn off the screen.

Fixes bug b/2212852 (Power button does not put phone to sleep)

Change-Id: I92498c5fddf2bfc32b105ea1a7ea14a06d83888e
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
9efd523c4611c0cf10e712453a699c083a01064c 01-Nov-2009 Mike Lockwood <lockwood@android.com> Add warning that hardware auto-brightness is deprecated and will be removed in the next release.

Change-Id: I90eae78f71f377f6479d0aaf7ced38a7b988a7ee
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
4984e73dc5fc3df757e4ac8dd333b88151deb3ea 01-Nov-2009 Mike Lockwood <lockwood@android.com> Manage button and keyboard backlights with light sensor in both manual and automatic mode.

Now the manual brightness mode only applies to the LCD backlight and
button and keyboard backlights are always managed automatically.

Fixes bug b/2195798 (Passion capacitive key backlights don't always come on)

This change only affects the framework based auto-brightness implementation.
Hardware auto-brightness is not affected.

Change-Id: Ib88310d642d498591e8879c8269d630ff3f7c8af
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
df024920ebc63a82f570105c7a26e339ff244afd 30-Oct-2009 Mike Lockwood <lockwood@android.com> Don't turn on keyboard backlights when keyboard is closed in auto brightness mode.

For framework light sensor support (does not affect hardware based approach).

Change-Id: I6896a7c5b3fd3ed136c4f25c63a0e5813c349f68
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
aa66ea880f58c9caa49e31c166bb3bd6bbf14e21 31-Oct-2009 Mike Lockwood <lockwood@android.com> Use separate flags for enabling hardware and software auto-brightness.

This cleans up the code in preparation for some other auto-brightness changes
and fixes support for devices without light sensors.

Change-Id: I3d4802cf860a865ffd86a8bb57cd57b46359433d
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
05067120682487df7121b8d2b6f7b02deeb9cd93 28-Oct-2009 Mike Lockwood <lockwood@android.com> A better solution for ignoring user activity while the screen is animating off.

Fixes a deadlock that occurred because mAnimatingScreenOff was left set to true
after aborting turning off the screen.
This change removes the mAnimatingScreenOff flag and checks for
(mScreenBrightness.animating && mScreenBrightness.targetValue == 0) instead.

Fixes bug b/2219706

Change-Id: I081f08c14ad7585a953fb567867238b1f3db841f
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
dd9668ec63887136b62642546d4b82ff21db17f8 27-Oct-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Animate LCD backlight changes due to autobrightness support.

Change-Id: I9c242127df801125c30f399198d1f7e9c8579612
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
2d155d264e5cefc27abf2c5020fcfa06bde755ec 27-Oct-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Fix bug resulting in backlights turning on while screen is off.

Fixes bugs b/2216879 and b/2197060

Change-Id: I5de3cbdbc0601dd7950dba74cacfff06d41ad18e
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
809ad0fce357de0a55fbc57356a06f29a1021e3b 27-Oct-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Clear Binder calling identity around calls to Sensor Manager.

This fixes a problem that resulted in bogus battery statistics for the prox and light sensors
due to the sensors being enabled in an app's context and disabled in the system context.

Fixes problems reported in bug b/2211960

Change-Id: Ib0d3d9d06f043b386d3b8d494b9bad5bd40bb6e1
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
3333fa4f3d2e1bd3842fe7d41d19557ff9a98372 26-Oct-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Ensure that recent changes do not effect the hardware ALS case.

Change-Id: I42d2d1331c2a6234dfbdaa99f0cc8ab249f7ce22
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
6eb14c30387d9c13538887e54bc180a430b2ac40 25-Oct-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Do not enable light sensor if hardware backlight management is being used.

Change-Id: Ic652ac22ec3256d71d12504148927349dfbd3384
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
3c9435a20597adec7ec2e110b92920b4a9ecb0e7 22-Oct-2009 Mike Lockwood <lockwood@android.com> PowerManager: Don't poke user activity in setKeyboardVisibility unless the state actually changed.

Fixes bug b/2158297 (lock screen should time out after 7 seconds)

Change-Id: Ia3f7ef6464129ab78283923dbfd7f7472136e676
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
f003c0c15d28fbd70f00aa8a4529cc081a21e0f0 21-Oct-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Ignore user activity while the screen is animating off.

Fixes bug b/2202165 (Often I when pressing power to turn off I get the lock screen)

Change-Id: I53f8350203d57fbb5f143edc44985879caadd78f
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
fa68ab4fb0750b429c43af1d0c20539462ba6746 20-Oct-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Add missing synchronization in mAutoBrightnessTask.

Change-Id: Ie9b93253e991f709b223b28a9148be3b254fb273
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
6c97fcabbc4592a115afa5f3357b3172c4791855 20-Oct-2009 Mike Lockwood <lockwood@android.com> Power Manager light sensor fixes:

Fix problem with ignored sensor events right after screen turns on.
Do not flash button backlights when device is booting.
Process the first light sensor change after waking the screen immediately rather than debouncing.
Cancel mAutoBrightnessTask when light sensor is disabled.

Change-Id: Iffc5e090b239432b7643812fa8ecb5f69da1679d
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
d7786b41b78ba8592daea708b024b5a75e441992 16-Oct-2009 Mike Lockwood <lockwood@android.com> Power Manager support for light sensor backlight management.

Change-Id: I470e2d7d12abf0dbfd31d84859b06bfae3cb36a1
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
8738e0c040061a179ad88adb997143f076277b04 04-Oct-2009 Mike Lockwood <lockwood@android.com> Register for light sensor events if non-hardware based auto-brightnees is enabled

Change-Id: I9521cf8b315306bdafa70c1500f2e4af83d94ec3
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
dc3494e3d8e17aeb0dbbe41953a5ef763d95ff78 15-Oct-2009 Mike Lockwood <lockwood@android.com> Remove PowerManager.setAutoBrightness()

We will use the System.SCREEN_BRIGHTNESS_MODE Settings value instead.
Add SCREEN_BRIGHTNESS_MODE_MANUAL and SCREEN_BRIGHTNESS_MODE_AUTOMATIC constants.

Change-Id: I01935be3fcb48cf76392d2c594205cb47babc5b2
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
aa80b60b596e54dcfae55db73262440b0acba198 10-Oct-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2179931: Power key to wake up frequently ignored when in dock app

The dock app is forcing the screen to a particular brightness level. This
causes the window manager to often call into the power manager with the
new brightness. This causes us to go in to updateLightsLocked() to figure
out and apply the real brightness to use. When the screen is off the
real brightness always remains 0, but even if it didn't change from the
last one we would start an animation which would when done put the system
to sleep and fight with the user trying to turn the device on.

Now, if the new target brightness is the same as the last one, we leave the
animation as-is -- either running or not as appropriate.

Change-Id: I067d55ea2b39e294c5d5291587a4d8727c0b8083
/frameworks/base/services/java/com/android/server/PowerManagerService.java
94db928d8cf5a69e8c2907fc33a6d656045f263d 22-Sep-2009 Mike Lockwood <lockwood@android.com> PowerManager: Require proximity sensor value be less than Sensor.getMaximumRange()

This allows us to support binary proximity sensors that only return 0.0 and 1.0

Change-Id: Ifaf3a4e6fc720cb246ac3558e3e733b4b612c95b
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
fe2bddfae1b8c2375f58216871d923cbfe267dd3 21-Sep-2009 Dianne Hackborn <hackbod@google.com> Don't wake up the screen as soon as the lid opens.

We may need to wait until the lock screen is ready.

Change-Id: Id114f4f37051680ab880056b4c989b1fa8aa02b3
/frameworks/base/services/java/com/android/server/PowerManagerService.java
200b30bba53412919d2b5b4b85c02727b87f51df 20-Sep-2009 Mike Lockwood <lockwood@android.com> Wake the screen if the proximity wakelock is released while the proximity sensor is active.

This fixes a problem that resulted in the screen staying off indefinitely if the prox sensor
is active at the beginning of a bluetooth call and could result in the screen staying off
in other similar circumstances.

Change-Id: Icfa0046d3179f9bb2247e7a3c1f9ff073312667a
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
c17f07aa0468424e3475d7761313b761372d1860 17-Sep-2009 Mike Lockwood <lockwood@android.com> Revert "Don't activate keyguard if screen is turned off while proximity sensor is active."

This reverts commit ddfe879b783ad72603308e28e8f683454464684e.
/frameworks/base/services/java/com/android/server/PowerManagerService.java
237a29923a05663a2195bf93b392768dbaf31ebf 15-Sep-2009 Mike Lockwood <lockwood@android.com> Move backlight brightness from HardwareService to PowerManager

to prevent apps from changing the hardware behind its back.
Fixes b/2041941 Lock screen flashes the screen very bright before dimming

Change-Id: Ice757f7ae87902bdfb3634471cf44f020ebfaae4
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
d20ea369b26cb40ee6122dd819ce9ef947489146 15-Sep-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Use 5 cm threshold for the proximity sensor.

This eliminates the assumption that the proximity sensor will always return
zero distance when it is active.

Change-Id: I6245b074e4c42aeae3a181e6a5087554517046d2
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
951764b97010dfa073126f52b43ea1bdf1b35998 27-Aug-2009 Dan Murphy <D.Murphy@motorola.com> Add automatic lighting control framework

Add changes to have the ability to turn on and off the
automatic light sensing for the device. This is fully configurable
and is by default not present. Vendors should override the ALS setting
to enable the automatic lighting controls.

These changes will add a check box to the Brightness settings menu to give control
to the user to allow the device's display lighting to be controlled via the slide bar
or the auto lighting system.

If the user selects auto then the slide bar will become invisible. Manual mode
will present the slide bar to the user.

Change-Id: I146a6d75b99b08c9b839218ce6b85adf21f9fd73
Signed-off-by: Dan Murphy <D.Murphy@motorola.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
a625b38cb3a6a6b3a890369b7bbbed7c028cb120 13-Sep-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Fix keyboard backlight support:

Turn off keyboard backlight immediately when keyboard is closed.
Changing keyboard visibility state signals user activity except in the case
where the keyboard is closed and the screen is already off.

Fixes bugs b/1351141 and b/1319625

Change-Id: If4bf2c1dd8e0c2bc08196e443b6103a6041f27e1
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
ddfe879b783ad72603308e28e8f683454464684e 27-Aug-2009 Mike Lockwood <lockwood@android.com> Don't activate keyguard if screen is turned off while proximity sensor is active.

Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
36fc302560fbc6dff3099860356d290d1653371c 26-Aug-2009 Mike Lockwood <lockwood@android.com> PowerManagerService: Disallow all user activity when in proximity wake lock.

Fixes b/2076756

Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
06952d9299c23ee15df0825e75934971cfecf2ba 13-Aug-2009 Mike Lockwood <lockwood@android.com> DO NOT MERGE - cherry-picked from master:

PowerManager: Fix problem waking screen from negative proximity sensor events.

Fixes bug b/2048591

Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
251faa625002088c2d1b2387b5dc1fcb7e5a341d 03-Aug-2009 David Brown <dab@google.com> Display a helpful label for PROXIMITY_SCREEN_OFF_WAKE_LOCKs in the output
of "dumpsys power".
/frameworks/base/services/java/com/android/server/PowerManagerService.java
bc706a03a25f0dfe2cb0ecd1f6e4f7be905592a7 27-Jul-2009 Mike Lockwood <lockwood@android.com> PowerManager: Add proximity sensor support.

Add new wakelock flag PROXIMITY_SCREEN_OFF_WAKE_LOCK.
If you create a wakelock with this flag, while the wakelock is acquired,
the screen will turn off automatically when the sensor detects an object close to the screen.
Removing the object will cause the screen to wake up again.

Added PowerManager.getSupportedWakeLockFlags(), which can be used to determine
if proximity screen off wakelocks are supported by the hardware.

Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/services/java/com/android/server/PowerManagerService.java
fff2fda0199dedbf1079454dca98a81190dce765 01-Jul-2009 Suchi Amalapurapu <asuchitra@google.com> Fix memory leaks in system_server
unlink DeathRecipients in a whole bunch of places to avoid memory leaks
/frameworks/base/services/java/com/android/server/PowerManagerService.java
e96440fa15b9158690996dd1e5ef2096099d5388 06-May-2009 Michael Chan <nobody@android.com> AI 148368: Decrease CPU usage by throttling touch events
We are decreasing CPU usage at the cost of event latency. Events are queued up
and released to the app at the specified rate. You can
experiment with different values via:
adb shell setprop windowsmgr.max_events_per_sec 35
The new value is picked up when you let go and retouch the screen. No
reboot needed.
Also the following changes were made after profiling:
- In WindowManagerService, limit the call to userActivity() when we
have a flood touch events.
- In PowerManagerService, skip checking of permission if the caller
is system user.
- In PowerManagerService, integrated the functionality of gatherState()
into reactivateWakeLocksLocked(). They loop through the same data
structure and are called back to back.
BUG=1692771

Automated import of CL 148368
/frameworks/base/services/java/com/android/server/PowerManagerService.java
617f877c06c82584a38f41bb60d836e08c5e3bda 01-Apr-2009 Dianne Hackborn <> AI 143800: am: CL 143748 Fix issue #1743326 (More battery stats)
Adds stats for:
- Number of raw user events that have happened in the system.
- Number of times user activity has been reported, dividied by UID and type of activity.
- Duration of screen brightness levels in 4 buckets.
- Per-UID tracking of who has turned on Wifi and how long we can attribute it being on because of them.
Original author: hackbod
Merged from: //branches/cupcake/...

Automated import of CL 143800
/frameworks/base/services/java/com/android/server/PowerManagerService.java
9ed4a4b0d7dadeadd57bd81e2cc538670d9654b9 26-Mar-2009 Dianne Hackborn <> Automated import from //branches/donutburger/...@142722,142722
/frameworks/base/services/java/com/android/server/PowerManagerService.java
64c62ba503c73eee1fb647ffcc1b3df287640ab1 25-Mar-2009 Joe Onorato <> Automated import from //branches/donutburger/...@141409,141409
/frameworks/base/services/java/com/android/server/PowerManagerService.java
e68ffcb5764152da6d36adc8f2918200b4472c23 25-Mar-2009 Joe Onorato <> Automated import from //branches/donutburger/...@140997,140997
/frameworks/base/services/java/com/android/server/PowerManagerService.java
128e729c493042d694df9d285ea390e25e2c3fde 25-Mar-2009 Joe Onorato <> Automated import from //branches/donutburger/...@140846,140846
/frameworks/base/services/java/com/android/server/PowerManagerService.java
105925376f8d0f6b318c9938c7b83ef7fef094da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
/frameworks/base/services/java/com/android/server/PowerManagerService.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/services/java/com/android/server/PowerManagerService.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/services/java/com/android/server/PowerManagerService.java
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
/frameworks/base/services/java/com/android/server/PowerManagerService.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
/frameworks/base/services/java/com/android/server/PowerManagerService.java
15ab3eae2ec3d73b3e8aa60b33ae41445bf83f4b 20-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132569
/frameworks/base/services/java/com/android/server/PowerManagerService.java
3001a035439d8134a7d70d796376d1dfbff3cdcd 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
/frameworks/base/services/java/com/android/server/PowerManagerService.java
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
/frameworks/base/services/java/com/android/server/PowerManagerService.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/frameworks/base/services/java/com/android/server/PowerManagerService.java
b798689749c64baba81f02e10cf2157c747d6b46 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
/frameworks/base/services/java/com/android/server/PowerManagerService.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/services/java/com/android/server/PowerManagerService.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/services/java/com/android/server/PowerManagerService.java