Make sure activity for adding a supervised user is opened full screen.

Add supervised user activity only covers the right hand side of the
screen in large screen devices. This CL makes sure it is always
started from Settings with correct flags to be shown full-screen.

Bug: 214401383
Bug: 205101183
Bug: 199868785
Test: croot && make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"
Change-Id: If81e0cce91a5295eb2b93b12f68b70fd1240c953
diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java
index 255b85f..3a43f26 100644
--- a/src/com/android/settings/users/UserSettings.java
+++ b/src/com/android/settings/users/UserSettings.java
@@ -503,7 +503,8 @@
     private void onAddSupervisedUserClicked() {
         final Intent intent = new Intent()
                 .setAction(UserManager.ACTION_CREATE_SUPERVISED_USER)
-                .setPackage(mConfigSupervisedUserCreationPackage);
+                .setPackage(mConfigSupervisedUserCreationPackage)
+                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
 
         // TODO(b/209659998): [to-be-removed] fallback activity for supervised user creation.
         if (getActivity().getPackageManager().resolveActivity(intent, 0) == null) {
diff --git a/tests/robotests/src/com/android/settings/users/UserSettingsTest.java b/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
index 5c13e2f..2c694ac 100644
--- a/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
@@ -664,6 +664,7 @@
     public void onPreferenceClick_addSupervisedUserClicked_startIntentWithAction() {
         final String intentPackage = "testPackage";
         final String intentAction = UserManager.ACTION_CREATE_SUPERVISED_USER;
+        final int intentFlags = Intent.FLAG_ACTIVITY_NEW_TASK;
         final int metricsAction = SettingsEnums.ACTION_USER_SUPERVISED_ADD;
         try {
             setConfigSupervisedUserCreationPackage(intentPackage);
@@ -676,6 +677,7 @@
             verify(mFragment).startActivity(captor.capture());
             assertThat(captor.getValue().getPackage()).isEqualTo(intentPackage);
             assertThat(captor.getValue().getAction()).isEqualTo(intentAction);
+            assertThat(captor.getValue().getFlags() & intentFlags).isGreaterThan(0);
 
             verify(mMetricsFeatureProvider).action(any(), eq(metricsAction));
         } finally {