summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java25
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationModeController.java14
2 files changed, 21 insertions, 18 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java b/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java
index 78c7cd406ba1..51d259bbcd6f 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java
@@ -44,6 +44,7 @@ import android.graphics.Region;
import android.hardware.input.InputManager;
import android.os.Binder;
import android.os.Bundle;
+import android.os.Debug;
import android.os.Handler;
import android.os.IBinder;
import android.os.Looper;
@@ -450,20 +451,20 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
// Assumes device always starts with back button until launcher tells it that it does not
mBackButtonAlpha = 1.0f;
+ // Listen for nav bar mode changes
mNavBarMode = Dependency.get(NavigationModeController.class).addListener(this);
- // Listen for the package update changes.
- if (mDeviceProvisionedController.getCurrentUser() == UserHandle.USER_SYSTEM) {
- updateEnabledState();
- mDeviceProvisionedController.addCallback(mDeviceProvisionedCallback);
- IntentFilter filter = new IntentFilter(Intent.ACTION_PACKAGE_ADDED);
- filter.addDataScheme("package");
- filter.addDataSchemeSpecificPart(mRecentsComponentName.getPackageName(),
- PatternMatcher.PATTERN_LITERAL);
- filter.addAction(Intent.ACTION_PACKAGE_CHANGED);
- // TODO: Shouldn't this be per-user?
- mContext.registerReceiver(mLauncherStateChangedReceiver, filter);
- }
+ // Listen for device provisioned/user setup
+ updateEnabledState();
+ mDeviceProvisionedController.addCallback(mDeviceProvisionedCallback);
+
+ // Listen for launcher package changes
+ IntentFilter filter = new IntentFilter(Intent.ACTION_PACKAGE_ADDED);
+ filter.addDataScheme("package");
+ filter.addDataSchemeSpecificPart(mRecentsComponentName.getPackageName(),
+ PatternMatcher.PATTERN_LITERAL);
+ filter.addAction(Intent.ACTION_PACKAGE_CHANGED);
+ mContext.registerReceiver(mLauncherStateChangedReceiver, filter);
}
public void notifyBackAction(boolean completed, int downX, int downY, boolean isButton,
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 fa2263fb97ad..6e5685459d6a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationModeController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationModeController.java
@@ -63,6 +63,7 @@ public class NavigationModeController implements Dumpable {
}
private final Context mContext;
+ private Context mCurrentUserContext;
private final IOverlayManager mOverlayManager;
private final DeviceProvisionedController mDeviceProvisionedController;
private final UiOffloadThread mUiOffloadThread;
@@ -127,6 +128,7 @@ public class NavigationModeController implements Dumpable {
DeviceProvisionedController deviceProvisionedController,
UiOffloadThread uiOffloadThread) {
mContext = context;
+ mCurrentUserContext = context;
mOverlayManager = IOverlayManager.Stub.asInterface(
ServiceManager.getService(Context.OVERLAY_SERVICE));
mUiOffloadThread = uiOffloadThread;
@@ -145,13 +147,13 @@ public class NavigationModeController implements Dumpable {
}
public void updateCurrentInteractionMode(boolean notify) {
- Context context = getCurrentUserContext();
- int mode = getCurrentInteractionMode(context);
+ mCurrentUserContext = getCurrentUserContext();
+ int mode = getCurrentInteractionMode(mCurrentUserContext);
mMode = mode;
if (DEBUG) {
Log.e(TAG, "updateCurrentInteractionMode: mode=" + mMode
- + " contextUser=" + context.getUserId());
- dumpAssetPaths(context);
+ + " contextUser=" + mCurrentUserContext.getUserId());
+ dumpAssetPaths(mCurrentUserContext);
}
if (notify) {
@@ -163,7 +165,7 @@ public class NavigationModeController implements Dumpable {
public int addListener(ModeChangedListener listener) {
mListeners.add(listener);
- return getCurrentInteractionMode(mContext);
+ return getCurrentInteractionMode(mCurrentUserContext);
}
public void removeListener(ModeChangedListener listener) {
@@ -265,7 +267,7 @@ public class NavigationModeController implements Dumpable {
defaultOverlays = "failed_to_fetch";
}
pw.println(" defaultOverlays=" + defaultOverlays);
- dumpAssetPaths(getCurrentUserContext());
+ dumpAssetPaths(mCurrentUserContext);
}
private void dumpAssetPaths(Context context) {