From 51bbc413d3797fbe7172d1edea8a7e20da8a4d0d Mon Sep 17 00:00:00 2001 From: Justin Weir Date: Fri, 26 Aug 2022 11:45:24 -0400 Subject: [PATCH 1/3] Replace Dependency.get with Dagger Fixes: 218350942 Test: atest SystemUITests SystemUIGoogleTests Change-Id: I2ab2444967627c4f8e8806b74066017d68d0efcd --- .../src/com/android/systemui/keyboard/KeyboardUI.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/keyboard/KeyboardUI.java b/packages/SystemUI/src/com/android/systemui/keyboard/KeyboardUI.java index 9e2b7c7486312..a3dc77993d304 100644 --- a/packages/SystemUI/src/com/android/systemui/keyboard/KeyboardUI.java +++ b/packages/SystemUI/src/com/android/systemui/keyboard/KeyboardUI.java @@ -50,7 +50,6 @@ import com.android.settingslib.bluetooth.LocalBluetoothAdapter; import com.android.settingslib.bluetooth.LocalBluetoothManager; import com.android.settingslib.bluetooth.LocalBluetoothProfileManager; import com.android.systemui.CoreStartable; -import com.android.systemui.Dependency; import com.android.systemui.R; import com.android.systemui.dagger.SysUISingleton; @@ -61,6 +60,7 @@ import java.util.List; import java.util.Set; import javax.inject.Inject; +import javax.inject.Provider; /** */ @SysUISingleton @@ -106,6 +106,8 @@ public class KeyboardUI extends CoreStartable implements InputManager.OnTabletMo protected volatile Context mContext; + private final Provider mBluetoothManagerProvider; + private boolean mEnabled; private String mKeyboardName; private CachedBluetoothDeviceManager mCachedDeviceManager; @@ -122,8 +124,9 @@ public class KeyboardUI extends CoreStartable implements InputManager.OnTabletMo private int mState; @Inject - public KeyboardUI(Context context) { + public KeyboardUI(Context context, Provider bluetoothManagerProvider) { super(context); + this.mBluetoothManagerProvider = bluetoothManagerProvider; } @Override @@ -181,7 +184,7 @@ public class KeyboardUI extends CoreStartable implements InputManager.OnTabletMo return; } - LocalBluetoothManager bluetoothManager = Dependency.get(LocalBluetoothManager.class); + LocalBluetoothManager bluetoothManager = mBluetoothManagerProvider.get(); if (bluetoothManager == null) { if (DEBUG) { Slog.e(TAG, "Failed to retrieve LocalBluetoothManager instance"); From 008fef6035f87a10471c0e83c1c1362cbd847087 Mon Sep 17 00:00:00 2001 From: Justin Weir Date: Fri, 26 Aug 2022 14:15:52 -0400 Subject: [PATCH 2/3] Replace Dependency.get with Dagger Fixes: 218352117 Test: atest SystemUITests SystemUIGoogleTests Change-Id: I009b5e2201b7da8c9354c23d9a22c5a13aea00b2 --- .../statusbar/notification/InstantAppNotifier.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/InstantAppNotifier.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/InstantAppNotifier.java index 8cb18a06057e1..59022c0ffbf22 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/InstantAppNotifier.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/InstantAppNotifier.java @@ -50,7 +50,6 @@ import android.util.Pair; import com.android.internal.messages.nano.SystemMessageProto; import com.android.internal.messages.nano.SystemMessageProto.SystemMessage; import com.android.systemui.CoreStartable; -import com.android.systemui.Dependency; import com.android.systemui.R; import com.android.systemui.dagger.SysUISingleton; import com.android.systemui.dagger.qualifiers.UiBackground; @@ -76,20 +75,22 @@ public class InstantAppNotifier extends CoreStartable private final Executor mUiBgExecutor; private final ArraySet> mCurrentNotifs = new ArraySet<>(); private final CommandQueue mCommandQueue; - private KeyguardStateController mKeyguardStateController; + private final KeyguardStateController mKeyguardStateController; @Inject - public InstantAppNotifier(Context context, CommandQueue commandQueue, - @UiBackground Executor uiBgExecutor) { + public InstantAppNotifier( + Context context, + CommandQueue commandQueue, + @UiBackground Executor uiBgExecutor, + KeyguardStateController keyguardStateController) { super(context); mCommandQueue = commandQueue; mUiBgExecutor = uiBgExecutor; + mKeyguardStateController = keyguardStateController; } @Override public void start() { - mKeyguardStateController = Dependency.get(KeyguardStateController.class); - // listen for user / profile change. try { ActivityManager.getService().registerUserSwitchObserver(mUserSwitchListener, TAG); From 13cca1ef2db51c0aacbc582994b76bc3fb66bc5a Mon Sep 17 00:00:00 2001 From: Justin Weir Date: Fri, 26 Aug 2022 16:17:32 -0400 Subject: [PATCH 3/3] Replace Dependency.get with Dagger Bug: 218354102 Test: atest SystemUITests SystemUIGoogleTests Change-Id: I0d5d51a686e726749c5f67c10fe35bc5c12dbc95 --- .../statusbar/phone/StatusBarIconController.java | 14 +++++++++----- .../phone/StatusBarIconControllerTest.java | 10 ++++++---- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconController.java index ed186ab6a10b1..8273d5737c2fd 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarIconController.java @@ -33,7 +33,6 @@ import android.widget.LinearLayout.LayoutParams; import androidx.annotation.VisibleForTesting; import com.android.internal.statusbar.StatusBarIcon; -import com.android.systemui.Dependency; import com.android.systemui.R; import com.android.systemui.dagger.SysUISingleton; import com.android.systemui.demomode.DemoModeCommandReceiver; @@ -137,11 +136,12 @@ public interface StatusBarIconController { LinearLayout linearLayout, FeatureFlags featureFlags, StatusBarPipelineFlags statusBarPipelineFlags, - Provider wifiViewModelProvider) { + Provider wifiViewModelProvider, + DarkIconDispatcher darkIconDispatcher) { super(linearLayout, featureFlags, statusBarPipelineFlags, wifiViewModelProvider); mIconHPadding = mContext.getResources().getDimensionPixelSize( R.dimen.status_bar_icon_padding); - mDarkIconDispatcher = Dependency.get(DarkIconDispatcher.class); + mDarkIconDispatcher = darkIconDispatcher; } @Override @@ -198,20 +198,24 @@ public interface StatusBarIconController { private final FeatureFlags mFeatureFlags; private final StatusBarPipelineFlags mStatusBarPipelineFlags; private final Provider mWifiViewModelProvider; + private final DarkIconDispatcher mDarkIconDispatcher; @Inject public Factory( FeatureFlags featureFlags, StatusBarPipelineFlags statusBarPipelineFlags, - Provider wifiViewModelProvider) { + Provider wifiViewModelProvider, + DarkIconDispatcher darkIconDispatcher) { mFeatureFlags = featureFlags; mStatusBarPipelineFlags = statusBarPipelineFlags; mWifiViewModelProvider = wifiViewModelProvider; + mDarkIconDispatcher = darkIconDispatcher; } public DarkIconManager create(LinearLayout group) { return new DarkIconManager( - group, mFeatureFlags, mStatusBarPipelineFlags, mWifiViewModelProvider); + group, mFeatureFlags, mStatusBarPipelineFlags, mWifiViewModelProvider, + mDarkIconDispatcher); } } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarIconControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarIconControllerTest.java index a6b7e5103c788..ca98143044c1a 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarIconControllerTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarIconControllerTest.java @@ -58,7 +58,6 @@ public class StatusBarIconControllerTest extends LeakCheckedTest { @Before public void setup() { injectLeakCheckedDependencies(ALL_SUPPORTED_CLASSES); - mDependency.injectMockDependency(DarkIconDispatcher.class); } @Test @@ -75,7 +74,8 @@ public class StatusBarIconControllerTest extends LeakCheckedTest { layout, mock(FeatureFlags.class), mock(StatusBarPipelineFlags.class), - () -> mock(WifiViewModel.class)); + () -> mock(WifiViewModel.class), + mock(DarkIconDispatcher.class)); testCallOnAdd_forManager(manager); } @@ -116,8 +116,10 @@ public class StatusBarIconControllerTest extends LeakCheckedTest { LinearLayout group, FeatureFlags featureFlags, StatusBarPipelineFlags statusBarPipelineFlags, - Provider wifiViewModelProvider) { - super(group, featureFlags, statusBarPipelineFlags, wifiViewModelProvider); + Provider wifiViewModelProvider, + DarkIconDispatcher darkIconDispatcher) { + super(group, featureFlags, statusBarPipelineFlags, wifiViewModelProvider, + darkIconDispatcher); } @Override