diff --git a/res/values/strings.xml b/res/values/strings.xml index b63f8065b4a..35c175997c0 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -1285,6 +1285,8 @@ Private Space successfully deleted Private Space could not be deleted + + Private space unlocked Set a screen lock diff --git a/src/com/android/settings/privatespace/PrivateSpaceAuthenticationActivity.java b/src/com/android/settings/privatespace/PrivateSpaceAuthenticationActivity.java index 69c4d9d3ac8..e9cce121312 100644 --- a/src/com/android/settings/privatespace/PrivateSpaceAuthenticationActivity.java +++ b/src/com/android/settings/privatespace/PrivateSpaceAuthenticationActivity.java @@ -18,6 +18,7 @@ package com.android.settings.privatespace; import static android.app.admin.DevicePolicyManager.ACTION_SET_NEW_PASSWORD; +import android.app.ActivityOptions; import android.app.AlertDialog; import android.app.KeyguardManager; import android.app.PendingIntent; @@ -50,6 +51,8 @@ import com.google.android.setupdesign.util.ThemeHelper; */ public class PrivateSpaceAuthenticationActivity extends FragmentActivity { private static final String TAG = "PrivateSpaceAuthCheck"; + public static final String EXTRA_SHOW_PRIVATE_SPACE_UNLOCKED = + "extra_show_private_space_unlocked"; private PrivateSpaceMaintainer mPrivateSpaceMaintainer; private KeyguardManager mKeyguardManager; @@ -158,12 +161,19 @@ public class PrivateSpaceAuthenticationActivity extends FragmentActivity { .setTransitionType(SettingsTransitionHelper.TransitionType.TRANSITION_SLIDE) .setSourceMetricsCategory(SettingsEnums.PRIVATE_SPACE_SETTINGS); if (mPrivateSpaceMaintainer.isPrivateSpaceLocked()) { + ActivityOptions options = + ActivityOptions.makeBasic() + .setPendingIntentCreatorBackgroundActivityStartMode( + ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED); mPrivateSpaceMaintainer.unlockPrivateSpace( PendingIntent.getActivity( context, /* requestCode */ 0, - privateSpaceSettings.toIntent(), - PendingIntent.FLAG_IMMUTABLE) + privateSpaceSettings + .toIntent() + .putExtra(EXTRA_SHOW_PRIVATE_SPACE_UNLOCKED, true), + PendingIntent.FLAG_IMMUTABLE, + options.toBundle()) .getIntentSender()); } else { privateSpaceSettings.launch(); diff --git a/src/com/android/settings/privatespace/PrivateSpaceDashboardFragment.java b/src/com/android/settings/privatespace/PrivateSpaceDashboardFragment.java index ed4df971cc6..e4264778dcc 100644 --- a/src/com/android/settings/privatespace/PrivateSpaceDashboardFragment.java +++ b/src/com/android/settings/privatespace/PrivateSpaceDashboardFragment.java @@ -16,20 +16,29 @@ package com.android.settings.privatespace; +import static com.android.settings.privatespace.PrivateSpaceAuthenticationActivity.EXTRA_SHOW_PRIVATE_SPACE_UNLOCKED; + import android.app.settings.SettingsEnums; import android.os.Bundle; +import android.util.Log; +import android.widget.Toast; import com.android.settings.R; import com.android.settings.dashboard.DashboardFragment; /** Fragment representing the Private Space dashboard in Settings. */ public class PrivateSpaceDashboardFragment extends DashboardFragment { - private static final String TAG = "PrivateSpaceDashboardFragment"; + private static final String TAG = "PSDashboardFragment"; @Override public void onCreate(Bundle icicle) { if (android.os.Flags.allowPrivateProfile()) { super.onCreate(icicle); + if (getIntent().getBooleanExtra(EXTRA_SHOW_PRIVATE_SPACE_UNLOCKED, false)) { + Log.i(TAG, "Private space unlocked showing toast"); + Toast.makeText(getContext(), R.string.private_space_unlocked, Toast.LENGTH_SHORT) + .show(); + } } }