Merge "[ConnectedDevicePage] Clean up flag enable_saved_devices_order_by_recency" into main
This commit is contained in:
@@ -14,10 +14,3 @@ flag {
|
|||||||
description: "Gates whether to require an auth challenge for changing USB preferences"
|
description: "Gates whether to require an auth challenge for changing USB preferences"
|
||||||
bug: "317367746"
|
bug: "317367746"
|
||||||
}
|
}
|
||||||
|
|
||||||
flag {
|
|
||||||
name: "enable_saved_devices_order_by_recency"
|
|
||||||
namespace: "pixel_cross_device_control"
|
|
||||||
description: "Order the saved bluetooth devices by most recently connected."
|
|
||||||
bug: "306160434"
|
|
||||||
}
|
|
||||||
|
@@ -37,7 +37,6 @@ import com.android.settings.bluetooth.SavedBluetoothDeviceUpdater;
|
|||||||
import com.android.settings.connecteddevice.dock.DockUpdater;
|
import com.android.settings.connecteddevice.dock.DockUpdater;
|
||||||
import com.android.settings.core.BasePreferenceController;
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.dashboard.DashboardFragment;
|
import com.android.settings.dashboard.DashboardFragment;
|
||||||
import com.android.settings.flags.Flags;
|
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||||
@@ -86,11 +85,7 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc
|
|||||||
mSavedDockUpdater = FeatureFactory.getFeatureFactory().getDockUpdaterFeatureProvider()
|
mSavedDockUpdater = FeatureFactory.getFeatureFactory().getDockUpdaterFeatureProvider()
|
||||||
.getSavedDockUpdater(context, this);
|
.getSavedDockUpdater(context, this);
|
||||||
mIntentFilter = new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED);
|
mIntentFilter = new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED);
|
||||||
if (Flags.enableSavedDevicesOrderByRecency()) {
|
mBluetoothAdapter = context.getSystemService(BluetoothManager.class).getAdapter();
|
||||||
mBluetoothAdapter = context.getSystemService(BluetoothManager.class).getAdapter();
|
|
||||||
} else {
|
|
||||||
mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -123,9 +118,7 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc
|
|||||||
mContext.registerReceiver(mReceiver, mIntentFilter,
|
mContext.registerReceiver(mReceiver, mIntentFilter,
|
||||||
Context.RECEIVER_EXPORTED_UNAUDITED);
|
Context.RECEIVER_EXPORTED_UNAUDITED);
|
||||||
mBluetoothDeviceUpdater.refreshPreference();
|
mBluetoothDeviceUpdater.refreshPreference();
|
||||||
if (Flags.enableSavedDevicesOrderByRecency()) {
|
updatePreferenceGroup();
|
||||||
updatePreferenceGroup();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -143,37 +136,17 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDeviceAdded(Preference preference) {
|
public void onDeviceAdded(Preference preference) {
|
||||||
if (Flags.enableSavedDevicesOrderByRecency()) {
|
if (preference instanceof BluetoothDevicePreference) {
|
||||||
if (preference instanceof BluetoothDevicePreference) {
|
mDevicePreferenceMap.put(
|
||||||
mDevicePreferenceMap.put(
|
((BluetoothDevicePreference) preference).getBluetoothDevice().getDevice(),
|
||||||
((BluetoothDevicePreference) preference).getBluetoothDevice().getDevice(),
|
preference);
|
||||||
preference);
|
|
||||||
} else {
|
|
||||||
mDockDevicesList.add(preference);
|
|
||||||
}
|
|
||||||
if (DEBUG) {
|
|
||||||
Log.d(TAG, "onDeviceAdded() " + preference.getTitle());
|
|
||||||
}
|
|
||||||
updatePreferenceGroup();
|
|
||||||
} else {
|
} else {
|
||||||
final List<BluetoothDevice> bluetoothDevices =
|
mDockDevicesList.add(preference);
|
||||||
mBluetoothAdapter.getMostRecentlyConnectedDevices();
|
|
||||||
final int index =
|
|
||||||
preference instanceof BluetoothDevicePreference
|
|
||||||
? bluetoothDevices.indexOf(
|
|
||||||
((BluetoothDevicePreference) preference)
|
|
||||||
.getBluetoothDevice()
|
|
||||||
.getDevice())
|
|
||||||
: DOCK_DEVICE_INDEX;
|
|
||||||
if (DEBUG) {
|
|
||||||
Log.d(TAG, "onDeviceAdded() " + preference.getTitle() + ", index of : " + index);
|
|
||||||
for (BluetoothDevice device : bluetoothDevices) {
|
|
||||||
Log.d(TAG, "onDeviceAdded() most recently device : " + device.getName());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
addPreference(index, preference);
|
|
||||||
updatePreferenceVisibility();
|
|
||||||
}
|
}
|
||||||
|
if (DEBUG) {
|
||||||
|
Log.d(TAG, "onDeviceAdded() " + preference.getTitle());
|
||||||
|
}
|
||||||
|
updatePreferenceGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addPreference(int index, Preference preference) {
|
private void addPreference(int index, Preference preference) {
|
||||||
@@ -224,28 +197,17 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDeviceRemoved(Preference preference) {
|
public void onDeviceRemoved(Preference preference) {
|
||||||
if (Flags.enableSavedDevicesOrderByRecency()) {
|
if (preference instanceof BluetoothDevicePreference) {
|
||||||
if (preference instanceof BluetoothDevicePreference) {
|
mDevicePreferenceMap.remove(
|
||||||
mDevicePreferenceMap.remove(
|
((BluetoothDevicePreference) preference).getBluetoothDevice().getDevice(),
|
||||||
((BluetoothDevicePreference) preference).getBluetoothDevice().getDevice(),
|
preference);
|
||||||
preference);
|
|
||||||
} else {
|
|
||||||
mDockDevicesList.remove(preference);
|
|
||||||
}
|
|
||||||
if (DEBUG) {
|
|
||||||
Log.d(TAG, "onDeviceRemoved() " + preference.getTitle());
|
|
||||||
}
|
|
||||||
updatePreferenceGroup();
|
|
||||||
} else {
|
} else {
|
||||||
if (preference instanceof BluetoothDevicePreference) {
|
mDockDevicesList.remove(preference);
|
||||||
mDevicesList.remove(preference);
|
|
||||||
} else {
|
|
||||||
mDockDevicesList.remove(preference);
|
|
||||||
}
|
|
||||||
|
|
||||||
addPreference();
|
|
||||||
updatePreferenceVisibility();
|
|
||||||
}
|
}
|
||||||
|
if (DEBUG) {
|
||||||
|
Log.d(TAG, "onDeviceRemoved() " + preference.getTitle());
|
||||||
|
}
|
||||||
|
updatePreferenceGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Sort the preferenceGroup by most recently used. */
|
/** Sort the preferenceGroup by most recently used. */
|
||||||
|
@@ -33,7 +33,6 @@ import com.android.settings.connecteddevice.dock.DockUpdater;
|
|||||||
import com.android.settings.core.BasePreferenceController;
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settings.dashboard.DashboardFragment;
|
import com.android.settings.dashboard.DashboardFragment;
|
||||||
import com.android.settings.flags.Flags;
|
|
||||||
import com.android.settings.overlay.DockUpdaterFeatureProvider;
|
import com.android.settings.overlay.DockUpdaterFeatureProvider;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
@@ -79,9 +78,7 @@ public class SavedDeviceGroupController extends BasePreferenceController
|
|||||||
mBluetoothDeviceUpdater.registerCallback();
|
mBluetoothDeviceUpdater.registerCallback();
|
||||||
mSavedDockUpdater.registerCallback();
|
mSavedDockUpdater.registerCallback();
|
||||||
mBluetoothDeviceUpdater.refreshPreference();
|
mBluetoothDeviceUpdater.refreshPreference();
|
||||||
if (Flags.enableSavedDevicesOrderByRecency()) {
|
updatePreferenceGroup();
|
||||||
updatePreferenceGroup();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -119,42 +116,28 @@ public class SavedDeviceGroupController extends BasePreferenceController
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDeviceAdded(Preference preference) {
|
public void onDeviceAdded(Preference preference) {
|
||||||
if (Flags.enableSavedDevicesOrderByRecency()) {
|
mPreferenceGroup.addPreference(preference);
|
||||||
mPreferenceGroup.addPreference(preference);
|
if (preference instanceof BluetoothDevicePreference) {
|
||||||
if (preference instanceof BluetoothDevicePreference) {
|
mDevicePreferenceMap.put(
|
||||||
mDevicePreferenceMap.put(
|
((BluetoothDevicePreference) preference).getBluetoothDevice().getDevice(),
|
||||||
((BluetoothDevicePreference) preference).getBluetoothDevice().getDevice(),
|
preference);
|
||||||
preference);
|
|
||||||
} else {
|
|
||||||
mDockDevicesList.add(preference);
|
|
||||||
}
|
|
||||||
updatePreferenceGroup();
|
|
||||||
} else {
|
} else {
|
||||||
if (mPreferenceGroup.getPreferenceCount() == 0) {
|
mDockDevicesList.add(preference);
|
||||||
mPreferenceGroup.setVisible(true);
|
|
||||||
}
|
|
||||||
mPreferenceGroup.addPreference(preference);
|
|
||||||
}
|
}
|
||||||
|
updatePreferenceGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDeviceRemoved(Preference preference) {
|
public void onDeviceRemoved(Preference preference) {
|
||||||
if (Flags.enableSavedDevicesOrderByRecency()) {
|
mPreferenceGroup.removePreference(preference);
|
||||||
mPreferenceGroup.removePreference(preference);
|
if (preference instanceof BluetoothDevicePreference) {
|
||||||
if (preference instanceof BluetoothDevicePreference) {
|
mDevicePreferenceMap.remove(
|
||||||
mDevicePreferenceMap.remove(
|
((BluetoothDevicePreference) preference).getBluetoothDevice().getDevice(),
|
||||||
((BluetoothDevicePreference) preference).getBluetoothDevice().getDevice(),
|
preference);
|
||||||
preference);
|
|
||||||
} else {
|
|
||||||
mDockDevicesList.remove(preference);
|
|
||||||
}
|
|
||||||
updatePreferenceGroup();
|
|
||||||
} else {
|
} else {
|
||||||
mPreferenceGroup.removePreference(preference);
|
mDockDevicesList.remove(preference);
|
||||||
if (mPreferenceGroup.getPreferenceCount() == 0) {
|
|
||||||
mPreferenceGroup.setVisible(false);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
updatePreferenceGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Sort the preferenceGroup by most recently used. */
|
/** Sort the preferenceGroup by most recently used. */
|
||||||
|
@@ -31,8 +31,6 @@ import android.bluetooth.BluetoothManager;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.platform.test.annotations.RequiresFlagsDisabled;
|
|
||||||
import android.platform.test.annotations.RequiresFlagsEnabled;
|
|
||||||
import android.platform.test.flag.junit.CheckFlagsRule;
|
import android.platform.test.flag.junit.CheckFlagsRule;
|
||||||
import android.platform.test.flag.junit.DeviceFlagsValueProvider;
|
import android.platform.test.flag.junit.DeviceFlagsValueProvider;
|
||||||
import android.util.Pair;
|
import android.util.Pair;
|
||||||
@@ -47,7 +45,6 @@ import com.android.settings.bluetooth.BluetoothDevicePreference;
|
|||||||
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
|
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
|
||||||
import com.android.settings.connecteddevice.dock.DockUpdater;
|
import com.android.settings.connecteddevice.dock.DockUpdater;
|
||||||
import com.android.settings.dashboard.DashboardFragment;
|
import com.android.settings.dashboard.DashboardFragment;
|
||||||
import com.android.settings.flags.Flags;
|
|
||||||
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
|
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
|
||||||
import com.android.settings.widget.SingleTargetGearPreference;
|
import com.android.settings.widget.SingleTargetGearPreference;
|
||||||
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
|
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
|
||||||
@@ -267,19 +264,17 @@ public class PreviouslyConnectedDevicePreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@RequiresFlagsDisabled(Flags.FLAG_ENABLE_SAVED_DEVICES_ORDER_BY_RECENCY)
|
|
||||||
public void onDeviceAdded_addPreferenceNotExistInRecentlyDevices_noCrash() {
|
public void onDeviceAdded_addPreferenceNotExistInRecentlyDevices_noCrash() {
|
||||||
final BluetoothDevicePreference preference = new BluetoothDevicePreference(
|
final BluetoothDevicePreference preference = new BluetoothDevicePreference(
|
||||||
mContext, mCachedDevice5, true, BluetoothDevicePreference.SortType.TYPE_NO_SORT);
|
mContext, mCachedDevice5, true, BluetoothDevicePreference.SortType.TYPE_NO_SORT);
|
||||||
|
|
||||||
mPreConnectedDeviceController.onDeviceAdded(preference);
|
mPreConnectedDeviceController.onDeviceAdded(preference);
|
||||||
|
|
||||||
// 1 BluetoothDevicePreference and 1 see all preference
|
// 1 see all preference
|
||||||
assertThat(mPreferenceGroup.getPreferenceCount()).isEqualTo(2);
|
assertThat(mPreferenceGroup.getPreferenceCount()).isEqualTo(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_ENABLE_SAVED_DEVICES_ORDER_BY_RECENCY)
|
|
||||||
public void onDeviceAdded_addPreferenceNotExistInRecentlyDevices_doNothing() {
|
public void onDeviceAdded_addPreferenceNotExistInRecentlyDevices_doNothing() {
|
||||||
final BluetoothDevicePreference preference = new BluetoothDevicePreference(
|
final BluetoothDevicePreference preference = new BluetoothDevicePreference(
|
||||||
mContext, mCachedDevice5, true, BluetoothDevicePreference.SortType.TYPE_NO_SORT);
|
mContext, mCachedDevice5, true, BluetoothDevicePreference.SortType.TYPE_NO_SORT);
|
||||||
@@ -325,7 +320,6 @@ public class PreviouslyConnectedDevicePreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_ENABLE_SAVED_DEVICES_ORDER_BY_RECENCY)
|
|
||||||
public void updatePreferenceGroup_bluetoothIsEnable_shouldOrderByMostRecentlyConnected() {
|
public void updatePreferenceGroup_bluetoothIsEnable_shouldOrderByMostRecentlyConnected() {
|
||||||
when(mBluetoothAdapter.isEnabled()).thenReturn(true);
|
when(mBluetoothAdapter.isEnabled()).thenReturn(true);
|
||||||
final BluetoothDevicePreference preference4 =
|
final BluetoothDevicePreference preference4 =
|
||||||
@@ -361,7 +355,6 @@ public class PreviouslyConnectedDevicePreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_ENABLE_SAVED_DEVICES_ORDER_BY_RECENCY)
|
|
||||||
public void updatePreferenceGroup_bluetoothIsDisable_shouldShowOnlySeeAllPreference() {
|
public void updatePreferenceGroup_bluetoothIsDisable_shouldShowOnlySeeAllPreference() {
|
||||||
when(mBluetoothAdapter.isEnabled()).thenReturn(false);
|
when(mBluetoothAdapter.isEnabled()).thenReturn(false);
|
||||||
final BluetoothDevicePreference preference4 =
|
final BluetoothDevicePreference preference4 =
|
||||||
|
@@ -31,7 +31,6 @@ import android.bluetooth.BluetoothManager;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.platform.test.annotations.RequiresFlagsEnabled;
|
|
||||||
import android.platform.test.flag.junit.CheckFlagsRule;
|
import android.platform.test.flag.junit.CheckFlagsRule;
|
||||||
import android.platform.test.flag.junit.DeviceFlagsValueProvider;
|
import android.platform.test.flag.junit.DeviceFlagsValueProvider;
|
||||||
import android.util.Pair;
|
import android.util.Pair;
|
||||||
@@ -45,7 +44,6 @@ import com.android.settings.bluetooth.BluetoothDevicePreference;
|
|||||||
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
|
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
|
||||||
import com.android.settings.connecteddevice.dock.DockUpdater;
|
import com.android.settings.connecteddevice.dock.DockUpdater;
|
||||||
import com.android.settings.dashboard.DashboardFragment;
|
import com.android.settings.dashboard.DashboardFragment;
|
||||||
import com.android.settings.flags.Flags;
|
|
||||||
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
|
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
|
|
||||||
@@ -177,7 +175,6 @@ public class SavedDeviceGroupControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_ENABLE_SAVED_DEVICES_ORDER_BY_RECENCY)
|
|
||||||
public void updatePreferenceGroup_bluetoothIsEnable_shouldOrderByMostRecentlyConnected() {
|
public void updatePreferenceGroup_bluetoothIsEnable_shouldOrderByMostRecentlyConnected() {
|
||||||
when(mBluetoothAdapter.isEnabled()).thenReturn(true);
|
when(mBluetoothAdapter.isEnabled()).thenReturn(true);
|
||||||
final BluetoothDevicePreference preference3 =
|
final BluetoothDevicePreference preference3 =
|
||||||
@@ -213,7 +210,6 @@ public class SavedDeviceGroupControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_ENABLE_SAVED_DEVICES_ORDER_BY_RECENCY)
|
|
||||||
public void updatePreferenceGroup_bluetoothIsDisable_shouldShowNoPreference() {
|
public void updatePreferenceGroup_bluetoothIsDisable_shouldShowNoPreference() {
|
||||||
when(mBluetoothAdapter.isEnabled()).thenReturn(false);
|
when(mBluetoothAdapter.isEnabled()).thenReturn(false);
|
||||||
final BluetoothDevicePreference preference3 =
|
final BluetoothDevicePreference preference3 =
|
||||||
|
Reference in New Issue
Block a user