Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 73582b6d authored by Jay Aliomer's avatar Jay Aliomer Committed by Android (Google) Code Review
Browse files

Merge "Updated UiModeManagerService to always trigger configuration change for...

Merge "Updated UiModeManagerService to always trigger configuration change for setNightMode if it is AAE." into qt-qpr1-dev
parents 6b94e44a d7d27271
Loading
Loading
Loading
Loading
+13 −6
Original line number Original line Diff line number Diff line
@@ -16,6 +16,8 @@


package com.android.server;
package com.android.server;


import static android.content.Intent.ACTION_SCREEN_OFF;

import android.annotation.Nullable;
import android.annotation.Nullable;
import android.app.Activity;
import android.app.Activity;
import android.app.ActivityManager;
import android.app.ActivityManager;
@@ -53,6 +55,7 @@ import android.service.dreams.Sandman;
import android.service.vr.IVrManager;
import android.service.vr.IVrManager;
import android.service.vr.IVrStateCallbacks;
import android.service.vr.IVrStateCallbacks;
import android.util.Slog;
import android.util.Slog;

import com.android.internal.R;
import com.android.internal.R;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.app.DisableCarModeActivity;
import com.android.internal.app.DisableCarModeActivity;
@@ -67,8 +70,6 @@ import com.android.server.wm.WindowManagerInternal;
import java.io.FileDescriptor;
import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.io.PrintWriter;


import static android.content.Intent.ACTION_SCREEN_OFF;

final class UiModeManagerService extends SystemService {
final class UiModeManagerService extends SystemService {
    private static final String TAG = UiModeManager.class.getSimpleName();
    private static final String TAG = UiModeManager.class.getSimpleName();
    private static final boolean LOG = false;
    private static final boolean LOG = false;
@@ -94,6 +95,7 @@ final class UiModeManagerService extends SystemService {
    private boolean mCarModeKeepsScreenOn;
    private boolean mCarModeKeepsScreenOn;
    private boolean mDeskModeKeepsScreenOn;
    private boolean mDeskModeKeepsScreenOn;
    private boolean mTelevision;
    private boolean mTelevision;
    private boolean mCar;
    private boolean mWatch;
    private boolean mWatch;
    private boolean mVrHeadset;
    private boolean mVrHeadset;
    private boolean mComputedNightMode;
    private boolean mComputedNightMode;
@@ -201,12 +203,16 @@ final class UiModeManagerService extends SystemService {
        public void onTwilightStateChanged(@Nullable TwilightState state) {
        public void onTwilightStateChanged(@Nullable TwilightState state) {
            synchronized (mLock) {
            synchronized (mLock) {
                if (mNightMode == UiModeManager.MODE_NIGHT_AUTO) {
                if (mNightMode == UiModeManager.MODE_NIGHT_AUTO) {
                    if (mCar) {
                        updateLocked(0, 0);
                    } else {
                        final IntentFilter intentFilter =
                        final IntentFilter intentFilter =
                                new IntentFilter(ACTION_SCREEN_OFF);
                                new IntentFilter(ACTION_SCREEN_OFF);
                        getContext().registerReceiver(mOnScreenOffHandler, intentFilter);
                        getContext().registerReceiver(mOnScreenOffHandler, intentFilter);
                    }
                    }
                }
                }
            }
            }
        }
    };
    };


    private final BroadcastReceiver mOnScreenOffHandler = new BroadcastReceiver() {
    private final BroadcastReceiver mOnScreenOffHandler = new BroadcastReceiver() {
@@ -320,6 +326,7 @@ final class UiModeManagerService extends SystemService {
        final PackageManager pm = context.getPackageManager();
        final PackageManager pm = context.getPackageManager();
        mTelevision = pm.hasSystemFeature(PackageManager.FEATURE_TELEVISION)
        mTelevision = pm.hasSystemFeature(PackageManager.FEATURE_TELEVISION)
                || pm.hasSystemFeature(PackageManager.FEATURE_LEANBACK);
                || pm.hasSystemFeature(PackageManager.FEATURE_LEANBACK);
        mCar = pm.hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE);
        mWatch = pm.hasSystemFeature(PackageManager.FEATURE_WATCH);
        mWatch = pm.hasSystemFeature(PackageManager.FEATURE_WATCH);


        updateNightModeFromSettings(context, res, UserHandle.getCallingUserId());
        updateNightModeFromSettings(context, res, UserHandle.getCallingUserId());
@@ -492,7 +499,7 @@ final class UiModeManagerService extends SystemService {
                        mNightMode = mode;
                        mNightMode = mode;
                        mNightModeOverride = mode;
                        mNightModeOverride = mode;
                        //on screen off will update configuration instead
                        //on screen off will update configuration instead
                        if (mNightMode != UiModeManager.MODE_NIGHT_AUTO) {
                        if (mNightMode != UiModeManager.MODE_NIGHT_AUTO || mCar) {
                            updateLocked(0, 0);
                            updateLocked(0, 0);
                        } else {
                        } else {
                            getContext().registerReceiver(
                            getContext().registerReceiver(