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

Commit 4232c17d authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Move ReduceBrightColors content observer registration to bg thread" into main

parents ac06dc0e f1335286
Loading
Loading
Loading
Loading
+27 −10
Original line number Diff line number Diff line
@@ -29,7 +29,6 @@ import android.provider.Settings;

import androidx.annotation.NonNull;

import com.android.server.display.feature.flags.Flags;
import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.dagger.qualifiers.Background;
import com.android.systemui.settings.UserTracker;
@@ -81,6 +80,12 @@ public class ReduceBrightColorsControllerImpl implements
                mAvailable = true;
                synchronized (mListeners) {
                    if (mListeners.size() > 0) {
                        if (com.android.systemui.Flags.registerContentObserversAsync()) {
                            mSecureSettings.unregisterContentObserverAsync(mContentObserver);
                            mSecureSettings.registerContentObserverForUserAsync(
                                    Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                                    false, mContentObserver, newUser);
                        } else {
                            mSecureSettings.unregisterContentObserverSync(mContentObserver);
                            mSecureSettings.registerContentObserverForUserSync(
                                    Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
@@ -88,6 +93,7 @@ public class ReduceBrightColorsControllerImpl implements
                        }
                    }
                }
            }
        };
        mUserTracker.addCallback(mCurrentUserTrackerCallback, new HandlerExecutor(handler));
    }
@@ -98,6 +104,11 @@ public class ReduceBrightColorsControllerImpl implements
            if (!mListeners.contains(listener)) {
                mListeners.add(listener);
                if (mListeners.size() == 1) {
                    if (com.android.systemui.Flags.registerContentObserversAsync()) {
                        mSecureSettings.registerContentObserverForUserAsync(
                                Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                                false, mContentObserver, mUserTracker.getUserId());
                    } else {
                        mSecureSettings.registerContentObserverForUserSync(
                                Settings.Secure.REDUCE_BRIGHT_COLORS_ACTIVATED,
                                false, mContentObserver, mUserTracker.getUserId());
@@ -105,15 +116,20 @@ public class ReduceBrightColorsControllerImpl implements
                }
            }
        }
    }

    @Override
    public void removeCallback(@androidx.annotation.NonNull Listener listener) {
        synchronized (mListeners) {
            if (mListeners.remove(listener) && mListeners.size() == 0) {
                if (com.android.systemui.Flags.registerContentObserversAsync()) {
                    mSecureSettings.unregisterContentObserverAsync(mContentObserver);
                } else {
                    mSecureSettings.unregisterContentObserverSync(mContentObserver);
                }
            }
        }
    }

    @Override
    public boolean isReduceBrightColorsActivated() {
@@ -139,7 +155,8 @@ public class ReduceBrightColorsControllerImpl implements

    @Override
    public boolean isInUpgradeMode(Resources resources) {
        return Flags.evenDimmer() && resources.getBoolean(
        return com.android.server.display.feature.flags.Flags.evenDimmer()
            && resources.getBoolean(
                com.android.internal.R.bool.config_evenDimmerEnabled);
    }