diff --git a/res/values/strings.xml b/res/values/strings.xml
index d799055cbea..25f5a131aa9 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -6475,6 +6475,8 @@
Apps and data from this guest session will be
deleted now, and all future guest activity will be deleted each time you exit guest mode
+
+ delete, guest, activity, remove, data, visitor, erase
Allow guest to use phone
@@ -11456,8 +11458,12 @@
Use developer options
Use print service
+
Allow multiple users
+
+ allow, multiple, user, permit, many
+
Use wireless debugging
diff --git a/res/xml/user_settings.xml b/res/xml/user_settings.xml
index 8a5a4ef0552..151eab8a43f 100644
--- a/res/xml/user_settings.xml
+++ b/res/xml/user_settings.xml
@@ -73,10 +73,11 @@
android:order="55"/>
+ android:key="remove_guest_on_exit"
+ android:title="@string/remove_guest_on_exit"
+ android:summary="@string/remove_guest_on_exit_summary"
+ android:order="60"
+ settings:keywords="@string/remove_guest_on_exit_keywords"/>
getRawDataToIndex(Context context,
+ boolean enabled) {
+ final List rawData = new ArrayList<>();
+
+ SearchIndexableRaw allowMultipleUsersResult = new SearchIndexableRaw(context);
+
+ allowMultipleUsersResult.key = KEY_ALLOW_MULTIPLE_USERS;
+ allowMultipleUsersResult.title =
+ context.getString(R.string.multiple_users_main_switch_title);
+ allowMultipleUsersResult.keywords =
+ context.getString(R.string.multiple_users_main_switch_keywords);
+ allowMultipleUsersResult.screenTitle =
+ context.getString(R.string.user_settings_title);
+ allowMultipleUsersResult.className =
+ MultiUserSwitchBarController.class.getName();
+
+ rawData.add(allowMultipleUsersResult);
+ return rawData;
+ }
+
@Override
public List getNonIndexableKeysFromXml(Context context, int xmlResId,
boolean suppressAllPage) {
diff --git a/tests/robotests/src/com/android/settings/users/UserSettingsTest.java b/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
index 62a8a75a621..ddbcea1a741 100644
--- a/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
@@ -69,6 +69,7 @@ import com.android.settings.testutils.shadow.ShadowUserManager;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedPreference;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
+import com.android.settingslib.search.SearchIndexableRaw;
import org.junit.After;
import org.junit.Before;
@@ -85,6 +86,7 @@ import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowIntent;
import org.robolectric.util.ReflectionHelpers;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@@ -98,6 +100,7 @@ import java.util.List;
public class UserSettingsTest {
private static final String KEY_USER_GUEST = "user_guest";
+ private static final String KEY_ALLOW_MULTIPLE_USERS = "allow_multiple_users";
private static final int ACTIVE_USER_ID = 0;
private static final int INACTIVE_ADMIN_USER_ID = 1;
private static final int INACTIVE_SECONDARY_USER_ID = 14;
@@ -203,6 +206,21 @@ public class UserSettingsTest {
assertThat(UserSettings.assignDefaultPhoto(null, ACTIVE_USER_ID)).isFalse();
}
+ @Test
+ public void testGetRawDataToIndex_returnAllIndexablePreferences() {
+ String[] expectedKeys = {KEY_ALLOW_MULTIPLE_USERS};
+ List keysResultList = new ArrayList<>();
+
+ List rawData =
+ UserSettings.SEARCH_INDEX_DATA_PROVIDER.getRawDataToIndex(mContext, true);
+
+ for (SearchIndexableRaw rawDataItem : rawData) {
+ keysResultList.add(rawDataItem.key);
+ }
+
+ assertThat(keysResultList).containsExactly(expectedKeys);
+ }
+
@Test
public void testAssignDefaultPhoto_hasDefaultUserIconSize() {
doReturn(mUserManager).when(mContext).getSystemService(Context.USER_SERVICE);