Inject dependencies instead of fetching them
Bug: 134712444
Test: atest SystemUITests
Test: atest NotificationStackScrollLayoutTest (wasn't actually able to
reproduce locally)
Change-Id: Ic1478a3eca164b844ba5721014e5591a6af02ffa
This commit is contained in:
@@ -53,7 +53,6 @@ import android.view.MotionEvent;
|
||||
import android.view.accessibility.AccessibilityManager;
|
||||
|
||||
import com.android.internal.policy.ScreenDecorationsUtils;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Dumpable;
|
||||
import com.android.systemui.SysUiServiceProvider;
|
||||
import com.android.systemui.recents.OverviewProxyService.OverviewProxyListener;
|
||||
@@ -100,6 +99,8 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
|
||||
|
||||
private final Context mContext;
|
||||
private final Handler mHandler;
|
||||
private final NavigationBarController mNavBarController;
|
||||
private final StatusBarWindowController mStatusBarWinController;
|
||||
private final Runnable mConnectionRunnable = this::internalConnectToCurrentUser;
|
||||
private final ComponentName mRecentsComponentName;
|
||||
private final DeviceProvisionedController mDeviceProvisionedController;
|
||||
@@ -446,9 +447,13 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
|
||||
= this::cleanupAfterDeath;
|
||||
|
||||
@Inject
|
||||
public OverviewProxyService(Context context, DeviceProvisionedController provisionController) {
|
||||
public OverviewProxyService(Context context, DeviceProvisionedController provisionController,
|
||||
NavigationBarController navBarController, NavigationModeController navModeController,
|
||||
StatusBarWindowController statusBarWinController) {
|
||||
mContext = context;
|
||||
mHandler = new Handler();
|
||||
mNavBarController = navBarController;
|
||||
mStatusBarWinController = statusBarWinController;
|
||||
mDeviceProvisionedController = provisionController;
|
||||
mConnectionBackoffAttempts = 0;
|
||||
mRecentsComponentName = ComponentName.unflattenFromString(context.getString(
|
||||
@@ -463,7 +468,7 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
|
||||
mBackButtonAlpha = 1.0f;
|
||||
|
||||
// Listen for nav bar mode changes
|
||||
mNavBarMode = Dependency.get(NavigationModeController.class).addListener(this);
|
||||
mNavBarMode = navModeController.addListener(this);
|
||||
|
||||
// Listen for device provisioned/user setup
|
||||
updateEnabledState();
|
||||
@@ -513,11 +518,10 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
|
||||
}
|
||||
|
||||
private void updateSystemUiStateFlags() {
|
||||
final NavigationBarController navBar = Dependency.get(NavigationBarController.class);
|
||||
final NavigationBarFragment navBarFragment = navBar.getDefaultNavigationBarFragment();
|
||||
final NavigationBarView navBarView = navBar.getNavigationBarView(mContext.getDisplayId());
|
||||
final StatusBarWindowController statusBarController =
|
||||
Dependency.get(StatusBarWindowController.class);
|
||||
final NavigationBarFragment navBarFragment =
|
||||
mNavBarController.getDefaultNavigationBarFragment();
|
||||
final NavigationBarView navBarView =
|
||||
mNavBarController.getNavigationBarView(mContext.getDisplayId());
|
||||
|
||||
mSysUiStateFlags = 0;
|
||||
if (navBarFragment != null) {
|
||||
@@ -526,8 +530,8 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
|
||||
if (navBarView != null) {
|
||||
navBarView.updateSystemUiStateFlags();
|
||||
}
|
||||
if (statusBarController != null) {
|
||||
statusBarController.updateSystemUiStateFlags();
|
||||
if (mStatusBarWinController != null) {
|
||||
mStatusBarWinController.updateSystemUiStateFlags();
|
||||
}
|
||||
notifySystemUiStateFlags(mSysUiStateFlags);
|
||||
}
|
||||
|
||||
@@ -136,6 +136,7 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback
|
||||
protected final AssistManager mAssistManager;
|
||||
private final MetricsLogger mMetricsLogger;
|
||||
private final DeviceProvisionedController mDeviceProvisionedController;
|
||||
private final StatusBarStateController mStatusBarStateController;
|
||||
|
||||
protected NavigationBarView mNavigationBarView = null;
|
||||
|
||||
@@ -244,9 +245,11 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback
|
||||
public NavigationBarFragment(AccessibilityManagerWrapper accessibilityManagerWrapper,
|
||||
DeviceProvisionedController deviceProvisionedController, MetricsLogger metricsLogger,
|
||||
AssistManager assistManager, OverviewProxyService overviewProxyService,
|
||||
NavigationModeController navigationModeController) {
|
||||
NavigationModeController navigationModeController,
|
||||
StatusBarStateController statusBarStateController) {
|
||||
mAccessibilityManagerWrapper = accessibilityManagerWrapper;
|
||||
mDeviceProvisionedController = deviceProvisionedController;
|
||||
mStatusBarStateController = statusBarStateController;
|
||||
mMetricsLogger = metricsLogger;
|
||||
mAssistManager = assistManager;
|
||||
mAssistantAvailable = mAssistManager.getAssistInfoForUser(UserHandle.USER_CURRENT) != null;
|
||||
@@ -951,7 +954,7 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback
|
||||
public void touchAutoDim() {
|
||||
getBarTransitions().setAutoDim(false);
|
||||
mHandler.removeCallbacks(mAutoDim);
|
||||
int state = Dependency.get(StatusBarStateController.class).getState();
|
||||
int state = mStatusBarStateController.getState();
|
||||
if (state != StatusBarState.KEYGUARD && state != StatusBarState.SHADE_LOCKED) {
|
||||
mHandler.postDelayed(mAutoDim, AUTODIM_TIMEOUT_MS);
|
||||
}
|
||||
|
||||
@@ -56,6 +56,7 @@ import com.android.systemui.Dependency;
|
||||
import com.android.systemui.SysuiBaseFragmentTest;
|
||||
import com.android.systemui.SysuiTestableContext;
|
||||
import com.android.systemui.assist.AssistManager;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.recents.OverviewProxyService;
|
||||
import com.android.systemui.recents.Recents;
|
||||
import com.android.systemui.stackdivider.Divider;
|
||||
@@ -215,7 +216,8 @@ public class NavigationBarFragmentTest extends SysuiBaseFragmentTest {
|
||||
new MetricsLogger(),
|
||||
mock(AssistManager.class),
|
||||
mOverviewProxyService,
|
||||
mock(NavigationModeController.class));
|
||||
mock(NavigationModeController.class),
|
||||
mock(StatusBarStateController.class));
|
||||
}
|
||||
|
||||
private class HostCallbacksForExternalDisplay extends
|
||||
|
||||
Reference in New Issue
Block a user