Show docks on previously connected devices page
Implement previously connected Dock Devices part into SavedDeviceGroupController. Bug: 78095209 Test: m -j SettingsRoboTests RunSettingsRoboTests Change-Id: I3dd318556167c98bc90c0c1c7281804177b9ff74
This commit is contained in:
@@ -24,9 +24,12 @@ import android.support.v7.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
|
||||
import com.android.settings.bluetooth.SavedBluetoothDeviceUpdater;
|
||||
import com.android.settings.connecteddevice.dock.DockUpdater;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settings.dashboard.DashboardFragment;
|
||||
import com.android.settings.overlay.DockUpdaterFeatureProvider;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||
@@ -45,19 +48,27 @@ public class SavedDeviceGroupController extends BasePreferenceController
|
||||
@VisibleForTesting
|
||||
PreferenceGroup mPreferenceGroup;
|
||||
private BluetoothDeviceUpdater mBluetoothDeviceUpdater;
|
||||
private DockUpdater mSavedDockUpdater;
|
||||
|
||||
public SavedDeviceGroupController(Context context) {
|
||||
super(context, KEY);
|
||||
|
||||
DockUpdaterFeatureProvider dockUpdaterFeatureProvider =
|
||||
FeatureFactory.getFactory(context).getDockUpdaterFeatureProvider();
|
||||
mSavedDockUpdater =
|
||||
dockUpdaterFeatureProvider.getSavedDockUpdater(context, this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStart() {
|
||||
mBluetoothDeviceUpdater.registerCallback();
|
||||
mSavedDockUpdater.registerCallback();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStop() {
|
||||
mBluetoothDeviceUpdater.unregisterCallback();
|
||||
mSavedDockUpdater.unregisterCallback();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -67,6 +78,7 @@ public class SavedDeviceGroupController extends BasePreferenceController
|
||||
mPreferenceGroup.setVisible(false);
|
||||
mBluetoothDeviceUpdater.setPrefContext(screen.getContext());
|
||||
mBluetoothDeviceUpdater.forceUpdate();
|
||||
mSavedDockUpdater.forceUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -105,6 +117,11 @@ public class SavedDeviceGroupController extends BasePreferenceController
|
||||
|
||||
@VisibleForTesting
|
||||
public void setBluetoothDeviceUpdater(BluetoothDeviceUpdater bluetoothDeviceUpdater) {
|
||||
mBluetoothDeviceUpdater = bluetoothDeviceUpdater;
|
||||
mBluetoothDeviceUpdater = bluetoothDeviceUpdater;
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
public void setSavedDockUpdater(DockUpdater savedDockUpdater) {
|
||||
mSavedDockUpdater = savedDockUpdater;
|
||||
}
|
||||
}
|
||||
|
@@ -27,6 +27,7 @@ import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.support.v7.preference.PreferenceManager;
|
||||
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
|
||||
import com.android.settings.connecteddevice.dock.DockUpdater;
|
||||
import com.android.settings.dashboard.DashboardFragment;
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
@@ -47,6 +48,8 @@ public class SavedDeviceGroupControllerTest {
|
||||
private DashboardFragment mDashboardFragment;
|
||||
@Mock
|
||||
private BluetoothDeviceUpdater mBluetoothDeviceUpdater;
|
||||
@Mock
|
||||
private DockUpdater mSavedDockUpdater;
|
||||
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
|
||||
private PreferenceManager mPreferenceManager;
|
||||
@Mock
|
||||
@@ -67,6 +70,7 @@ public class SavedDeviceGroupControllerTest {
|
||||
doReturn(mPackageManager).when(mContext).getPackageManager();
|
||||
mSavedDeviceGroupController = new SavedDeviceGroupController(mContext);
|
||||
mSavedDeviceGroupController.setBluetoothDeviceUpdater(mBluetoothDeviceUpdater);
|
||||
mSavedDeviceGroupController.setSavedDockUpdater(mSavedDockUpdater);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -74,12 +78,14 @@ public class SavedDeviceGroupControllerTest {
|
||||
// register the callback in onStart()
|
||||
mSavedDeviceGroupController.onStart();
|
||||
verify(mBluetoothDeviceUpdater).registerCallback();
|
||||
verify(mSavedDockUpdater).registerCallback();
|
||||
}
|
||||
@Test
|
||||
public void testUnregister() {
|
||||
// unregister the callback in onStop()
|
||||
mSavedDeviceGroupController.onStop();
|
||||
verify(mBluetoothDeviceUpdater).unregisterCallback();
|
||||
verify(mSavedDockUpdater).unregisterCallback();
|
||||
}
|
||||
@Test
|
||||
public void testGetAvailabilityStatus_noBluetoothFeature_returnUnSupported() {
|
||||
@@ -93,4 +99,4 @@ public class SavedDeviceGroupControllerTest {
|
||||
assertThat(mSavedDeviceGroupController.getAvailabilityStatus()).isEqualTo(
|
||||
AVAILABLE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user