diff options
| author | Jorim Jaggi <jjaggi@google.com> | 2015-09-10 20:12:19 -0700 |
|---|---|---|
| committer | Jorim Jaggi <jjaggi@google.com> | 2015-09-10 20:14:06 -0700 |
| commit | 74a2283d2425107f7b39a29d8db7947d8c6f8c7c (patch) | |
| tree | ab3bbe7cbb491aa685f21d82cb63f7eb630195f7 /src/com/android/settings/ChooseLockSettingsHelper.java | |
| parent | 69671dafc8b950c71f2ed303a145feb6f4d4fba8 (diff) | |
| download | packages_apps_Settings-74a2283d2425107f7b39a29d8db7947d8c6f8c7c.tar.gz packages_apps_Settings-74a2283d2425107f7b39a29d8db7947d8c6f8c7c.tar.bz2 packages_apps_Settings-74a2283d2425107f7b39a29d8db7947d8c6f8c7c.zip | |
Finish trampoline activity for ConfirmDeviceCredential immediately
Make sure to finish ConfirmDeviceCredentialActivity directly, and use
Intent.FLAG_ACTIVITY_FORWARD_RESULT, so we can't even end up in a
state where we have the trampoline activity but not the real activity.
Bug: 23849216
Change-Id: I7a5be5af74ca85c11df1f61a69c3fd5cf558e1fb
Diffstat (limited to 'src/com/android/settings/ChooseLockSettingsHelper.java')
| -rw-r--r-- | src/com/android/settings/ChooseLockSettingsHelper.java | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/com/android/settings/ChooseLockSettingsHelper.java b/src/com/android/settings/ChooseLockSettingsHelper.java index 327e622df..665bffe6f 100644 --- a/src/com/android/settings/ChooseLockSettingsHelper.java +++ b/src/com/android/settings/ChooseLockSettingsHelper.java @@ -158,10 +158,19 @@ public final class ChooseLockSettingsHelper { intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_HAS_CHALLENGE, hasChallenge); intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE, challenge); intent.setClassName(ConfirmDeviceCredentialBaseFragment.PACKAGE, activityClass.getName()); - if (mFragment != null) { - mFragment.startActivityForResult(intent, request); + if (external) { + intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT); + if (mFragment != null) { + mFragment.startActivity(intent); + } else { + mActivity.startActivity(intent); + } } else { - mActivity.startActivityForResult(intent, request); + if (mFragment != null) { + mFragment.startActivityForResult(intent, request); + } else { + mActivity.startActivityForResult(intent, request); + } } return true; } |
