Index: chrome/android/java/src/org/chromium/chrome/browser/tabmodel/document/TabDelegate.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/document/TabDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/document/TabDelegate.java |
index 6c48ef744d71f771c59465ac4d62d3c0185ebacd..d37a72baa34a169686955cde640973d794e15ab2 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/document/TabDelegate.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/document/TabDelegate.java |
@@ -81,7 +81,8 @@ public class TabDelegate extends TabCreator { |
*/ |
public void createTabInOtherWindow(LoadUrlParams loadUrlParams, Activity activity, |
int parentId) { |
- Intent intent = createNewTabIntent(new AsyncTabCreationParams(loadUrlParams), parentId); |
+ Intent intent = createNewTabIntent( |
+ new AsyncTabCreationParams(loadUrlParams), parentId, false); |
Class<? extends Activity> targetActivity = |
MultiWindowUtils.getInstance().getOpenInOtherWindowActivity(activity); |
@@ -117,11 +118,13 @@ public class TabDelegate extends TabCreator { |
assert !(type == TabLaunchType.FROM_LONGPRESS_BACKGROUND |
&& asyncParams.getWebContents() != null); |
- Intent intent = createNewTabIntent(asyncParams, parentId); |
+ Intent intent = createNewTabIntent( |
+ asyncParams, parentId, type == TabLaunchType.FROM_CHROME_UI); |
IntentHandler.startActivityForTrustedIntent(intent, ContextUtils.getApplicationContext()); |
} |
- private Intent createNewTabIntent(AsyncTabCreationParams asyncParams, int parentId) { |
+ private Intent createNewTabIntent( |
+ AsyncTabCreationParams asyncParams, int parentId, boolean isChromeUI) { |
int assignedTabId = TabIdManager.getInstance().generateValidId(Tab.INVALID_TAB_ID); |
AsyncTabParamsManager.add(assignedTabId, asyncParams); |
@@ -148,6 +151,12 @@ public class TabDelegate extends TabCreator { |
intent.putExtra(IntentHandler.EXTRA_OPEN_NEW_INCOGNITO_TAB, mIsIncognito); |
intent.putExtra(IntentHandler.EXTRA_PARENT_TAB_ID, parentId); |
+ if (isChromeUI) { |
+ intent.putExtra(Browser.EXTRA_APPLICATION_ID, |
+ ContextUtils.getApplicationContext().getPackageName()); |
+ intent.putExtra(Browser.EXTRA_CREATE_NEW_TAB, true); |
+ } |
+ |
Activity parentActivity = ActivityDelegate.getActivityForTabId(parentId); |
if (parentActivity != null && parentActivity.getIntent() != null) { |
intent.putExtra(IntentHandler.EXTRA_PARENT_INTENT, parentActivity.getIntent()); |