diff options
| author | 2009-11-16 03:21:12 -0800 | |
|---|---|---|
| committer | 2009-11-16 03:21:12 -0800 | |
| commit | fa82d97dc67b2c3047ad2abe7553d4a0f47b6e7f (patch) | |
| tree | 81a4b732cb9c7a18feaaf70239a719c1be57ce65 | |
| parent | e2071c6b1d68220976d495d917566edf01303680 (diff) | |
| parent | 2d7bb81ac4c04447a1e04fef82986b939823dea4 (diff) | |
Merge change Ib1fb3fcf into eclair
* changes:
Keep screen bright until boot completed.
| -rw-r--r-- | services/java/com/android/server/PowerManagerService.java | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/services/java/com/android/server/PowerManagerService.java b/services/java/com/android/server/PowerManagerService.java index bde03f3f9b5b..38269e1a1751 100644 --- a/services/java/com/android/server/PowerManagerService.java +++ b/services/java/com/android/server/PowerManagerService.java @@ -154,6 +154,7 @@ class PowerManagerService extends IPowerManager.Stub private final int MY_UID; private boolean mDoneBooting = false; + private boolean mBootCompleted = false; private int mStayOnConditions = 0; private int[] mBroadcastQueue = new int[] { -1, -1, -1 }; private int[] mBroadcastWhy = new int[3]; @@ -351,6 +352,13 @@ class PowerManagerService extends IPowerManager.Stub } } + private final class BootCompletedReceiver extends BroadcastReceiver { + @Override + public void onReceive(Context context, Intent intent) { + bootCompleted(); + } + } + /** * Set the setting that determines whether the device stays on when plugged in. * The argument is a bit string, with each bit specifying a power source that, @@ -498,6 +506,9 @@ class PowerManagerService extends IPowerManager.Stub IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_BATTERY_CHANGED); mContext.registerReceiver(new BatteryReceiver(), filter); + filter = new IntentFilter(); + filter.addAction(Intent.ACTION_BOOT_COMPLETED); + mContext.registerReceiver(new BootCompletedReceiver(), filter); // Listen for Gservices changes IntentFilter gservicesChangedFilter = @@ -970,7 +981,7 @@ class PowerManagerService extends IPowerManager.Stub private void setTimeoutLocked(long now, int nextState) { - if (mDoneBooting) { + if (mBootCompleted) { mHandler.removeCallbacks(mTimeoutTask); mTimeoutTask.nextState = nextState; long when = now; @@ -1385,7 +1396,7 @@ class PowerManagerService extends IPowerManager.Stub return; } - if (!mDoneBooting && !mUseSoftwareAutoBrightness) { + if (!mBootCompleted && !mUseSoftwareAutoBrightness) { newState |= ALL_BRIGHT; } @@ -2343,6 +2354,13 @@ class PowerManagerService extends IPowerManager.Stub } finally { Binder.restoreCallingIdentity(identity); } + } + } + + void bootCompleted() { + Log.d(TAG, "bootCompleted"); + synchronized (mLocks) { + mBootCompleted = true; userActivity(SystemClock.uptimeMillis(), false, BUTTON_EVENT, true); updateWakeLockLocked(); mLocks.notifyAll(); |