diff options
| author | 2020-05-27 20:49:38 +0000 | |
|---|---|---|
| committer | 2020-05-27 20:49:38 +0000 | |
| commit | 5c9e323353d9f02ea9468ec23ec325c5757644e7 (patch) | |
| tree | e6ef348f01e2ca3bc6e11a6b0cf4661870cfa4bc | |
| parent | 0711557c680910d73ea2b3dc1ea72f0a749fdfc0 (diff) | |
| parent | d34b4e8d278386b85a00018c502bd21d00f8813b (diff) | |
Merge "Fix inconsistency in nav mode changes" into rvc-dev
2 files changed, 11 insertions, 31 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java index 662c744f8c95..46c873db8a08 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java @@ -93,7 +93,6 @@ public class NavigationBarInflaterView extends FrameLayout private boolean mIsVertical; private boolean mAlternativeOrder; - private boolean mUsingCustomLayout; private OverviewProxyService mOverviewProxyService; private int mNavBarMode = NAV_BAR_MODE_3BUTTON; @@ -145,7 +144,6 @@ public class NavigationBarInflaterView extends FrameLayout @Override public void onNavigationModeChanged(int mode) { mNavBarMode = mode; - onLikelyDefaultLayoutChange(); } @Override @@ -154,17 +152,7 @@ public class NavigationBarInflaterView extends FrameLayout super.onDetachedFromWindow(); } - public void setNavigationBarLayout(String layoutValue) { - if (!Objects.equals(mCurrentLayout, layoutValue)) { - mUsingCustomLayout = layoutValue != null; - clearViews(); - inflateLayout(layoutValue); - } - } - public void onLikelyDefaultLayoutChange() { - // Don't override custom layouts - if (mUsingCustomLayout) return; // Reevaluate new layout final String newValue = getDefaultLayout(); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationModeController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationModeController.java index 06b7d1a34b5a..daefef5e826d 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationModeController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationModeController.java @@ -16,19 +16,14 @@ package com.android.systemui.statusbar.phone; -import static android.content.Intent.ACTION_OVERLAY_CHANGED; import static android.view.WindowManagerPolicyConstants.NAV_BAR_MODE_GESTURAL; import static android.view.WindowManagerPolicyConstants.NAV_BAR_MODE_GESTURAL_OVERLAY; -import android.content.BroadcastReceiver; import android.content.Context; -import android.content.Intent; -import android.content.IntentFilter; import android.content.om.IOverlayManager; import android.content.om.OverlayInfo; import android.content.pm.PackageManager; import android.content.res.ApkAssets; -import android.os.PatternMatcher; import android.os.RemoteException; import android.os.ServiceManager; import android.os.UserHandle; @@ -39,6 +34,7 @@ import android.util.Log; import com.android.systemui.Dumpable; import com.android.systemui.dagger.qualifiers.UiBackground; import com.android.systemui.shared.system.ActivityManagerWrapper; +import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.statusbar.policy.DeviceProvisionedController; import java.io.FileDescriptor; @@ -69,16 +65,6 @@ public class NavigationModeController implements Dumpable { private ArrayList<ModeChangedListener> mListeners = new ArrayList<>(); - private BroadcastReceiver mReceiver = new BroadcastReceiver() { - @Override - public void onReceive(Context context, Intent intent) { - if (DEBUG) { - Log.d(TAG, "ACTION_OVERLAY_CHANGED"); - } - updateCurrentInteractionMode(true /* notify */); - } - }; - private final DeviceProvisionedController.DeviceProvisionedListener mDeviceProvisionedCallback = new DeviceProvisionedController.DeviceProvisionedListener() { @Override @@ -97,6 +83,7 @@ public class NavigationModeController implements Dumpable { @Inject public NavigationModeController(Context context, DeviceProvisionedController deviceProvisionedController, + ConfigurationController configurationController, @UiBackground Executor uiBgExecutor) { mContext = context; mCurrentUserContext = context; @@ -105,10 +92,15 @@ public class NavigationModeController implements Dumpable { mUiBgExecutor = uiBgExecutor; deviceProvisionedController.addCallback(mDeviceProvisionedCallback); - IntentFilter overlayFilter = new IntentFilter(ACTION_OVERLAY_CHANGED); - overlayFilter.addDataScheme("package"); - overlayFilter.addDataSchemeSpecificPart("android", PatternMatcher.PATTERN_LITERAL); - mContext.registerReceiverAsUser(mReceiver, UserHandle.ALL, overlayFilter, null, null); + configurationController.addCallback(new ConfigurationController.ConfigurationListener() { + @Override + public void onOverlayChanged() { + if (DEBUG) { + Log.d(TAG, "onOverlayChanged"); + } + updateCurrentInteractionMode(true /* notify */); + } + }); updateCurrentInteractionMode(false /* notify */); } |