Index: chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java |
index e013c6026e7de35072ca4882a34a8d530667d7c8..936f214fbeda0747a38b80a85d7a46d64fea31eb 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java |
@@ -348,6 +348,13 @@ public class ChromeLauncherActivity extends Activity |
|| (newIntent.getFlags() & Intent.FLAG_ACTIVITY_NEW_DOCUMENT) != 0) { |
newIntent.setClassName(context, SeparateTaskCustomTabActivity.class.getName()); |
+ // Pre-L, the exclude from recents flag on the launcher does not apply to the launched |
+ // separate task activity (and provides the desired user behavior). On L, the flag |
+ // needs to be cleared otherwise it is hidden immediately upon exiting. |
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { |
+ newIntent.setFlags( |
+ newIntent.getFlags() & ~Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); |
+ } |
String url = IntentHandler.getUrlFromIntent(newIntent); |
assert url != null; |