Profile select only shows with multiple profiles present.

Bug: 133328247
Change-Id: Id5d03a1aa74f1789c41af37562848603a90db84f
Test: manual verification
This commit is contained in:
Adam He
2019-05-29 14:21:33 -07:00
parent e4ede480d7
commit 83f0d24f67

View File

@@ -96,18 +96,23 @@ public final class EnableContentCaptureWithServiceSettingsPreferenceController
for (UserInfo info: userInfos) { for (UserInfo info: userInfos) {
userHandles.add(info.getUserHandle()); userHandles.add(info.getUserHandle());
} }
if (userHandles.size() == 1) {
AlertDialog.Builder builder = new AlertDialog.Builder(context); final Intent intent = pref.getIntent().addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
UserAdapter adapter = UserAdapter.createUserAdapter(userManager, context, userHandles); context.startActivityAsUser(intent, userHandles.get(0));
builder.setTitle(com.android.settingslib.R.string.choose_profile) } else {
.setAdapter(adapter, (DialogInterface dialog, int which) -> { AlertDialog.Builder builder = new AlertDialog.Builder(context);
final UserHandle user = userHandles.get(which); UserAdapter adapter = UserAdapter.createUserAdapter(userManager, context,
// Show menu on top level items. userHandles);
final Intent intent = pref.getIntent(); builder.setTitle(com.android.settingslib.R.string.choose_profile)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); .setAdapter(adapter, (DialogInterface dialog, int which) -> {
context.startActivityAsUser(intent, user); final UserHandle user = userHandles.get(which);
}) // Show menu on top level items.
.show(); final Intent intent = pref.getIntent()
.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
context.startActivityAsUser(intent, user);
})
.show();
}
} }
} }