Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationShadeWindowController.java +42 −2 Original line number Diff line number Diff line Loading @@ -27,11 +27,14 @@ import android.app.IActivityManager; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.res.Resources; import android.database.ContentObserver; import android.graphics.PixelFormat; import android.os.Binder; import android.os.Handler; import android.os.RemoteException; import android.os.SystemProperties; import android.os.Trace; import android.provider.Settings; import android.util.Log; import android.view.Display; import android.view.Gravity; Loading @@ -55,6 +58,8 @@ import com.android.systemui.statusbar.policy.ConfigurationController.Configurati import com.google.android.collect.Lists; import lineageos.providers.LineageSettings; import java.io.FileDescriptor; import java.io.PrintWriter; import java.lang.ref.WeakReference; Loading @@ -81,7 +86,7 @@ public class NotificationShadeWindowController implements Callback, Dumpable, private final IActivityManager mActivityManager; private final DozeParameters mDozeParameters; private final LayoutParams mLpChanged; private final boolean mKeyguardScreenRotation; private boolean mKeyguardScreenRotation; private final long mLockScreenDisplayTimeout; private final Display.Mode mKeyguardDisplayMode; private final KeyguardViewMediator mKeyguardViewMediator; Loading Loading @@ -167,8 +172,15 @@ public class NotificationShadeWindowController implements Callback, Dumpable, private boolean shouldEnableKeyguardScreenRotation() { Resources res = mContext.getResources(); boolean enableAccelerometerRotation = Settings.System.getInt(mContext.getContentResolver(), Settings.System.ACCELEROMETER_ROTATION, 0) != 0; boolean enableLockScreenRotation = LineageSettings.System.getInt(mContext.getContentResolver(), LineageSettings.System.LOCKSCREEN_ROTATION, 0) != 0; return SystemProperties.getBoolean("lockscreen.rot_override", false) || res.getBoolean(R.bool.config_enableLockScreenRotation); || (res.getBoolean(R.bool.config_enableLockScreenRotation) && (enableLockScreenRotation && enableAccelerometerRotation)); } /** Loading Loading @@ -204,6 +216,8 @@ public class NotificationShadeWindowController implements Callback, Dumpable, mWindowManager.addView(mNotificationShadeView, mLp); mLpChanged.copyFrom(mLp); SettingsObserver observer = new SettingsObserver(new Handler()); observer.observe(mContext); onThemeChanged(); // Make the state consistent with KeyguardViewMediator#setupLocked during initialization. Loading Loading @@ -737,4 +751,30 @@ public class NotificationShadeWindowController implements Callback, Dumpable, */ void onChange(boolean forceOpen); } private class SettingsObserver extends ContentObserver { public SettingsObserver(Handler handler) { super(handler); } public void observe(Context context) { context.getContentResolver().registerContentObserver( Settings.System.getUriFor(Settings.System.ACCELEROMETER_ROTATION), false, this); context.getContentResolver().registerContentObserver( LineageSettings.System.getUriFor(LineageSettings.System.LOCKSCREEN_ROTATION), false, this); } public void unobserve(Context context) { context.getContentResolver().unregisterContentObserver(this); } @Override public void onChange(boolean selfChange) { mKeyguardScreenRotation = shouldEnableKeyguardScreenRotation(); // update the state apply(mCurrentState); } } } Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationShadeWindowController.java +42 −2 Original line number Diff line number Diff line Loading @@ -27,11 +27,14 @@ import android.app.IActivityManager; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.res.Resources; import android.database.ContentObserver; import android.graphics.PixelFormat; import android.os.Binder; import android.os.Handler; import android.os.RemoteException; import android.os.SystemProperties; import android.os.Trace; import android.provider.Settings; import android.util.Log; import android.view.Display; import android.view.Gravity; Loading @@ -55,6 +58,8 @@ import com.android.systemui.statusbar.policy.ConfigurationController.Configurati import com.google.android.collect.Lists; import lineageos.providers.LineageSettings; import java.io.FileDescriptor; import java.io.PrintWriter; import java.lang.ref.WeakReference; Loading @@ -81,7 +86,7 @@ public class NotificationShadeWindowController implements Callback, Dumpable, private final IActivityManager mActivityManager; private final DozeParameters mDozeParameters; private final LayoutParams mLpChanged; private final boolean mKeyguardScreenRotation; private boolean mKeyguardScreenRotation; private final long mLockScreenDisplayTimeout; private final Display.Mode mKeyguardDisplayMode; private final KeyguardViewMediator mKeyguardViewMediator; Loading Loading @@ -167,8 +172,15 @@ public class NotificationShadeWindowController implements Callback, Dumpable, private boolean shouldEnableKeyguardScreenRotation() { Resources res = mContext.getResources(); boolean enableAccelerometerRotation = Settings.System.getInt(mContext.getContentResolver(), Settings.System.ACCELEROMETER_ROTATION, 0) != 0; boolean enableLockScreenRotation = LineageSettings.System.getInt(mContext.getContentResolver(), LineageSettings.System.LOCKSCREEN_ROTATION, 0) != 0; return SystemProperties.getBoolean("lockscreen.rot_override", false) || res.getBoolean(R.bool.config_enableLockScreenRotation); || (res.getBoolean(R.bool.config_enableLockScreenRotation) && (enableLockScreenRotation && enableAccelerometerRotation)); } /** Loading Loading @@ -204,6 +216,8 @@ public class NotificationShadeWindowController implements Callback, Dumpable, mWindowManager.addView(mNotificationShadeView, mLp); mLpChanged.copyFrom(mLp); SettingsObserver observer = new SettingsObserver(new Handler()); observer.observe(mContext); onThemeChanged(); // Make the state consistent with KeyguardViewMediator#setupLocked during initialization. Loading Loading @@ -737,4 +751,30 @@ public class NotificationShadeWindowController implements Callback, Dumpable, */ void onChange(boolean forceOpen); } private class SettingsObserver extends ContentObserver { public SettingsObserver(Handler handler) { super(handler); } public void observe(Context context) { context.getContentResolver().registerContentObserver( Settings.System.getUriFor(Settings.System.ACCELEROMETER_ROTATION), false, this); context.getContentResolver().registerContentObserver( LineageSettings.System.getUriFor(LineageSettings.System.LOCKSCREEN_ROTATION), false, this); } public void unobserve(Context context) { context.getContentResolver().unregisterContentObserver(this); } @Override public void onChange(boolean selfChange) { mKeyguardScreenRotation = shouldEnableKeyguardScreenRotation(); // update the state apply(mCurrentState); } } }