Remove Dependency.get usages from QS tiles

Test: existing tests
Change-Id: I687412fcef888b516983132efd1ee007c40f7c2f
This commit is contained in:
Jason Monk
2018-12-26 16:47:41 -05:00
parent 5d57720036
commit c0e0e2b8a9
17 changed files with 70 additions and 64 deletions

View File

@@ -32,7 +32,6 @@ import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.telephony.TelephonyIntents;
import com.android.internal.telephony.TelephonyProperties;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.qs.QSTile.BooleanState;
@@ -47,12 +46,14 @@ public class AirplaneModeTile extends QSTileImpl<BooleanState> {
private final Icon mIcon =
ResourceIcon.get(R.drawable.ic_signal_airplane);
private final GlobalSetting mSetting;
private final ActivityStarter mActivityStarter;
private boolean mListening;
@Inject
public AirplaneModeTile(QSHost host) {
public AirplaneModeTile(QSHost host, ActivityStarter activityStarter) {
super(host);
mActivityStarter = activityStarter;
mSetting = new GlobalSetting(mContext, mHandler, Global.AIRPLANE_MODE_ON) {
@Override
@@ -73,7 +74,7 @@ public class AirplaneModeTile extends QSTileImpl<BooleanState> {
MetricsLogger.action(mContext, getMetricsCategory(), !airplaneModeEnabled);
if (!airplaneModeEnabled && Boolean.parseBoolean(
SystemProperties.get(TelephonyProperties.PROPERTY_INECM_MODE))) {
Dependency.get(ActivityStarter.class).postStartActivityDismissingKeyguard(
mActivityStarter.postStartActivityDismissingKeyguard(
new Intent(TelephonyIntents.ACTION_SHOW_NOTICE_ECM_BLOCK_OTHERS), 0);
return;
}

View File

@@ -23,7 +23,6 @@ import android.widget.Switch;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settingslib.graph.BatteryMeterDrawableBase;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.qs.QSTile.BooleanState;
import com.android.systemui.qs.QSHost;
@@ -43,9 +42,9 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements
private boolean mPluggedIn;
@Inject
public BatterySaverTile(QSHost host) {
public BatterySaverTile(QSHost host, BatteryController batteryController) {
super(host);
mBatteryController = Dependency.get(BatteryController.class);
mBatteryController = batteryController;
}
@Override

View File

@@ -36,7 +36,6 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settingslib.Utils;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.graph.BluetoothDeviceLayerDrawable;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.qs.DetailAdapter;
@@ -62,10 +61,12 @@ public class BluetoothTile extends QSTileImpl<BooleanState> {
private final ActivityStarter mActivityStarter;
@Inject
public BluetoothTile(QSHost host) {
public BluetoothTile(QSHost host,
BluetoothController bluetoothController,
ActivityStarter activityStarter) {
super(host);
mController = Dependency.get(BluetoothController.class);
mActivityStarter = Dependency.get(ActivityStarter.class);
mController = bluetoothController;
mActivityStarter = activityStarter;
mDetailAdapter = (BluetoothDetailAdapter) createDetailAdapter();
}

View File

@@ -33,7 +33,6 @@ import android.widget.Button;
import com.android.internal.app.MediaRouteDialogPresenter;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.qs.DetailAdapter;
@@ -68,13 +67,14 @@ public class CastTile extends QSTileImpl<BooleanState> {
private boolean mWifiConnected;
@Inject
public CastTile(QSHost host) {
public CastTile(QSHost host, CastController castController, KeyguardMonitor keyguardMonitor,
NetworkController networkController, ActivityStarter activityStarter) {
super(host);
mController = Dependency.get(CastController.class);
mController = castController;
mDetailAdapter = new CastDetailAdapter();
mKeyguard = Dependency.get(KeyguardMonitor.class);
mNetworkController = Dependency.get(NetworkController.class);
mActivityStarter = Dependency.get(ActivityStarter.class);
mKeyguard = keyguardMonitor;
mNetworkController = networkController;
mActivityStarter = activityStarter;
}
@Override
@@ -138,7 +138,7 @@ public class CastTile extends QSTileImpl<BooleanState> {
mDialog = MediaRouteDialogPresenter.createDialog(mContext, ROUTE_TYPE_REMOTE_DISPLAY,
v -> {
mDialog.dismiss();
Dependency.get(ActivityStarter.class)
mActivityStarter
.postStartActivityDismissingKeyguard(getLongClickIntent(), 0);
});
mDialog.getWindow().setType(LayoutParams.TYPE_KEYGUARD_DIALOG);

View File

@@ -35,7 +35,6 @@ import android.widget.Switch;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settingslib.net.DataUsageController;
import com.android.systemui.Dependency;
import com.android.systemui.Prefs;
import com.android.systemui.R;
import com.android.systemui.plugins.ActivityStarter;
@@ -66,11 +65,12 @@ public class CellularTile extends QSTileImpl<SignalState> {
private final KeyguardMonitor mKeyguardMonitor;
@Inject
public CellularTile(QSHost host) {
public CellularTile(QSHost host, NetworkController networkController,
ActivityStarter activityStarter, KeyguardMonitor keyguardMonitor) {
super(host);
mController = Dependency.get(NetworkController.class);
mActivityStarter = Dependency.get(ActivityStarter.class);
mKeyguardMonitor = Dependency.get(KeyguardMonitor.class);
mController = networkController;
mActivityStarter = activityStarter;
mKeyguardMonitor = keyguardMonitor;
mDataController = mController.getMobileDataController();
mDetailAdapter = new CellularDetailAdapter();
}

View File

@@ -20,7 +20,6 @@ import android.service.quicksettings.Tile;
import android.widget.Switch;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.Prefs;
import com.android.systemui.R;
import com.android.systemui.plugins.qs.QSTile.BooleanState;
@@ -38,9 +37,9 @@ public class DataSaverTile extends QSTileImpl<BooleanState> implements
private final DataSaverController mDataSaverController;
@Inject
public DataSaverTile(QSHost host) {
public DataSaverTile(QSHost host, NetworkController networkController) {
super(host);
mDataSaverController = Dependency.get(NetworkController.class).getDataSaverController();
mDataSaverController = networkController.getDataSaverController();
}
@Override

View File

@@ -49,7 +49,6 @@ import android.widget.Toast;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settingslib.notification.EnableZenModeDialog;
import com.android.systemui.Dependency;
import com.android.systemui.Prefs;
import com.android.systemui.R;
import com.android.systemui.SysUIToast;
@@ -78,15 +77,18 @@ public class DndTile extends QSTileImpl<BooleanState> {
private final ZenModeController mController;
private final DndDetailAdapter mDetailAdapter;
private final ActivityStarter mActivityStarter;
private boolean mListening;
private boolean mShowingDetail;
private boolean mReceiverRegistered;
@Inject
public DndTile(QSHost host) {
public DndTile(QSHost host, ZenModeController zenModeController,
ActivityStarter activityStarter) {
super(host);
mController = Dependency.get(ZenModeController.class);
mController = zenModeController;
mActivityStarter = activityStarter;
mDetailAdapter = new DndDetailAdapter();
mContext.registerReceiver(mReceiver, new IntentFilter(ACTION_SET_VISIBLE));
mReceiverRegistered = true;
@@ -160,7 +162,7 @@ public class DndTile extends QSTileImpl<BooleanState> {
// show on-boarding screen
Intent intent = new Intent(Settings.ZEN_MODE_ONBOARDING);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
Dependency.get(ActivityStarter.class).postStartActivityDismissingKeyguard(intent, 0);
mActivityStarter.postStartActivityDismissingKeyguard(intent, 0);
} else {
switch (zenDuration) {
case Settings.Secure.ZEN_DURATION_PROMPT:
@@ -448,7 +450,7 @@ public class DndTile extends QSTileImpl<BooleanState> {
private final ZenModePanel.Callback mZenModePanelCallback = new ZenModePanel.Callback() {
@Override
public void onPrioritySettings() {
Dependency.get(ActivityStarter.class).postStartActivityDismissingKeyguard(
mActivityStarter.postStartActivityDismissingKeyguard(
ZEN_PRIORITY_SETTINGS, 0);
}

View File

@@ -23,7 +23,6 @@ import android.service.quicksettings.Tile;
import android.widget.Switch;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.qs.QSTile.BooleanState;
import com.android.systemui.qs.QSHost;
@@ -40,9 +39,9 @@ public class FlashlightTile extends QSTileImpl<BooleanState> implements
private final FlashlightController mFlashlightController;
@Inject
public FlashlightTile(QSHost host) {
public FlashlightTile(QSHost host, FlashlightController flashlightController) {
super(host);
mFlashlightController = Dependency.get(FlashlightController.class);
mFlashlightController = flashlightController;
}
@Override

View File

@@ -25,7 +25,6 @@ import android.service.quicksettings.Tile;
import android.widget.Switch;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.qs.QSTile.AirplaneBooleanState;
import com.android.systemui.qs.GlobalSetting;
@@ -51,10 +50,11 @@ public class HotspotTile extends QSTileImpl<AirplaneBooleanState> {
private boolean mListening;
@Inject
public HotspotTile(QSHost host) {
public HotspotTile(QSHost host, HotspotController hotspotController,
DataSaverController dataSaverController) {
super(host);
mHotspotController = Dependency.get(HotspotController.class);
mDataSaverController = Dependency.get(DataSaverController.class);
mHotspotController = hotspotController;
mDataSaverController = dataSaverController;
mAirplaneMode = new GlobalSetting(mContext, mHandler, Global.AIRPLANE_MODE_ON) {
@Override
protected void handleValueChanged(int value) {

View File

@@ -23,7 +23,6 @@ import android.service.quicksettings.Tile;
import android.widget.Switch;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.R.drawable;
import com.android.systemui.plugins.ActivityStarter;
@@ -43,13 +42,16 @@ public class LocationTile extends QSTileImpl<BooleanState> {
private final LocationController mController;
private final KeyguardMonitor mKeyguard;
private final ActivityStarter mActivityStarter;
private final Callback mCallback = new Callback();
@Inject
public LocationTile(QSHost host) {
public LocationTile(QSHost host, LocationController locationController,
KeyguardMonitor keyguardMonitor, ActivityStarter activityStarter) {
super(host);
mController = Dependency.get(LocationController.class);
mKeyguard = Dependency.get(KeyguardMonitor.class);
mController = locationController;
mKeyguard = keyguardMonitor;
mActivityStarter = activityStarter;
}
@Override
@@ -76,7 +78,7 @@ public class LocationTile extends QSTileImpl<BooleanState> {
@Override
protected void handleClick() {
if (mKeyguard.isSecure() && mKeyguard.isShowing()) {
Dependency.get(ActivityStarter.class).postQSRunnableDismissingKeyguard(() -> {
mActivityStarter.postQSRunnableDismissingKeyguard(() -> {
final boolean wasEnabled = mState.value;
mHost.openPanels();
mController.setLocationEnabled(!wasEnabled);

View File

@@ -24,7 +24,6 @@ import android.service.quicksettings.Tile;
import android.widget.Switch;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.qs.QSTile.BooleanState;
import com.android.systemui.qs.QSHost;
@@ -41,9 +40,9 @@ public class RotationLockTile extends QSTileImpl<BooleanState> {
private final RotationLockController mController;
@Inject
public RotationLockTile(QSHost host) {
public RotationLockTile(QSHost host, RotationLockController rotationLockController) {
super(host);
mController = Dependency.get(RotationLockController.class);
mController = rotationLockController;
}
@Override

View File

@@ -23,7 +23,6 @@ import android.widget.Switch;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.qs.QSTile.BooleanState;
@@ -41,13 +40,16 @@ public class SensorPrivacyTile extends QSTileImpl<BooleanState> implements
ResourceIcon.get(R.drawable.ic_signal_sensors);
private final KeyguardMonitor mKeyguard;
private final SensorPrivacyManager mSensorPrivacyManager;
private final ActivityStarter mActivityStarter;
@Inject
public SensorPrivacyTile(QSHost host) {
public SensorPrivacyTile(QSHost host, SensorPrivacyManager sensorPrivacyManager,
KeyguardMonitor keyguardMonitor, ActivityStarter activityStarter) {
super(host);
mSensorPrivacyManager = Dependency.get(SensorPrivacyManager.class);
mKeyguard = Dependency.get(KeyguardMonitor.class);
mSensorPrivacyManager = sensorPrivacyManager;
mKeyguard = keyguardMonitor;
mActivityStarter = activityStarter;
}
@Override
@@ -60,7 +62,7 @@ public class SensorPrivacyTile extends QSTileImpl<BooleanState> implements
final boolean wasEnabled = mState.value;
// Don't allow disabling from the lockscreen.
if (wasEnabled && mKeyguard.isSecure() && mKeyguard.isShowing()) {
Dependency.get(ActivityStarter.class).postQSRunnableDismissingKeyguard(() -> {
mActivityStarter.postQSRunnableDismissingKeyguard(() -> {
MetricsLogger.action(mContext, getMetricsCategory(), !wasEnabled);
setEnabled(!wasEnabled);
});

View File

@@ -22,7 +22,6 @@ import android.provider.Settings;
import android.util.Pair;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.plugins.qs.DetailAdapter;
import com.android.systemui.plugins.qs.QSTile;
import com.android.systemui.plugins.qs.QSTile.State;
@@ -40,10 +39,11 @@ public class UserTile extends QSTileImpl<State> implements UserInfoController.On
private Pair<String, Drawable> mLastUpdate;
@Inject
public UserTile(QSHost host) {
public UserTile(QSHost host, UserSwitcherController userSwitcherController,
UserInfoController userInfoController) {
super(host);
mUserSwitcherController = Dependency.get(UserSwitcherController.class);
mUserInfoController = Dependency.get(UserInfoController.class);
mUserSwitcherController = userSwitcherController;
mUserInfoController = userInfoController;
}
@Override

View File

@@ -30,7 +30,6 @@ import android.widget.Switch;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settingslib.wifi.AccessPoint;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.qs.DetailAdapter;
@@ -67,12 +66,13 @@ public class WifiTile extends QSTileImpl<SignalState> {
private boolean mExpectDisabled;
@Inject
public WifiTile(QSHost host) {
public WifiTile(QSHost host, NetworkController networkController,
ActivityStarter activityStarter) {
super(host);
mController = Dependency.get(NetworkController.class);
mController = networkController;
mWifiController = mController.getAccessPointController();
mDetailAdapter = (WifiDetailAdapter) createDetailAdapter();
mActivityStarter = Dependency.get(ActivityStarter.class);
mActivityStarter = activityStarter;
}
@Override

View File

@@ -22,7 +22,6 @@ import android.service.quicksettings.Tile;
import android.widget.Switch;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.plugins.qs.QSTile.BooleanState;
import com.android.systemui.qs.QSHost;
@@ -39,9 +38,9 @@ public class WorkModeTile extends QSTileImpl<BooleanState> implements
private final ManagedProfileController mProfileController;
@Inject
public WorkModeTile(QSHost host) {
public WorkModeTile(QSHost host, ManagedProfileController managedProfileController) {
super(host);
mProfileController = Dependency.get(ManagedProfileController.class);
mProfileController = managedProfileController;
}
@Override

View File

@@ -15,7 +15,6 @@
package com.android.systemui.qs.tiles;
import static junit.framework.TestCase.assertEquals;
import static junit.framework.TestCase.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -79,7 +78,8 @@ public class CastTileTest extends SysuiTestCase {
when(mHost.getContext()).thenReturn(mContext);
mCastTile = new CastTile(mHost);
mCastTile = new CastTile(mHost, mController, mKeyguard, mNetworkController,
mActivityStarter);
// We are not setting the mocks to listening, so we trigger a first refresh state to
// set the initial state

View File

@@ -16,6 +16,7 @@
package com.android.systemui.qs.tiles;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -27,6 +28,7 @@ import android.testing.TestableLooper;
import com.android.systemui.Dependency;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.qs.QSTileHost;
import com.android.systemui.statusbar.policy.KeyguardMonitor;
@@ -64,7 +66,8 @@ public class SensorPrivacyTileTest extends SysuiTestCase {
when(mHost.getContext()).thenReturn(mContext);
mSensorPrivacyTile = new SensorPrivacyTile(mHost);
mSensorPrivacyTile = new SensorPrivacyTile(mHost, mSensorPrivacyManager, mKeyguard,
mock(ActivityStarter.class));
}
@Test