Index: chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java |
index 9dbaa3fcb0af14cab4db36c5894e37394b15987c..3490476c196b80bafa3ba0cfa97684c72ec3f9ea 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java |
@@ -8,12 +8,15 @@ import android.content.Context; |
import android.content.Intent; |
import android.net.MailTo; |
import android.net.Uri; |
+import android.provider.Browser; |
import android.provider.ContactsContract; |
import org.chromium.base.metrics.RecordUserAction; |
+import org.chromium.chrome.browser.DefaultBrowserInfo; |
import org.chromium.chrome.browser.IntentHandler; |
import org.chromium.chrome.browser.UrlConstants; |
import org.chromium.chrome.browser.contextmenu.ContextMenuItemDelegate; |
+import org.chromium.chrome.browser.document.ChromeLauncherActivity; |
import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; |
import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings; |
import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
@@ -232,6 +235,33 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate { |
} |
} |
+ @Override |
+ public void onOpenInNewChromeTabFromCCT(String linkUrl, boolean isIncognito) { |
+ Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(linkUrl)); |
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); |
+ intent.setPackage(mTab.getApplicationContext().getPackageName()); |
+ intent.putExtra(ChromeLauncherActivity.EXTRA_IS_ALLOWED_TO_RETURN_TO_PARENT, false); |
+ if (isIncognito) { |
+ intent.putExtra(IntentHandler.EXTRA_OPEN_NEW_INCOGNITO_TAB, true); |
+ intent.putExtra( |
+ Browser.EXTRA_APPLICATION_ID, mTab.getApplicationContext().getPackageName()); |
+ IntentHandler.addTrustedIntentExtras(intent); |
+ } |
+ IntentUtils.safeStartActivity(mTab.getActivity(), intent); |
+ } |
+ |
+ @Override |
+ public String getTitleForOpenTabInExternalApp() { |
+ return DefaultBrowserInfo.getTitleOpenInDefaultBrowser(false); |
+ } |
+ |
+ @Override |
+ public void onOpenInDefaultBrowser(String url) { |
+ Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); |
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); |
+ IntentUtils.safeStartActivity(mTab.getActivity(), intent); |
+ } |
+ |
/** |
* Checks if spdy proxy is enabled for input url. |
* @param url Input url to check for spdy setting. |