Loading packages/SystemUI/src/com/android/systemui/dagger/DependencyProvider.java +0 −8 Original line number Diff line number Diff line Loading @@ -27,7 +27,6 @@ import android.os.HandlerThread; import android.os.Looper; import android.os.Process; import android.os.ServiceManager; import android.os.UserManager; import android.util.DisplayMetrics; import android.view.IWindowManager; import android.view.LayoutInflater; Loading Loading @@ -235,13 +234,6 @@ public class DependencyProvider { return new AlwaysOnDisplayPolicy(context); } /** */ @Singleton @Provides public UserManager providesUserManager(Context context) { return context.getSystemService(UserManager.class); } /** */ @Provides public ViewMediatorCallback providesViewMediatorCallback(KeyguardViewMediator viewMediator) { Loading packages/SystemUI/src/com/android/systemui/dagger/SystemServicesModule.java +14 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.app.IActivityManager; import android.app.IWallpaperManager; import android.app.KeyguardManager; import android.app.WallpaperManager; import android.app.admin.DevicePolicyManager; import android.content.Context; import android.content.res.Resources; import android.hardware.SensorPrivacyManager; Loading @@ -31,6 +32,7 @@ import android.os.Handler; import android.os.PowerManager; import android.os.ServiceManager; import android.os.UserHandle; import android.os.UserManager; import android.service.dreams.DreamService; import android.service.dreams.IDreamManager; import android.view.IWindowManager; Loading Loading @@ -67,6 +69,12 @@ public class SystemServicesModule { return context.getSystemService(AlarmManager.class); } @Provides @Singleton static DevicePolicyManager provideDevicePolicyManager(Context context) { return context.getSystemService(DevicePolicyManager.class); } @Singleton @Provides static IActivityManager provideIActivityManager() { Loading Loading @@ -146,6 +154,12 @@ public class SystemServicesModule { return context.getSystemService(SensorPrivacyManager.class); } @Provides @Singleton static UserManager provideUserManager(Context context) { return context.getSystemService(UserManager.class); } @Provides static WallpaperManager provideWallpaperManager(Context context) { return (WallpaperManager) context.getSystemService(Context.WALLPAPER_SERVICE); Loading packages/SystemUI/src/com/android/systemui/statusbar/NotificationLockscreenUserManagerImpl.java +24 −15 Original line number Diff line number Diff line Loading @@ -32,8 +32,8 @@ import android.content.IntentFilter; import android.content.IntentSender; import android.content.pm.UserInfo; import android.database.ContentObserver; import android.os.Handler; import android.os.RemoteException; import android.os.ServiceManager; import android.os.UserHandle; import android.os.UserManager; import android.provider.Settings; Loading @@ -48,6 +48,7 @@ import com.android.keyguard.KeyguardUpdateMonitor; import com.android.systemui.Dependency; import com.android.systemui.Dumpable; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.dagger.qualifiers.MainHandler; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener; import com.android.systemui.recents.OverviewProxyService; Loading Loading @@ -76,10 +77,8 @@ public class NotificationLockscreenUserManagerImpl implements private static final String TAG = "LockscreenUserManager"; private static final boolean ENABLE_LOCK_SCREEN_ALLOW_REMOTE_INPUT = false; private final DeviceProvisionedController mDeviceProvisionedController = Dependency.get(DeviceProvisionedController.class); private final KeyguardStateController mKeyguardStateController = Dependency.get( KeyguardStateController.class); private final DeviceProvisionedController mDeviceProvisionedController; private final KeyguardStateController mKeyguardStateController; // Lazy private NotificationEntryManager mEntryManager; Loading Loading @@ -168,6 +167,7 @@ public class NotificationLockscreenUserManagerImpl implements }; protected final Context mContext; private final Handler mMainHandler; protected final SparseArray<UserInfo> mCurrentProfiles = new SparseArray<>(); protected int mCurrentUserId = 0; Loading @@ -184,24 +184,33 @@ public class NotificationLockscreenUserManagerImpl implements @Inject public NotificationLockscreenUserManagerImpl(Context context, BroadcastDispatcher broadcastDispatcher) { BroadcastDispatcher broadcastDispatcher, DevicePolicyManager devicePolicyManager, UserManager userManager, IStatusBarService iStatusBarService, KeyguardManager keyguardManager, StatusBarStateController statusBarStateController, @MainHandler Handler mainHandler, DeviceProvisionedController deviceProvisionedController, KeyguardStateController keyguardStateController) { mContext = context; mDevicePolicyManager = (DevicePolicyManager) mContext.getSystemService( Context.DEVICE_POLICY_SERVICE); mUserManager = (UserManager) mContext.getSystemService(Context.USER_SERVICE); mMainHandler = mainHandler; mDevicePolicyManager = devicePolicyManager; mUserManager = userManager; mCurrentUserId = ActivityManager.getCurrentUser(); mBarService = IStatusBarService.Stub.asInterface( ServiceManager.getService(Context.STATUS_BAR_SERVICE)); Dependency.get(StatusBarStateController.class).addCallback(this); mBarService = iStatusBarService; statusBarStateController.addCallback(this); mLockPatternUtils = new LockPatternUtils(context); mKeyguardManager = context.getSystemService(KeyguardManager.class); mKeyguardManager = keyguardManager; mBroadcastDispatcher = broadcastDispatcher; mDeviceProvisionedController = deviceProvisionedController; mKeyguardStateController = keyguardStateController; } public void setUpWithPresenter(NotificationPresenter presenter) { mPresenter = presenter; mLockscreenSettingsObserver = new ContentObserver(Dependency.get(Dependency.MAIN_HANDLER)) { mLockscreenSettingsObserver = new ContentObserver(mMainHandler) { @Override public void onChange(boolean selfChange) { // We don't know which user changed LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS or Loading @@ -215,7 +224,7 @@ public class NotificationLockscreenUserManagerImpl implements } }; mSettingsObserver = new ContentObserver(Dependency.get(Dependency.MAIN_HANDLER)) { mSettingsObserver = new ContentObserver(mMainHandler) { @Override public void onChange(boolean selfChange) { updateLockscreenNotificationSetting(); Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/NotificationLockscreenUserManagerTest.java +28 −12 Original line number Diff line number Diff line Loading @@ -31,6 +31,8 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.ActivityManager; import android.app.KeyguardManager; import android.app.admin.DevicePolicyManager; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; Loading @@ -45,12 +47,13 @@ import android.testing.TestableLooper; import androidx.test.filters.SmallTest; import com.android.internal.statusbar.IStatusBarService; import com.android.systemui.Dependency; import com.android.systemui.SysuiTestCase; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.statusbar.notification.NotificationEntryManager; import com.android.systemui.statusbar.notification.collection.NotificationEntry; import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; import com.android.systemui.statusbar.policy.DeviceProvisionedController; import com.android.systemui.statusbar.policy.KeyguardStateController; Loading @@ -66,14 +69,28 @@ import org.mockito.MockitoAnnotations; @RunWith(AndroidTestingRunner.class) @TestableLooper.RunWithLooper public class NotificationLockscreenUserManagerTest extends SysuiTestCase { @Mock private NotificationPresenter mPresenter; @Mock private UserManager mUserManager; @Mock private NotificationPresenter mPresenter; @Mock private UserManager mUserManager; // Dependency mocks: @Mock private NotificationEntryManager mEntryManager; @Mock private DeviceProvisionedController mDeviceProvisionedController; @Mock private StatusBarKeyguardViewManager mKeyguardViewManager; @Mock private BroadcastDispatcher mBroadcastDispatcher; @Mock private NotificationEntryManager mEntryManager; @Mock private DevicePolicyManager mDevicePolicyManager; @Mock private IStatusBarService mIStatusBarService; @Mock private KeyguardManager mKeyguardManager; @Mock private DeviceProvisionedController mDeviceProvisionedController; @Mock private StatusBarStateController mStatusBarStateController; @Mock private BroadcastDispatcher mBroadcastDispatcher; @Mock private KeyguardStateController mKeyguardStateController; private int mCurrentUserId; private TestNotificationLockscreenUserManager mLockscreenUserManager; Loading @@ -82,11 +99,7 @@ public class NotificationLockscreenUserManagerTest extends SysuiTestCase { public void setUp() { MockitoAnnotations.initMocks(this); mDependency.injectTestDependency(NotificationEntryManager.class, mEntryManager); mDependency.injectTestDependency(DeviceProvisionedController.class, mDeviceProvisionedController); mDependency.injectMockDependency(KeyguardStateController.class); mContext.addMockSystemService(UserManager.class, mUserManager); mCurrentUserId = ActivityManager.getCurrentUser(); when(mUserManager.getProfiles(mCurrentUserId)).thenReturn(Lists.newArrayList( Loading Loading @@ -196,7 +209,10 @@ public class NotificationLockscreenUserManagerTest extends SysuiTestCase { private class TestNotificationLockscreenUserManager extends NotificationLockscreenUserManagerImpl { public TestNotificationLockscreenUserManager(Context context) { super(context, mBroadcastDispatcher); super(context, mBroadcastDispatcher, mDevicePolicyManager, mUserManager, mIStatusBarService, NotificationLockscreenUserManagerTest.this.mKeyguardManager, mStatusBarStateController, Handler.createAsync(Looper.myLooper()), mDeviceProvisionedController, mKeyguardStateController); } public BroadcastReceiver getBaseBroadcastReceiverForTest() { Loading Loading
packages/SystemUI/src/com/android/systemui/dagger/DependencyProvider.java +0 −8 Original line number Diff line number Diff line Loading @@ -27,7 +27,6 @@ import android.os.HandlerThread; import android.os.Looper; import android.os.Process; import android.os.ServiceManager; import android.os.UserManager; import android.util.DisplayMetrics; import android.view.IWindowManager; import android.view.LayoutInflater; Loading Loading @@ -235,13 +234,6 @@ public class DependencyProvider { return new AlwaysOnDisplayPolicy(context); } /** */ @Singleton @Provides public UserManager providesUserManager(Context context) { return context.getSystemService(UserManager.class); } /** */ @Provides public ViewMediatorCallback providesViewMediatorCallback(KeyguardViewMediator viewMediator) { Loading
packages/SystemUI/src/com/android/systemui/dagger/SystemServicesModule.java +14 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.app.IActivityManager; import android.app.IWallpaperManager; import android.app.KeyguardManager; import android.app.WallpaperManager; import android.app.admin.DevicePolicyManager; import android.content.Context; import android.content.res.Resources; import android.hardware.SensorPrivacyManager; Loading @@ -31,6 +32,7 @@ import android.os.Handler; import android.os.PowerManager; import android.os.ServiceManager; import android.os.UserHandle; import android.os.UserManager; import android.service.dreams.DreamService; import android.service.dreams.IDreamManager; import android.view.IWindowManager; Loading Loading @@ -67,6 +69,12 @@ public class SystemServicesModule { return context.getSystemService(AlarmManager.class); } @Provides @Singleton static DevicePolicyManager provideDevicePolicyManager(Context context) { return context.getSystemService(DevicePolicyManager.class); } @Singleton @Provides static IActivityManager provideIActivityManager() { Loading Loading @@ -146,6 +154,12 @@ public class SystemServicesModule { return context.getSystemService(SensorPrivacyManager.class); } @Provides @Singleton static UserManager provideUserManager(Context context) { return context.getSystemService(UserManager.class); } @Provides static WallpaperManager provideWallpaperManager(Context context) { return (WallpaperManager) context.getSystemService(Context.WALLPAPER_SERVICE); Loading
packages/SystemUI/src/com/android/systemui/statusbar/NotificationLockscreenUserManagerImpl.java +24 −15 Original line number Diff line number Diff line Loading @@ -32,8 +32,8 @@ import android.content.IntentFilter; import android.content.IntentSender; import android.content.pm.UserInfo; import android.database.ContentObserver; import android.os.Handler; import android.os.RemoteException; import android.os.ServiceManager; import android.os.UserHandle; import android.os.UserManager; import android.provider.Settings; Loading @@ -48,6 +48,7 @@ import com.android.keyguard.KeyguardUpdateMonitor; import com.android.systemui.Dependency; import com.android.systemui.Dumpable; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.dagger.qualifiers.MainHandler; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener; import com.android.systemui.recents.OverviewProxyService; Loading Loading @@ -76,10 +77,8 @@ public class NotificationLockscreenUserManagerImpl implements private static final String TAG = "LockscreenUserManager"; private static final boolean ENABLE_LOCK_SCREEN_ALLOW_REMOTE_INPUT = false; private final DeviceProvisionedController mDeviceProvisionedController = Dependency.get(DeviceProvisionedController.class); private final KeyguardStateController mKeyguardStateController = Dependency.get( KeyguardStateController.class); private final DeviceProvisionedController mDeviceProvisionedController; private final KeyguardStateController mKeyguardStateController; // Lazy private NotificationEntryManager mEntryManager; Loading Loading @@ -168,6 +167,7 @@ public class NotificationLockscreenUserManagerImpl implements }; protected final Context mContext; private final Handler mMainHandler; protected final SparseArray<UserInfo> mCurrentProfiles = new SparseArray<>(); protected int mCurrentUserId = 0; Loading @@ -184,24 +184,33 @@ public class NotificationLockscreenUserManagerImpl implements @Inject public NotificationLockscreenUserManagerImpl(Context context, BroadcastDispatcher broadcastDispatcher) { BroadcastDispatcher broadcastDispatcher, DevicePolicyManager devicePolicyManager, UserManager userManager, IStatusBarService iStatusBarService, KeyguardManager keyguardManager, StatusBarStateController statusBarStateController, @MainHandler Handler mainHandler, DeviceProvisionedController deviceProvisionedController, KeyguardStateController keyguardStateController) { mContext = context; mDevicePolicyManager = (DevicePolicyManager) mContext.getSystemService( Context.DEVICE_POLICY_SERVICE); mUserManager = (UserManager) mContext.getSystemService(Context.USER_SERVICE); mMainHandler = mainHandler; mDevicePolicyManager = devicePolicyManager; mUserManager = userManager; mCurrentUserId = ActivityManager.getCurrentUser(); mBarService = IStatusBarService.Stub.asInterface( ServiceManager.getService(Context.STATUS_BAR_SERVICE)); Dependency.get(StatusBarStateController.class).addCallback(this); mBarService = iStatusBarService; statusBarStateController.addCallback(this); mLockPatternUtils = new LockPatternUtils(context); mKeyguardManager = context.getSystemService(KeyguardManager.class); mKeyguardManager = keyguardManager; mBroadcastDispatcher = broadcastDispatcher; mDeviceProvisionedController = deviceProvisionedController; mKeyguardStateController = keyguardStateController; } public void setUpWithPresenter(NotificationPresenter presenter) { mPresenter = presenter; mLockscreenSettingsObserver = new ContentObserver(Dependency.get(Dependency.MAIN_HANDLER)) { mLockscreenSettingsObserver = new ContentObserver(mMainHandler) { @Override public void onChange(boolean selfChange) { // We don't know which user changed LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS or Loading @@ -215,7 +224,7 @@ public class NotificationLockscreenUserManagerImpl implements } }; mSettingsObserver = new ContentObserver(Dependency.get(Dependency.MAIN_HANDLER)) { mSettingsObserver = new ContentObserver(mMainHandler) { @Override public void onChange(boolean selfChange) { updateLockscreenNotificationSetting(); Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/NotificationLockscreenUserManagerTest.java +28 −12 Original line number Diff line number Diff line Loading @@ -31,6 +31,8 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.ActivityManager; import android.app.KeyguardManager; import android.app.admin.DevicePolicyManager; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; Loading @@ -45,12 +47,13 @@ import android.testing.TestableLooper; import androidx.test.filters.SmallTest; import com.android.internal.statusbar.IStatusBarService; import com.android.systemui.Dependency; import com.android.systemui.SysuiTestCase; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.statusbar.notification.NotificationEntryManager; import com.android.systemui.statusbar.notification.collection.NotificationEntry; import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; import com.android.systemui.statusbar.policy.DeviceProvisionedController; import com.android.systemui.statusbar.policy.KeyguardStateController; Loading @@ -66,14 +69,28 @@ import org.mockito.MockitoAnnotations; @RunWith(AndroidTestingRunner.class) @TestableLooper.RunWithLooper public class NotificationLockscreenUserManagerTest extends SysuiTestCase { @Mock private NotificationPresenter mPresenter; @Mock private UserManager mUserManager; @Mock private NotificationPresenter mPresenter; @Mock private UserManager mUserManager; // Dependency mocks: @Mock private NotificationEntryManager mEntryManager; @Mock private DeviceProvisionedController mDeviceProvisionedController; @Mock private StatusBarKeyguardViewManager mKeyguardViewManager; @Mock private BroadcastDispatcher mBroadcastDispatcher; @Mock private NotificationEntryManager mEntryManager; @Mock private DevicePolicyManager mDevicePolicyManager; @Mock private IStatusBarService mIStatusBarService; @Mock private KeyguardManager mKeyguardManager; @Mock private DeviceProvisionedController mDeviceProvisionedController; @Mock private StatusBarStateController mStatusBarStateController; @Mock private BroadcastDispatcher mBroadcastDispatcher; @Mock private KeyguardStateController mKeyguardStateController; private int mCurrentUserId; private TestNotificationLockscreenUserManager mLockscreenUserManager; Loading @@ -82,11 +99,7 @@ public class NotificationLockscreenUserManagerTest extends SysuiTestCase { public void setUp() { MockitoAnnotations.initMocks(this); mDependency.injectTestDependency(NotificationEntryManager.class, mEntryManager); mDependency.injectTestDependency(DeviceProvisionedController.class, mDeviceProvisionedController); mDependency.injectMockDependency(KeyguardStateController.class); mContext.addMockSystemService(UserManager.class, mUserManager); mCurrentUserId = ActivityManager.getCurrentUser(); when(mUserManager.getProfiles(mCurrentUserId)).thenReturn(Lists.newArrayList( Loading Loading @@ -196,7 +209,10 @@ public class NotificationLockscreenUserManagerTest extends SysuiTestCase { private class TestNotificationLockscreenUserManager extends NotificationLockscreenUserManagerImpl { public TestNotificationLockscreenUserManager(Context context) { super(context, mBroadcastDispatcher); super(context, mBroadcastDispatcher, mDevicePolicyManager, mUserManager, mIStatusBarService, NotificationLockscreenUserManagerTest.this.mKeyguardManager, mStatusBarStateController, Handler.createAsync(Looper.myLooper()), mDeviceProvisionedController, mKeyguardStateController); } public BroadcastReceiver getBaseBroadcastReceiverForTest() { Loading