summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/tiles/DreamTile.java10
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/qs/tiles/DreamTileTest.java22
2 files changed, 20 insertions, 12 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/DreamTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/DreamTile.java
index 3c83dec49c05..22e725b41a64 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/DreamTile.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/DreamTile.java
@@ -27,7 +27,6 @@ import android.os.Build;
import android.os.Handler;
import android.os.Looper;
import android.os.RemoteException;
-import android.os.UserManager;
import android.provider.Settings;
import android.service.dreams.IDreamManager;
import android.service.quicksettings.Tile;
@@ -52,6 +51,7 @@ import com.android.systemui.qs.QSHost;
import com.android.systemui.qs.SettingObserver;
import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tileimpl.QSTileImpl;
+import com.android.systemui.settings.UserTracker;
import com.android.systemui.util.settings.SecureSettings;
import javax.inject.Inject;
@@ -66,7 +66,7 @@ public class DreamTile extends QSTileImpl<QSTile.BooleanState> {
private final BroadcastDispatcher mBroadcastDispatcher;
private final SettingObserver mEnabledSettingObserver;
private final SettingObserver mDreamSettingObserver;
- private final UserManager mUserManager;
+ private final UserTracker mUserTracker;
private final boolean mDreamSupported;
private final boolean mDreamOnlyEnabledForSystemUser;
@@ -90,7 +90,7 @@ public class DreamTile extends QSTileImpl<QSTile.BooleanState> {
IDreamManager dreamManager,
SecureSettings secureSettings,
BroadcastDispatcher broadcastDispatcher,
- UserManager userManager,
+ UserTracker userTracker,
@Named(DreamModule.DREAM_SUPPORTED) boolean dreamSupported,
@Named(DreamModule.DREAM_ONLY_ENABLED_FOR_SYSTEM_USER)
boolean dreamOnlyEnabledForSystemUser
@@ -113,7 +113,7 @@ public class DreamTile extends QSTileImpl<QSTile.BooleanState> {
refreshState();
}
};
- mUserManager = userManager;
+ mUserTracker = userTracker;
mDreamSupported = dreamSupported;
mDreamOnlyEnabledForSystemUser = dreamOnlyEnabledForSystemUser;
}
@@ -194,7 +194,7 @@ public class DreamTile extends QSTileImpl<QSTile.BooleanState> {
// For now, restrict to debug users.
return Build.isDebuggable()
&& mDreamSupported
- && (!mDreamOnlyEnabledForSystemUser || mUserManager.isSystemUser());
+ && (!mDreamOnlyEnabledForSystemUser || mUserTracker.getUserHandle().isSystem());
}
@VisibleForTesting
diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/DreamTileTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/DreamTileTest.java
index 5b7af654bbb6..c2a41d5e41fb 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/DreamTileTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/DreamTileTest.java
@@ -20,6 +20,7 @@ import static junit.framework.TestCase.assertEquals;
import static junit.framework.TestCase.assertFalse;
import static junit.framework.TestCase.assertTrue;
+import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -27,7 +28,7 @@ import static org.mockito.Mockito.when;
import android.content.ComponentName;
import android.os.Handler;
import android.os.RemoteException;
-import android.os.UserManager;
+import android.os.UserHandle;
import android.provider.Settings;
import android.service.dreams.IDreamManager;
import android.service.quicksettings.Tile;
@@ -45,6 +46,7 @@ import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.qs.QSTileHost;
import com.android.systemui.qs.logging.QSLogger;
+import com.android.systemui.settings.UserTracker;
import com.android.systemui.util.settings.FakeSettings;
import com.android.systemui.util.settings.SecureSettings;
@@ -74,7 +76,7 @@ public class DreamTileTest extends SysuiTestCase {
@Mock
private BroadcastDispatcher mBroadcastDispatcher;
@Mock
- private UserManager mUserManager;
+ private UserTracker mUserTracker;
private TestableLooper mTestableLooper;
@@ -196,15 +198,21 @@ public class DreamTileTest extends SysuiTestCase {
DreamTile supportedTileAllUsers = constructTileForTest(true, false);
- when(mUserManager.isSystemUser()).thenReturn(true);
+ UserHandle systemUserHandle = mock(UserHandle.class);
+ when(systemUserHandle.isSystem()).thenReturn(true);
+
+ UserHandle nonSystemUserHandle = mock(UserHandle.class);
+ when(nonSystemUserHandle.isSystem()).thenReturn(false);
+
+ when(mUserTracker.getUserHandle()).thenReturn(systemUserHandle);
assertTrue(supportedTileAllUsers.isAvailable());
- when(mUserManager.isSystemUser()).thenReturn(false);
+ when(mUserTracker.getUserHandle()).thenReturn(nonSystemUserHandle);
assertTrue(supportedTileAllUsers.isAvailable());
DreamTile supportedTileOnlySystemUser = constructTileForTest(true, true);
- when(mUserManager.isSystemUser()).thenReturn(true);
+ when(mUserTracker.getUserHandle()).thenReturn(systemUserHandle);
assertTrue(supportedTileOnlySystemUser.isAvailable());
- when(mUserManager.isSystemUser()).thenReturn(false);
+ when(mUserTracker.getUserHandle()).thenReturn(nonSystemUserHandle);
assertFalse(supportedTileOnlySystemUser.isAvailable());
}
@@ -227,7 +235,7 @@ public class DreamTileTest extends SysuiTestCase {
mDreamManager,
mSecureSettings,
mBroadcastDispatcher,
- mUserManager,
+ mUserTracker,
dreamSupported, dreamOnlyEnabledForSystemUser);
}
}