From 281193e9967c291860cebaa25bed7d65694d7c0a Mon Sep 17 00:00:00 2001 From: Vinit Nayak Date: Wed, 27 May 2020 12:18:30 -0700 Subject: [PATCH] Move content resolver call to constructor and cache Changing fixed rotation enabled system setting flag should be followed by a restart of launcher for it to take effect. Bug: 149571513 Change-Id: I84fbb654c325076571a038604fa929984d22f254 --- .../android/quickstep/TouchInteractionService.java | 2 +- .../quickstep/RecentsAnimationDeviceState.java | 2 +- .../android/quickstep/util/RecentsOrientedState.java | 12 ++++++++---- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java index ef3d174ed3..4954588790 100644 --- a/quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java +++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java @@ -610,7 +610,7 @@ public class TouchInteractionService extends Service implements PluginListener setFlag(FLAG_ROTATION_WATCHER_SUPPORTED, newMode != TWO_BUTTONS); + /** TODO: Remove once R ships. This is unlikely to change across different swipe gestures. */ + private static boolean sFixedRotationEnabled; + private final Context mContext; private final ContentResolver mContentResolver; private final SharedPreferences mSharedPrefs; @@ -165,7 +168,9 @@ public final class RecentsOrientedState implements SharedPreferences.OnSharedPre if (originalSmallestWidth < 600) { mFlags |= FLAG_MULTIPLE_ORIENTATION_SUPPORTED_BY_DENSITY; } - if (isFixedRotationTransformEnabled(context)) { + sFixedRotationEnabled = Settings.Global.getInt( + context.getContentResolver(), FIXED_ROTATION_TRANSFORM_SETTING_NAME, 1) == 1; + if (sFixedRotationEnabled) { mFlags |= FLAG_MULTIPLE_ORIENTATION_SUPPORTED_BY_FLAG; } initFlags(); @@ -519,9 +524,8 @@ public final class RecentsOrientedState implements SharedPreferences.OnSharedPre * Returns true if system can keep Launcher fixed to portrait layout even if the * foreground app is rotated */ - public static boolean isFixedRotationTransformEnabled(Context context) { - return Settings.Global.getInt( - context.getContentResolver(), FIXED_ROTATION_TRANSFORM_SETTING_NAME, 1) == 1; + public static boolean isFixedRotationTransformEnabled() { + return sFixedRotationEnabled; } @NonNull