Merge "Sort imports"
diff --git a/src/com/android/settings/DateTimeSettings.java b/src/com/android/settings/DateTimeSettings.java
index bf4299b..149deb1 100644
--- a/src/com/android/settings/DateTimeSettings.java
+++ b/src/com/android/settings/DateTimeSettings.java
@@ -186,10 +186,6 @@
public List<SearchIndexableResource> getXmlResourcesToIndex(
Context context, boolean enabled) {
List<SearchIndexableResource> result = new ArrayList<>();
- // Remove data/time settings from search in demo mode
- if (UserManager.isDeviceInDemoMode(context)) {
- return result;
- }
SearchIndexableResource sir = new SearchIndexableResource(context);
sir.xmlResId = R.xml.date_time_prefs;
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index d268eb6..4ca1c2c 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -688,16 +688,6 @@
&& !Utils.isMonkeyRunning(), isAdmin)
|| somethingChanged;
- somethingChanged = setTileEnabled(changedList, new ComponentName(packageName,
- Settings.NetworkDashboardActivity.class.getName()),
- !UserManager.isDeviceInDemoMode(this), isAdmin)
- || somethingChanged;
-
- somethingChanged = setTileEnabled(changedList, new ComponentName(packageName,
- Settings.DateTimeSettingsActivity.class.getName()),
- !UserManager.isDeviceInDemoMode(this), isAdmin)
- || somethingChanged;
-
final boolean showDev = DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(this)
&& !Utils.isMonkeyRunning();
somethingChanged = setTileEnabled(changedList, new ComponentName(packageName,
diff --git a/src/com/android/settings/bluetooth/BluetoothPairingDetail.java b/src/com/android/settings/bluetooth/BluetoothPairingDetail.java
index 94b41d6..688ac00 100644
--- a/src/com/android/settings/bluetooth/BluetoothPairingDetail.java
+++ b/src/com/android/settings/bluetooth/BluetoothPairingDetail.java
@@ -152,7 +152,7 @@
addDeviceCategory(mAvailableDevicesCategory,
R.string.bluetooth_preference_found_media_devices,
- BluetoothDeviceFilter.UNBONDED_DEVICE_FILTER, mInitialScanStarted);
+ BluetoothDeviceFilter.ALL_FILTER, mInitialScanStarted);
updateFooterPreference(mFooterPreference);
mAlwaysDiscoverable.start();
enableScanning();
@@ -191,6 +191,17 @@
}
@Override
+ public void onConnectionStateChanged(CachedBluetoothDevice cachedDevice, int state) {
+ if (mSelectedDevice != null) {
+ BluetoothDevice device = cachedDevice.getDevice();
+ if (device != null && mSelectedDevice.equals(device)
+ && state == BluetoothAdapter.STATE_CONNECTED) {
+ finish();
+ }
+ }
+ }
+
+ @Override
public int getHelpResource() {
return R.string.help_url_bluetooth;
}
diff --git a/src/com/android/settings/bluetooth/DeviceListPreferenceFragment.java b/src/com/android/settings/bluetooth/DeviceListPreferenceFragment.java
index 820bf080..d434637 100644
--- a/src/com/android/settings/bluetooth/DeviceListPreferenceFragment.java
+++ b/src/com/android/settings/bluetooth/DeviceListPreferenceFragment.java
@@ -192,6 +192,8 @@
preference = new BluetoothDevicePreference(getPrefContext(), cachedDevice,
mShowDevicesWithoutNames);
preference.setKey(key);
+ //Set hideSecondTarget is true if it's bonded device.
+ preference.hideSecondTarget(true);
mDeviceListGroup.addPreference(preference);
} else {
// Tell the preference it is being re-used in case there is new info in the
diff --git a/src/com/android/settings/dashboard/DashboardAdapter.java b/src/com/android/settings/dashboard/DashboardAdapter.java
index 5e2e57d..307f6ba 100644
--- a/src/com/android/settings/dashboard/DashboardAdapter.java
+++ b/src/com/android/settings/dashboard/DashboardAdapter.java
@@ -115,8 +115,6 @@
}
mDashboardData = new DashboardData.Builder()
- .setConditions(
- conditionManager == null ? null : conditionManager.getDisplayableCards())
.setSuggestions(mSuggestionAdapter.getSuggestions())
.setCategory(category)
.setConditionExpanded(conditionExpanded)
diff --git a/src/com/android/settings/dashboard/DashboardFragment.java b/src/com/android/settings/dashboard/DashboardFragment.java
index 9f0acaa..be59ca1 100644
--- a/src/com/android/settings/dashboard/DashboardFragment.java
+++ b/src/com/android/settings/dashboard/DashboardFragment.java
@@ -27,9 +27,11 @@
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
+import androidx.preference.PreferenceGroup;
import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.PreferenceControllerListHelper;
@@ -53,7 +55,7 @@
*/
public abstract class DashboardFragment extends SettingsPreferenceFragment
implements SettingsBaseActivity.CategoryListener, Indexable,
- SummaryLoader.SummaryConsumer {
+ SummaryLoader.SummaryConsumer, PreferenceGroup.OnExpandButtonClickListener {
private static final String TAG = "DashboardFragment";
private final Map<Class, List<AbstractPreferenceController>> mPreferenceControllers =
@@ -207,6 +209,12 @@
@Override
protected abstract int getPreferenceScreenResId();
+ @Override
+ public void onExpandButtonClick() {
+ mMetricsFeatureProvider.actionWithSource(getContext(), getMetricsCategory(),
+ MetricsEvent.ACTION_SETTINGS_ADVANCED_BUTTON_EXPAND);
+ }
+
protected boolean shouldForceRoundedIcon() {
return false;
}
@@ -268,6 +276,7 @@
}
addPreferencesFromResource(resId);
final PreferenceScreen screen = getPreferenceScreen();
+ screen.setOnExpandButtonClickListener(this);
mPreferenceControllers.values().stream().flatMap(Collection::stream).forEach(
controller -> controller.displayPreference(screen));
}
diff --git a/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogController.java b/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogController.java
index 9cea62d..630e9cf 100644
--- a/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogController.java
+++ b/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogController.java
@@ -53,6 +53,7 @@
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume;
+import com.android.settingslib.Utils;
import java.util.List;
@@ -253,8 +254,8 @@
}
private void updateServiceState(ServiceState serviceState) {
- final int state = serviceState.getState();
- if (state == ServiceState.STATE_OUT_OF_SERVICE || state == ServiceState.STATE_POWER_OFF) {
+ final int state = Utils.getCombinedServiceState(serviceState);
+ if (!Utils.isInService(serviceState)) {
resetSignalStrength();
}
@@ -297,10 +298,8 @@
return;
}
- final int state = getCurrentServiceState().getState();
-
- if ((ServiceState.STATE_OUT_OF_SERVICE == state) ||
- (ServiceState.STATE_POWER_OFF == state)) {
+ ServiceState serviceState = getCurrentServiceState();
+ if (serviceState == null || !Utils.isInService(serviceState)) {
return;
}
diff --git a/src/com/android/settings/homepage/CardDatabaseHelper.java b/src/com/android/settings/homepage/CardDatabaseHelper.java
index b4dc221..382b71f 100644
--- a/src/com/android/settings/homepage/CardDatabaseHelper.java
+++ b/src/com/android/settings/homepage/CardDatabaseHelper.java
@@ -19,6 +19,7 @@
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
+import android.util.Log;
import androidx.annotation.VisibleForTesting;
@@ -26,8 +27,9 @@
* Defines the schema for the Homepage Cards database.
*/
public class CardDatabaseHelper extends SQLiteOpenHelper {
+ private static final String TAG = "CardDatabaseHelper";
private static final String DATABASE_NAME = "homepage_cards.db";
- private static final int DATABASE_VERSION = 1;
+ private static final int DATABASE_VERSION = 2;
public static final String CARD_TABLE = "cards";
@@ -58,11 +60,6 @@
String CATEGORY = "category";
/**
- * URI decides the card can be shown.
- */
- String AVAILABILITY_URI = "availability_uri";
-
- /**
* Keep the card last display's locale.
*/
String LOCALIZED_TO_LOCALE = "localized_to_locale";
@@ -108,7 +105,7 @@
String ICON_RES_ID = "icon_res_id";
/**
- * PendingIntent for for custom view card candidate. Do action when user press card.
+ * Key value mapping to Intent in Settings. Do action when user presses card.
*/
String CARD_ACTION = "card_action";
@@ -116,6 +113,11 @@
* Expire time of the card. The unit of the value is mini-second.
*/
String EXPIRE_TIME_MS = "expire_time_ms";
+
+ /**
+ * Decide the card display full-length width or half-width in screen.
+ */
+ String SUPPORT_HALF_WIDTH = "support_half_width";
}
private static final String CREATE_CARD_TABLE =
@@ -135,8 +137,6 @@
" >= 0 AND " +
CardColumns.CATEGORY +
" <= 3), " +
- CardColumns.AVAILABILITY_URI +
- " TEXT, " +
CardColumns.LOCALIZED_TO_LOCALE +
" TEXT, " +
CardColumns.PACKAGE_NAME +
@@ -156,9 +156,11 @@
CardColumns.ICON_RES_ID +
" INTEGER DEFAULT 0, " +
CardColumns.CARD_ACTION +
- " TEXT, " +
+ " INTEGER, " +
CardColumns.EXPIRE_TIME_MS +
- " INTEGER " +
+ " INTEGER, " +
+ CardColumns.SUPPORT_HALF_WIDTH +
+ " INTEGER DEFAULT 0 " +
");";
public CardDatabaseHelper(Context context) {
@@ -173,6 +175,7 @@
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
if (oldVersion < newVersion) {
+ Log.d(TAG, "Reconstructing DB from " + oldVersion + " to " + newVersion);
db.execSQL("DROP TABLE IF EXISTS " + CARD_TABLE);
onCreate(db);
}
diff --git a/src/com/android/settings/homepage/HomepageAdapter.java b/src/com/android/settings/homepage/HomepageAdapter.java
index b442883..9ff5260 100644
--- a/src/com/android/settings/homepage/HomepageAdapter.java
+++ b/src/com/android/settings/homepage/HomepageAdapter.java
@@ -56,7 +56,8 @@
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int cardType) {
- final HomepageCardRenderer renderer = mControllerRendererPool.getRenderer(mContext, cardType);
+ final HomepageCardRenderer renderer = mControllerRendererPool.getRenderer(mContext,
+ cardType);
final int viewType = renderer.getViewType();
final View view = LayoutInflater.from(parent.getContext()).inflate(viewType, parent, false);
@@ -66,7 +67,8 @@
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
final int cardType = mHomepageCards.get(position).getCardType();
- final HomepageCardRenderer renderer = mControllerRendererPool.getRenderer(mContext, cardType);
+ final HomepageCardRenderer renderer = mControllerRendererPool.getRenderer(mContext,
+ cardType);
renderer.bindView(holder, mHomepageCards.get(position));
}
diff --git a/src/com/android/settings/homepage/HomepageCard.java b/src/com/android/settings/homepage/HomepageCard.java
index 1719f57..588c758 100644
--- a/src/com/android/settings/homepage/HomepageCard.java
+++ b/src/com/android/settings/homepage/HomepageCard.java
@@ -44,7 +44,7 @@
private final String mName;
@CardType
private final int mCardType;
- private final double mScore;
+ private final double mRankingScore;
private final String mSliceUri;
private final int mCategory;
private final String mLocalizedToLocale;
@@ -56,10 +56,10 @@
private final String mSummaryText;
private final String mIconResName;
private final int mIconResId;
- private final String mCardAction;
+ private final int mCardAction;
private final long mExpireTimeMS;
- private final Drawable mDrawable;
- private final boolean mSupportHalfWidth;
+ private final Drawable mIconDrawable;
+ private final boolean mIsHalfWidth;
String getName() {
return mName;
@@ -69,8 +69,8 @@
return mCardType;
}
- double getScore() {
- return mScore;
+ double getRankingScore() {
+ return mRankingScore;
}
String getTextSliceUri() {
@@ -121,7 +121,7 @@
return mIconResId;
}
- String getCardAction() {
+ int getCardAction() {
return mCardAction;
}
@@ -129,18 +129,18 @@
return mExpireTimeMS;
}
- Drawable getDrawable() {
- return mDrawable;
+ Drawable getIconDrawable() {
+ return mIconDrawable;
}
- boolean getSupportHalfWidth() {
- return mSupportHalfWidth;
+ boolean isHalfWidth() {
+ return mIsHalfWidth;
}
HomepageCard(Builder builder) {
mName = builder.mName;
mCardType = builder.mCardType;
- mScore = builder.mScore;
+ mRankingScore = builder.mRankingScore;
mSliceUri = builder.mSliceUri;
mCategory = builder.mCategory;
mLocalizedToLocale = builder.mLocalizedToLocale;
@@ -154,8 +154,8 @@
mIconResId = builder.mIconResId;
mCardAction = builder.mCardAction;
mExpireTimeMS = builder.mExpireTimeMS;
- mDrawable = builder.mDrawable;
- mSupportHalfWidth = builder.mSupportHalfWidth;
+ mIconDrawable = builder.mIconDrawable;
+ mIsHalfWidth = builder.mIsHalfWidth;
}
@Override
@@ -182,7 +182,7 @@
static class Builder {
private String mName;
private int mCardType;
- private double mScore;
+ private double mRankingScore;
private String mSliceUri;
private int mCategory;
private String mLocalizedToLocale;
@@ -194,10 +194,10 @@
private String mSummaryText;
private String mIconResName;
private int mIconResId;
- private String mCardAction;
+ private int mCardAction;
private long mExpireTimeMS;
- private Drawable mDrawable;
- private boolean mSupportHalfWidth;
+ private Drawable mIconDrawable;
+ private boolean mIsHalfWidth;
public Builder setName(String name) {
mName = name;
@@ -209,8 +209,8 @@
return this;
}
- public Builder setScore(double score) {
- mScore = score;
+ public Builder setRankingScore(double rankingScore) {
+ mRankingScore = rankingScore;
return this;
}
@@ -269,7 +269,7 @@
return this;
}
- public Builder setCardAction(String cardAction) {
+ public Builder setCardAction(int cardAction) {
mCardAction = cardAction;
return this;
}
@@ -279,13 +279,13 @@
return this;
}
- public Builder setDrawable(Drawable drawable) {
- mDrawable = drawable;
+ public Builder setIconDrawable(Drawable iconDrawable) {
+ mIconDrawable = iconDrawable;
return this;
}
- public Builder setSupportHalfWidth(boolean supportHalfWidth) {
- mSupportHalfWidth = supportHalfWidth;
+ public Builder setIsHalfWidth(boolean isHalfWidth) {
+ mIsHalfWidth = isHalfWidth;
return this;
}
diff --git a/src/com/android/settings/homepage/HomepageCardController.java b/src/com/android/settings/homepage/HomepageCardController.java
index c35c3c8..10fc158 100644
--- a/src/com/android/settings/homepage/HomepageCardController.java
+++ b/src/com/android/settings/homepage/HomepageCardController.java
@@ -16,11 +16,10 @@
package com.android.settings.homepage;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-
import java.util.List;
//TODO(b/111821137): add test cases
+
/**
* Data controller for {@link HomepageCard}.
*/
@@ -39,7 +38,5 @@
void onActionClick(HomepageCard card);
- void setLifecycle(Lifecycle lifecycle);
-
void setHomepageCardUpdateListener(HomepageCardUpdateListener listener);
}
diff --git a/src/com/android/settings/homepage/HomepageCardLookupTable.java b/src/com/android/settings/homepage/HomepageCardLookupTable.java
index 9e941e9..ae3f08b 100644
--- a/src/com/android/settings/homepage/HomepageCardLookupTable.java
+++ b/src/com/android/settings/homepage/HomepageCardLookupTable.java
@@ -44,10 +44,8 @@
}
private static final Set<HomepageMapping> LOOKUP_TABLE = new TreeSet<HomepageMapping>() {
- {
//add(new HomepageMapping(CardType.CONDITIONAL, ConditionHomepageCardController.class,
// ConditionHomepageCardRenderer.class));
- }
};
public static Class<? extends HomepageCardController> getCardControllerClass(
diff --git a/src/com/android/settings/homepage/HomepageManager.java b/src/com/android/settings/homepage/HomepageManager.java
index cbd5841..61d7ce7 100644
--- a/src/com/android/settings/homepage/HomepageManager.java
+++ b/src/com/android/settings/homepage/HomepageManager.java
@@ -20,6 +20,7 @@
import android.widget.BaseAdapter;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
import java.util.ArrayList;
import java.util.List;
@@ -82,7 +83,11 @@
cardType);
if (controller != null) {
controller.setHomepageCardUpdateListener(this);
- controller.setLifecycle(mLifecycle);
+ if (controller instanceof LifecycleObserver) {
+ if (mLifecycle != null) {
+ mLifecycle.addObserver((LifecycleObserver) controller);
+ }
+ }
}
}
diff --git a/src/com/android/settings/search/DeviceIndexFeatureProvider.java b/src/com/android/settings/search/DeviceIndexFeatureProvider.java
index e6b3e93..a55fcff 100644
--- a/src/com/android/settings/search/DeviceIndexFeatureProvider.java
+++ b/src/com/android/settings/search/DeviceIndexFeatureProvider.java
@@ -50,7 +50,9 @@
// When the device language changes, re-index so Slices trigger in device language.
Locale LANGUAGE = Locale.getDefault();
- boolean isIndexingEnabled();
+ default boolean isIndexingEnabled() {
+ return false;
+ }
void index(Context context, CharSequence title, Uri sliceUri, Uri launchUri,
List<String> keywords);
diff --git a/src/com/android/settings/search/DeviceIndexFeatureProviderImpl.java b/src/com/android/settings/search/DeviceIndexFeatureProviderImpl.java
index 087ecf8..8fd1606 100644
--- a/src/com/android/settings/search/DeviceIndexFeatureProviderImpl.java
+++ b/src/com/android/settings/search/DeviceIndexFeatureProviderImpl.java
@@ -22,11 +22,6 @@
public class DeviceIndexFeatureProviderImpl implements DeviceIndexFeatureProvider {
@Override
- public boolean isIndexingEnabled() {
- return false;
- }
-
- @Override
public void index(Context context, CharSequence title, Uri sliceUri, Uri launchUri,
List<String> keywords) {
// Not enabled by default.
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothPairingDetailTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothPairingDetailTest.java
index 7fd82b8..a967566 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothPairingDetailTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothPairingDetailTest.java
@@ -29,6 +29,7 @@
import static org.mockito.Mockito.verify;
import android.bluetooth.BluetoothAdapter;
+import android.bluetooth.BluetoothDevice;
import android.content.Context;
import android.content.res.Resources;
@@ -38,6 +39,7 @@
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
import com.android.settingslib.bluetooth.BluetoothDeviceFilter;
+import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.widget.FooterPreference;
@@ -54,6 +56,7 @@
@RunWith(SettingsRobolectricTestRunner.class)
@Config(shadows = {ShadowBluetoothAdapter.class})
public class BluetoothPairingDetailTest {
+ private static final String TEST_DEVICE_ADDRESS = "00:A1:A1:A1:A1:A1";
@Mock
private Resources mResource;
@@ -61,12 +64,15 @@
private LocalBluetoothManager mLocalManager;
@Mock
private PreferenceGroup mPreferenceGroup;
+ @Mock
+ private CachedBluetoothDevice mCachedBluetoothDevice;
private BluetoothPairingDetail mFragment;
private Context mContext;
private BluetoothProgressCategory mAvailableDevicesCategory;
private FooterPreference mFooterPreference;
private BluetoothAdapter mBluetoothAdapter;
private ShadowBluetoothAdapter mShadowBluetoothAdapter;
+ private BluetoothDevice mBluetoothDevice;
@Before
public void setUp() {
@@ -81,6 +87,7 @@
mFooterPreference = new FooterPreference(mContext);
mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
mShadowBluetoothAdapter = Shadow.extract(BluetoothAdapter.getDefaultAdapter());
+ mBluetoothDevice = mBluetoothAdapter.getRemoteDevice(TEST_DEVICE_ADDRESS);
mFragment.mBluetoothAdapter = mBluetoothAdapter;
mFragment.mLocalManager = mLocalManager;
@@ -89,7 +96,7 @@
}
@Test
- public void testInitPreferencesFromPreferenceScreen_findPreferences() {
+ public void initPreferencesFromPreferenceScreen_findPreferences() {
doReturn(mAvailableDevicesCategory).when(mFragment)
.findPreference(BluetoothPairingDetail.KEY_AVAIL_DEVICES);
doReturn(mFooterPreference).when(mFragment)
@@ -102,7 +109,7 @@
}
@Test
- public void testStartScanning_startScanAndRemoveDevices() {
+ public void startScanning_startScanAndRemoveDevices() {
mFragment.mAvailableDevicesCategory = mAvailableDevicesCategory;
mFragment.mDeviceListGroup = mAvailableDevicesCategory;
@@ -113,7 +120,7 @@
}
@Test
- public void testUpdateContent_stateOn_addDevices() {
+ public void updateContent_stateOn_addDevices() {
mFragment.mAvailableDevicesCategory = mAvailableDevicesCategory;
mFragment.mFooterPreference = mFooterPreference;
doNothing().when(mFragment).addDeviceCategory(any(), anyInt(), any(), anyBoolean());
@@ -122,20 +129,20 @@
verify(mFragment).addDeviceCategory(mAvailableDevicesCategory,
R.string.bluetooth_preference_found_media_devices,
- BluetoothDeviceFilter.UNBONDED_DEVICE_FILTER, false);
+ BluetoothDeviceFilter.ALL_FILTER, false);
assertThat(mBluetoothAdapter.getScanMode())
.isEqualTo(BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE);
}
@Test
- public void testUpdateContent_stateOff_finish() {
+ public void updateContent_stateOff_finish() {
mFragment.updateContent(BluetoothAdapter.STATE_OFF);
verify(mFragment).finish();
}
@Test
- public void testUpdateBluetooth_bluetoothOff_turnOnBluetooth() {
+ public void updateBluetooth_bluetoothOff_turnOnBluetooth() {
mShadowBluetoothAdapter.setEnabled(false);
mFragment.updateBluetooth();
@@ -144,7 +151,7 @@
}
@Test
- public void testUpdateBluetooth_bluetoothOn_updateState() {
+ public void updateBluetooth_bluetoothOn_updateState() {
mShadowBluetoothAdapter.setEnabled(true);
doNothing().when(mFragment).updateContent(anyInt());
@@ -154,7 +161,7 @@
}
@Test
- public void testOnScanningStateChanged_restartScanAfterInitialScanning() {
+ public void onScanningStateChanged_restartScanAfterInitialScanning() {
mFragment.mAvailableDevicesCategory = mAvailableDevicesCategory;
mFragment.mFooterPreference = mFooterPreference;
mFragment.mDeviceListGroup = mAvailableDevicesCategory;
@@ -209,4 +216,15 @@
verify(mFragment).showBluetoothTurnedOnToast();
}
-}
+
+ @Test
+ public void onConnectionStateChanged_connected_finish() {
+ mFragment.mSelectedDevice = mBluetoothDevice;
+ doReturn(mBluetoothDevice).when(mCachedBluetoothDevice).getDevice();
+
+ mFragment.onConnectionStateChanged(mCachedBluetoothDevice,
+ BluetoothAdapter.STATE_CONNECTED);
+
+ verify(mFragment).finish();
+ }
+}
\ No newline at end of file
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardFragmentTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardFragmentTest.java
index 8182a1c..8e9480d 100644
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/DashboardFragmentTest.java
@@ -33,10 +33,12 @@
import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.instrumentation.VisibilityLoggerMixin;
import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.Tile;
@@ -177,6 +179,17 @@
verify(mockController2).getPreferenceKey();
}
+ @Test
+ public void onExpandButtonClick_shouldLogAdvancedButtonExpand() {
+ final MetricsFeatureProvider metricsFeatureProvider
+ = mFakeFeatureFactory.getMetricsFeatureProvider();
+ mTestFragment.onExpandButtonClick();
+
+ verify(metricsFeatureProvider).actionWithSource(
+ RuntimeEnvironment.application, MetricsEvent.DASHBOARD_CONTAINER,
+ MetricsEvent.ACTION_SETTINGS_ADVANCED_BUTTON_EXPAND);
+ }
+
public static class TestPreferenceController extends AbstractPreferenceController
implements PreferenceControllerMixin {
@@ -230,7 +243,7 @@
@Override
public int getMetricsCategory() {
- return 0;
+ return MetricsEvent.DASHBOARD_CONTAINER;
}
@Override
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogControllerTest.java
index 649b6e2..541e9d3 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogControllerTest.java
+++ b/tests/robotests/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogControllerTest.java
@@ -179,7 +179,7 @@
}
@Test
- public void initialize_updateDataStateWithPowerOff_shouldUpdateSettingAndResetSignalStrength() {
+ public void initialize_updateServiceStateWithPowerOff_shouldUpdateTextAndResetSignalStrength() {
when(mServiceState.getState()).thenReturn(ServiceState.STATE_POWER_OFF);
when(mPersistableBundle.getBoolean(
CarrierConfigManager.KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL)).thenReturn(true);
@@ -192,6 +192,33 @@
}
@Test
+ public void initialize_updateVoiceDataOutOfService_shouldUpdateSettingAndResetSignalStrength() {
+ when(mServiceState.getState()).thenReturn(ServiceState.STATE_OUT_OF_SERVICE);
+ when(mServiceState.getDataRegState()).thenReturn(ServiceState.STATE_OUT_OF_SERVICE);
+ when(mPersistableBundle.getBoolean(
+ CarrierConfigManager.KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL)).thenReturn(true);
+
+ mController.initialize();
+
+ final String offServiceText = mContext.getString(R.string.radioInfo_service_out);
+ verify(mDialog).setText(SERVICE_STATE_VALUE_ID, offServiceText);
+ verify(mDialog).setText(SIGNAL_STRENGTH_VALUE_ID, "0");
+ }
+
+ @Test
+ public void initialize_updateVoiceOutOfServiceDataInService_shouldUpdateTextToBeInService() {
+ when(mServiceState.getState()).thenReturn(ServiceState.STATE_OUT_OF_SERVICE);
+ when(mServiceState.getDataRegState()).thenReturn(ServiceState.STATE_IN_SERVICE);
+ when(mPersistableBundle.getBoolean(
+ CarrierConfigManager.KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL)).thenReturn(true);
+
+ mController.initialize();
+
+ final String inServiceText = mContext.getString(R.string.radioInfo_service_in);
+ verify(mDialog).setText(SERVICE_STATE_VALUE_ID, inServiceText);
+ }
+
+ @Test
public void initialize_updateSignalStrengthWith50_shouldUpdateSignalStrengthTo50() {
final int signalDbm = 50;
final int signalAsu = 50;
@@ -208,6 +235,27 @@
}
@Test
+ public void initialize_updateVoiceOutOfServiceDataInService_shouldUpdateSignalStrengthTo50() {
+ when(mServiceState.getState()).thenReturn(ServiceState.STATE_OUT_OF_SERVICE);
+ when(mServiceState.getDataRegState()).thenReturn(ServiceState.STATE_IN_SERVICE);
+ when(mPersistableBundle.getBoolean(
+ CarrierConfigManager.KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL)).thenReturn(true);
+
+ final int signalDbm = 50;
+ final int signalAsu = 50;
+ doReturn(signalDbm).when(mController).getDbm(mSignalStrength);
+ doReturn(signalAsu).when(mController).getAsuLevel(mSignalStrength);
+ when(mPersistableBundle.getBoolean(
+ CarrierConfigManager.KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL)).thenReturn(true);
+
+ mController.initialize();
+
+ final String signalStrengthString =
+ mContext.getString(R.string.sim_signal_strength, signalDbm, signalAsu);
+ verify(mDialog).setText(SIGNAL_STRENGTH_VALUE_ID, signalStrengthString);
+ }
+
+ @Test
public void initialize_updateVoiceNetworkTypeWithEdge_shouldUpdateSettingToEdge() {
when(mTelephonyManager.getVoiceNetworkType(anyInt())).thenReturn(
TelephonyManager.NETWORK_TYPE_EDGE);
diff --git a/tests/robotests/src/com/android/settings/homepage/CardDatabaseHelperTest.java b/tests/robotests/src/com/android/settings/homepage/CardDatabaseHelperTest.java
index b6ed358..6a17a25 100644
--- a/tests/robotests/src/com/android/settings/homepage/CardDatabaseHelperTest.java
+++ b/tests/robotests/src/com/android/settings/homepage/CardDatabaseHelperTest.java
@@ -63,7 +63,6 @@
CardDatabaseHelper.CardColumns.SCORE,
CardDatabaseHelper.CardColumns.SLICE_URI,
CardDatabaseHelper.CardColumns.CATEGORY,
- CardDatabaseHelper.CardColumns.AVAILABILITY_URI,
CardDatabaseHelper.CardColumns.LOCALIZED_TO_LOCALE,
CardDatabaseHelper.CardColumns.PACKAGE_NAME,
CardDatabaseHelper.CardColumns.APP_VERSION,
@@ -75,6 +74,7 @@
CardDatabaseHelper.CardColumns.ICON_RES_ID,
CardDatabaseHelper.CardColumns.CARD_ACTION,
CardDatabaseHelper.CardColumns.EXPIRE_TIME_MS,
+ CardDatabaseHelper.CardColumns.SUPPORT_HALF_WIDTH,
};
assertThat(columnNames).isEqualTo(expectedNames);