| 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());
|
|
|