diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index a6d066ba6e6..7b5ea52f035 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -564,11 +564,13 @@
+ android:value="com.android.settings.category.ia.system"/>
+
+ android:value="com.android.settings.language.LanguageAndInputSettings"/>
+ android:value="true"/>
+
+
+
+
+
+
+
+ android:exported="true"
+ android:label="@string/app_default_dashboard_title"
+ android:icon="@drawable/ic_adb">
+
+
+
+
+
+ android:value="true" />
@@ -2921,6 +2943,8 @@
+
@@ -3001,34 +3025,6 @@
android:resource="@string/support_summary"/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Display
Sound
-
-
+
+
+
+
Volumes
diff --git a/res/xml/network_and_internet.xml b/res/xml/network_and_internet.xml
index d7a6355f908..7feffcaa32c 100644
--- a/res/xml/network_and_internet.xml
+++ b/res/xml/network_and_internet.xml
@@ -23,6 +23,7 @@
android:fragment="com.android.settings.wifi.WifiSettings"
android:key="toggle_wifi"
android:title="@string/wifi_settings"
+ android:summary="@string/summary_placeholder"
android:icon="@drawable/ic_settings_wireless"
android:order="-30">
-
-
@@ -67,6 +62,7 @@
android:title="@string/vpn_settings_title"
android:icon="@drawable/ic_vpn_key"
android:order="0"
+ android:summary="@string/summary_placeholder"
settings:userRestriction="no_config_vpn"
settings:useAdminDisabledSummary="true"/>
@@ -77,6 +73,13 @@
settings:userRestriction="no_config_mobile_networks"
settings:useAdminDisabledSummary="true"/>
+
+
@@ -75,7 +75,7 @@
android:key="notification_ringtone"
android:title="@string/notification_ringtone_title"
android:dialogTitle="@string/notification_ringtone_title"
- android:summary="@string/ringtone_summary"
+ android:summary="@string/summary_placeholder"
android:ringtoneType="notification" />
@@ -83,7 +83,7 @@
android:key="alarm_ringtone"
android:title="@string/alarm_ringtone_title"
android:dialogTitle="@string/alarm_ringtone_title"
- android:summary="@string/ringtone_summary"
+ android:summary="@string/summary_placeholder"
android:persistent="false"
android:ringtoneType="alarm" />
diff --git a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
index 722f9e112c0..78d612236e9 100644
--- a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
+++ b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
@@ -28,6 +28,7 @@ import android.text.TextUtils;
import android.util.Log;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.core.instrumentation.MetricsFeatureProvider;
import com.android.settings.overlay.FeatureFactory;
@@ -124,7 +125,11 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
} else {
pref.setKey(getDashboardKeyForTile(tile));
}
- pref.setSummary(tile.summary);
+ if (tile.summary != null) {
+ pref.setSummary(tile.summary);
+ } else {
+ pref.setSummary(R.string.summary_placeholder);
+ }
if (tile.icon != null) {
pref.setIcon(tile.icon.loadDrawable(activity));
}
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java
index 4eea05e7117..28bed3e2fb6 100644
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java
@@ -28,6 +28,7 @@ import android.os.UserManager;
import android.support.v7.preference.Preference;
import com.android.internal.logging.nano.MetricsProto;
+import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
@@ -216,6 +217,32 @@ public class DashboardFeatureProviderImplTest {
assertThat(preference.getOrder()).isEqualTo(Preference.DEFAULT_ORDER);
}
+ @Test
+ public void bindPreference_noSummary_shouldSetSummaryToPlaceholder() {
+ final Preference preference = new Preference(RuntimeEnvironment.application);
+ final Tile tile = new Tile();
+ tile.intent = new Intent();
+ tile.intent.setComponent(new ComponentName("pkg", "class"));
+ mImpl.bindPreferenceToTile(mActivity, MetricsProto.MetricsEvent.VIEW_UNKNOWN,
+ preference, tile, null /*key */, Preference.DEFAULT_ORDER);
+
+ assertThat(preference.getSummary())
+ .isEqualTo(RuntimeEnvironment.application.getString(R.string.summary_placeholder));
+ }
+
+ @Test
+ public void bindPreference_hasSummary_shouldSetSummary() {
+ final Preference preference = new Preference(RuntimeEnvironment.application);
+ final Tile tile = new Tile();
+ tile.summary = "test";
+ tile.intent = new Intent();
+ tile.intent.setComponent(new ComponentName("pkg", "class"));
+ mImpl.bindPreferenceToTile(mActivity, MetricsProto.MetricsEvent.VIEW_UNKNOWN,
+ preference, tile, null /*key */, Preference.DEFAULT_ORDER);
+
+ assertThat(preference.getSummary()).isEqualTo(tile.summary);
+ }
+
@Test
public void bindPreference_withNullKeyTileKey_shouldUseTileKey() {
final Preference preference = new Preference(RuntimeEnvironment.application);