Merge "Inject dependencies instead of fetching them" into qt-dev

This commit is contained in:
Winson Chung
2019-06-10 17:14:39 +00:00
committed by Android (Google) Code Review
3 changed files with 22 additions and 13 deletions

View File

@@ -53,7 +53,6 @@ import android.view.MotionEvent;
import android.view.accessibility.AccessibilityManager; import android.view.accessibility.AccessibilityManager;
import com.android.internal.policy.ScreenDecorationsUtils; import com.android.internal.policy.ScreenDecorationsUtils;
import com.android.systemui.Dependency;
import com.android.systemui.Dumpable; import com.android.systemui.Dumpable;
import com.android.systemui.SysUiServiceProvider; import com.android.systemui.SysUiServiceProvider;
import com.android.systemui.recents.OverviewProxyService.OverviewProxyListener; import com.android.systemui.recents.OverviewProxyService.OverviewProxyListener;
@@ -100,6 +99,8 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
private final Context mContext; private final Context mContext;
private final Handler mHandler; private final Handler mHandler;
private final NavigationBarController mNavBarController;
private final StatusBarWindowController mStatusBarWinController;
private final Runnable mConnectionRunnable = this::internalConnectToCurrentUser; private final Runnable mConnectionRunnable = this::internalConnectToCurrentUser;
private final ComponentName mRecentsComponentName; private final ComponentName mRecentsComponentName;
private final DeviceProvisionedController mDeviceProvisionedController; private final DeviceProvisionedController mDeviceProvisionedController;
@@ -446,9 +447,13 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
= this::cleanupAfterDeath; = this::cleanupAfterDeath;
@Inject @Inject
public OverviewProxyService(Context context, DeviceProvisionedController provisionController) { public OverviewProxyService(Context context, DeviceProvisionedController provisionController,
NavigationBarController navBarController, NavigationModeController navModeController,
StatusBarWindowController statusBarWinController) {
mContext = context; mContext = context;
mHandler = new Handler(); mHandler = new Handler();
mNavBarController = navBarController;
mStatusBarWinController = statusBarWinController;
mDeviceProvisionedController = provisionController; mDeviceProvisionedController = provisionController;
mConnectionBackoffAttempts = 0; mConnectionBackoffAttempts = 0;
mRecentsComponentName = ComponentName.unflattenFromString(context.getString( mRecentsComponentName = ComponentName.unflattenFromString(context.getString(
@@ -463,7 +468,7 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
mBackButtonAlpha = 1.0f; mBackButtonAlpha = 1.0f;
// Listen for nav bar mode changes // Listen for nav bar mode changes
mNavBarMode = Dependency.get(NavigationModeController.class).addListener(this); mNavBarMode = navModeController.addListener(this);
// Listen for device provisioned/user setup // Listen for device provisioned/user setup
updateEnabledState(); updateEnabledState();
@@ -513,11 +518,10 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
} }
private void updateSystemUiStateFlags() { private void updateSystemUiStateFlags() {
final NavigationBarController navBar = Dependency.get(NavigationBarController.class); final NavigationBarFragment navBarFragment =
final NavigationBarFragment navBarFragment = navBar.getDefaultNavigationBarFragment(); mNavBarController.getDefaultNavigationBarFragment();
final NavigationBarView navBarView = navBar.getNavigationBarView(mContext.getDisplayId()); final NavigationBarView navBarView =
final StatusBarWindowController statusBarController = mNavBarController.getNavigationBarView(mContext.getDisplayId());
Dependency.get(StatusBarWindowController.class);
mSysUiStateFlags = 0; mSysUiStateFlags = 0;
if (navBarFragment != null) { if (navBarFragment != null) {
@@ -526,8 +530,8 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
if (navBarView != null) { if (navBarView != null) {
navBarView.updateSystemUiStateFlags(); navBarView.updateSystemUiStateFlags();
} }
if (statusBarController != null) { if (mStatusBarWinController != null) {
statusBarController.updateSystemUiStateFlags(); mStatusBarWinController.updateSystemUiStateFlags();
} }
notifySystemUiStateFlags(mSysUiStateFlags); notifySystemUiStateFlags(mSysUiStateFlags);
} }

View File

@@ -136,6 +136,7 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback
protected final AssistManager mAssistManager; protected final AssistManager mAssistManager;
private final MetricsLogger mMetricsLogger; private final MetricsLogger mMetricsLogger;
private final DeviceProvisionedController mDeviceProvisionedController; private final DeviceProvisionedController mDeviceProvisionedController;
private final StatusBarStateController mStatusBarStateController;
protected NavigationBarView mNavigationBarView = null; protected NavigationBarView mNavigationBarView = null;
@@ -244,9 +245,11 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback
public NavigationBarFragment(AccessibilityManagerWrapper accessibilityManagerWrapper, public NavigationBarFragment(AccessibilityManagerWrapper accessibilityManagerWrapper,
DeviceProvisionedController deviceProvisionedController, MetricsLogger metricsLogger, DeviceProvisionedController deviceProvisionedController, MetricsLogger metricsLogger,
AssistManager assistManager, OverviewProxyService overviewProxyService, AssistManager assistManager, OverviewProxyService overviewProxyService,
NavigationModeController navigationModeController) { NavigationModeController navigationModeController,
StatusBarStateController statusBarStateController) {
mAccessibilityManagerWrapper = accessibilityManagerWrapper; mAccessibilityManagerWrapper = accessibilityManagerWrapper;
mDeviceProvisionedController = deviceProvisionedController; mDeviceProvisionedController = deviceProvisionedController;
mStatusBarStateController = statusBarStateController;
mMetricsLogger = metricsLogger; mMetricsLogger = metricsLogger;
mAssistManager = assistManager; mAssistManager = assistManager;
mAssistantAvailable = mAssistManager.getAssistInfoForUser(UserHandle.USER_CURRENT) != null; mAssistantAvailable = mAssistManager.getAssistInfoForUser(UserHandle.USER_CURRENT) != null;
@@ -951,7 +954,7 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback
public void touchAutoDim() { public void touchAutoDim() {
getBarTransitions().setAutoDim(false); getBarTransitions().setAutoDim(false);
mHandler.removeCallbacks(mAutoDim); mHandler.removeCallbacks(mAutoDim);
int state = Dependency.get(StatusBarStateController.class).getState(); int state = mStatusBarStateController.getState();
if (state != StatusBarState.KEYGUARD && state != StatusBarState.SHADE_LOCKED) { if (state != StatusBarState.KEYGUARD && state != StatusBarState.SHADE_LOCKED) {
mHandler.postDelayed(mAutoDim, AUTODIM_TIMEOUT_MS); mHandler.postDelayed(mAutoDim, AUTODIM_TIMEOUT_MS);
} }

View File

@@ -56,6 +56,7 @@ import com.android.systemui.Dependency;
import com.android.systemui.SysuiBaseFragmentTest; import com.android.systemui.SysuiBaseFragmentTest;
import com.android.systemui.SysuiTestableContext; import com.android.systemui.SysuiTestableContext;
import com.android.systemui.assist.AssistManager; import com.android.systemui.assist.AssistManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.recents.OverviewProxyService;
import com.android.systemui.recents.Recents; import com.android.systemui.recents.Recents;
import com.android.systemui.stackdivider.Divider; import com.android.systemui.stackdivider.Divider;
@@ -215,7 +216,8 @@ public class NavigationBarFragmentTest extends SysuiBaseFragmentTest {
new MetricsLogger(), new MetricsLogger(),
mock(AssistManager.class), mock(AssistManager.class),
mOverviewProxyService, mOverviewProxyService,
mock(NavigationModeController.class)); mock(NavigationModeController.class),
mock(StatusBarStateController.class));
} }
private class HostCallbacksForExternalDisplay extends private class HostCallbacksForExternalDisplay extends