Merge "DO NOT MERGE: Set the appliance (tv/watch) in the configuration earlier" into lmp-mr1-modular-dev

This commit is contained in:
Anthony Hugh
2015-03-23 20:15:49 +00:00
committed by Android (Google) Code Review
2 changed files with 24 additions and 9 deletions

View File

@@ -156,7 +156,7 @@ final class UiModeManagerService extends SystemService {
@Override
public void onStart() {
final Context context = getContext();
mTwilightManager = getLocalService(TwilightManager.class);
final PowerManager powerManager =
(PowerManager) context.getSystemService(Context.POWER_SERVICE);
mWakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, TAG);
@@ -183,7 +183,11 @@ final class UiModeManagerService extends SystemService {
mNightMode = Settings.Secure.getInt(context.getContentResolver(),
Settings.Secure.UI_NIGHT_MODE, UiModeManager.MODE_NIGHT_AUTO);
mTwilightManager.registerListener(mTwilightListener, mHandler);
// Update the initial, static configurations.
synchronized (this) {
updateConfigurationLocked();
sendConfigurationLocked();
}
publishBinderService(Context.UI_MODE_SERVICE, mService);
}
@@ -292,8 +296,11 @@ final class UiModeManagerService extends SystemService {
pw.print(" mSetUiMode=0x"); pw.println(Integer.toHexString(mSetUiMode));
pw.print(" mHoldingConfiguration="); pw.print(mHoldingConfiguration);
pw.print(" mSystemReady="); pw.println(mSystemReady);
pw.print(" mTwilightService.getCurrentState()=");
pw.println(mTwilightManager.getCurrentState());
if (mTwilightManager != null) {
// We may not have a TwilightManager.
pw.print(" mTwilightService.getCurrentState()=");
pw.println(mTwilightManager.getCurrentState());
}
}
}
@@ -301,6 +308,10 @@ final class UiModeManagerService extends SystemService {
public void onBootPhase(int phase) {
if (phase == SystemService.PHASE_SYSTEM_SERVICES_READY) {
synchronized (mLock) {
mTwilightManager = getLocalService(TwilightManager.class);
if (mTwilightManager != null) {
mTwilightManager.registerListener(mTwilightListener, mHandler);
}
mSystemReady = true;
mCarModeEnabled = mDockState == Intent.EXTRA_DOCK_STATE_CAR;
updateComputedNightModeLocked();
@@ -626,9 +637,11 @@ final class UiModeManagerService extends SystemService {
}
private void updateComputedNightModeLocked() {
TwilightState state = mTwilightManager.getCurrentState();
if (state != null) {
mComputedNightMode = state.isNight();
if (mTwilightManager != null) {
TwilightState state = mTwilightManager.getCurrentState();
if (state != null) {
mComputedNightMode = state.isNight();
}
}
}

View File

@@ -569,6 +569,10 @@ public final class SystemServer {
}
}
// We start this here so that we update our configuration to set watch or television
// as appropriate.
mSystemServiceManager.startService(UiModeManagerService.class);
try {
mPackageManagerService.performBootDexOpt();
} catch (Throwable e) {
@@ -834,8 +838,6 @@ public final class SystemServer {
mSystemServiceManager.startService(TwilightService.class);
mSystemServiceManager.startService(UiModeManagerService.class);
mSystemServiceManager.startService(JobSchedulerService.class);
if (!disableNonCoreServices) {