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

Unverified Commit fad49c85 authored by Danesh M's avatar Danesh M Committed by Michael Bestas
Browse files

Move keyDisabled and gamma to service



This allows us to keep track of user changes, and
update preferences.

CYNGNOS-1166

Change-Id: I8809c346c748e39e5d64b9e56a2b7623a0d0131b

CMSettings : Move force_show_navbar to global

Keep feature inline with 12.1, only allow owner to
control the feature and mirror across users.

Also add additional checks for moved settings.

OPO-696

Change-Id: I81c942ab106fead12020107b99c0795a5b9aac98

Settings: defer DEV_FORCE_SHOW_NAVBAR query to CMSettings

Some apps were using Settings.System.DEV_FORCE_SHOW_NAVBAR to determine
whether the device was forcing a nav bar. It was then moved to
Settings.Secure, and then to CMSettings.Secure.

So some apps check against Settings.System, and some may check against
Settings.Secure. The real value lives in CMSettings.Secure right now.

We could not intercept the setting because MOVED_TO_SECURE would return
the already-cached value from Settings.Secure, not allowing us to
intercept the call in CMSettings.

With this removal, we can handle the logic for this key in
CMSettingsProvider.

Ticket: CYNGNOS-2480

Change-Id: I7485c0d0acf90df365e5ed5ebdb42596d148de62
Signed-off-by: default avatarRoman Birg <roman@cyngn.com>
parent 473931f3
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -1823,7 +1823,6 @@ public final class Settings {
            // At one time in System, then Global, but now back in Secure
            MOVED_TO_SECURE.add(Secure.INSTALL_NON_MARKET_APPS);

            MOVED_TO_SECURE.add(System.DEV_FORCE_SHOW_NAVBAR);
            MOVED_TO_SECURE.add(System.KEYBOARD_BRIGHTNESS);
            MOVED_TO_SECURE.add(System.BUTTON_BRIGHTNESS);
            MOVED_TO_SECURE.add(System.BUTTON_BACKLIGHT_TIMEOUT);
+4 −4
Original line number Diff line number Diff line
@@ -524,14 +524,14 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
        protected void observe() {
            super.observe();
            ContentResolver resolver = mContext.getContentResolver();
            resolver.registerContentObserver(CMSettings.Secure.getUriFor(
                    CMSettings.Secure.DEV_FORCE_SHOW_NAVBAR), false, this, UserHandle.USER_ALL);
            resolver.registerContentObserver(CMSettings.Global.getUriFor(
                    CMSettings.Global.DEV_FORCE_SHOW_NAVBAR), false, this, UserHandle.USER_ALL);
        }

        @Override
        public void update() {
            boolean visible = CMSettings.Secure.getIntForUser(mContext.getContentResolver(),
                    CMSettings.Secure.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1;
            boolean visible = CMSettings.Global.getIntForUser(mContext.getContentResolver(),
                    CMSettings.Global.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1;

            if (visible) {
                forceAddNavigationBar();
+2 −2
Original line number Diff line number Diff line
@@ -47,8 +47,8 @@ public class LockTaskNotify {
    private boolean hasNavigationBar() {
        return mContext.getResources().getBoolean(
                com.android.internal.R.bool.config_showNavigationBar)
                || CMSettings.Secure.getIntForUser(mContext.getContentResolver(),
                        CMSettings.Secure.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1;
                || CMSettings.Global.getIntForUser(mContext.getContentResolver(),
                        CMSettings.Global.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1;
    }

    public void showToast(int lockTaskModeState) {
+17 −8
Original line number Diff line number Diff line
@@ -111,6 +111,9 @@ import android.service.dreams.DreamService;
import android.service.dreams.IDreamManager;
import android.speech.RecognizerIntent;
import android.telecom.TelecomManager;

import cyanogenmod.hardware.CMHardwareManager;
import cyanogenmod.providers.CMSettings;
import android.util.DisplayMetrics;
import android.util.EventLog;
import android.util.Log;
@@ -836,6 +839,8 @@ public class PhoneWindowManager implements WindowManagerPolicy {
    boolean mWifiDisplayConnected = false;
    int mWifiDisplayCustomRotation = -1;

    private CMHardwareManager mCMHardware;

    private class PolicyHandler extends Handler {
        @Override
        public void handleMessage(Message msg) {
@@ -991,8 +996,8 @@ public class PhoneWindowManager implements WindowManagerPolicy {
            resolver.registerContentObserver(Settings.System.getUriFor(
                    Settings.System.ACCELEROMETER_ROTATION_ANGLES), false, this,
                    UserHandle.USER_ALL);
            resolver.registerContentObserver(CMSettings.Secure.getUriFor(
                    CMSettings.Secure.DEV_FORCE_SHOW_NAVBAR), false, this,
            resolver.registerContentObserver(CMSettings.Global.getUriFor(
                    CMSettings.Global.DEV_FORCE_SHOW_NAVBAR), false, this,
                    UserHandle.USER_ALL);
            resolver.registerContentObserver(CMSettings.System.getUriFor(
                    CMSettings.System.VOLBTN_MUSIC_CONTROLS), false, this,
@@ -1030,9 +1035,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
            resolver.registerContentObserver(Settings.System.getUriFor(
                    Settings.System.ACCELEROMETER_ROTATION_ANGLES), false, this,
                    UserHandle.USER_ALL);
            resolver.registerContentObserver(Settings.System.getUriFor(
                    Settings.System.DEV_FORCE_SHOW_NAVBAR), false, this,
                    UserHandle.USER_ALL);
            resolver.registerContentObserver(CMSettings.System.getUriFor(
                    CMSettings.System.NAVBAR_LEFT_IN_LANDSCAPE), false, this,
                    UserHandle.USER_ALL);
@@ -1825,7 +1827,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
            mOrientationListener.setCurrentRotation(windowManager.getRotation());
        } catch (RemoteException ex) { }
        mSettingsObserver = new SettingsObserver(mHandler);
        mSettingsObserver.observe();
        mShortcutManager = new ShortcutManager(context);
        mUiMode = context.getResources().getInteger(
                com.android.internal.R.integer.config_defaultUiModeType);
@@ -2320,10 +2321,13 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                updateWakeGestureListenerLp();
            }

            boolean devForceNavbar = CMSettings.Secure.getIntForUser(resolver,
                    CMSettings.Secure.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1;
            boolean devForceNavbar = CMSettings.Global.getIntForUser(resolver,
                    CMSettings.Global.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1;
            if (devForceNavbar != mDevForceNavbar) {
                mDevForceNavbar = devForceNavbar;
                if (mCMHardware.isSupported(CMHardwareManager.FEATURE_KEY_DISABLE)) {
                    mCMHardware.set(CMHardwareManager.FEATURE_KEY_DISABLE, mDevForceNavbar);
                }
            }

            mNavigationBarLeftInLandscape = CMSettings.System.getIntForUser(resolver,
@@ -7670,6 +7674,11 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                this::onKeyguardShowingStateChanged);
        mKeyguardDelegate.onSystemReady();

        mCMHardware = CMHardwareManager.getInstance(mContext);
        // Ensure observe happens in systemReady() since we need
        // CMHardwareService to be up and running
        mSettingsObserver.observe();

        readCameraLensCoverState();
        updateUiMode();
        boolean bindKeyguardNow;
+12 −2
Original line number Diff line number Diff line
@@ -540,6 +540,8 @@ public final class PowerManagerService extends SystemService
    private static native void nativeSetFeature(int featureId, int data);
    private static native int nativeGetFeature(int featureId);

    private boolean mForceNavbar;

    private PerformanceManagerInternal mPerf;

    private boolean mKeyboardVisible = false;
@@ -728,6 +730,9 @@ public final class PowerManagerService extends SystemService
            resolver.registerContentObserver(CMSettings.Global.getUriFor(
                    CMSettings.Global.WAKE_WHEN_PLUGGED_OR_UNPLUGGED),
                    false, mSettingsObserver, UserHandle.USER_ALL);
            resolver.registerContentObserver(CMSettings.Global.getUriFor(
                    CMSettings.Global.DEV_FORCE_SHOW_NAVBAR),
                    false, mSettingsObserver, UserHandle.USER_ALL);

            // Go.
            readConfigurationLocked();
@@ -862,7 +867,8 @@ public final class PowerManagerService extends SystemService
        mKeyboardBrightness = CMSettings.Secure.getIntForUser(resolver,
                CMSettings.Secure.KEYBOARD_BRIGHTNESS, mKeyboardBrightnessSettingDefault,
                UserHandle.USER_CURRENT);

        mForceNavbar = CMSettings.Global.getIntForUser(resolver,
                CMSettings.Global.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1;
        mDirty |= DIRTY_SETTINGS;
    }

@@ -1794,7 +1800,11 @@ public final class PowerManagerService extends SystemService
                                buttonBrightness = mButtonBrightnessOverrideFromWindowManager;
                                keyboardBrightness = mButtonBrightnessOverrideFromWindowManager;
                            } else {
                                if (!mForceNavbar) {
                                    buttonBrightness = mButtonBrightness;
                                } else {
                                    buttonBrightness = 0;
                                }
                                keyboardBrightness = mKeyboardBrightness;
                            }