Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4686)

Unified Diff: chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java

Issue 904453002: Feed back to the ServiceTabLauncher when the tab has been created. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@a-open-window
Patch Set: add findbugs line Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java
diff --git a/chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java b/chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java
index f74528ec457e2f347399dd51196cce5b7212560e..9f14d5d4615cee18614e644a2770de4e9b80fa6c 100644
--- a/chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java
+++ b/chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java
@@ -8,6 +8,7 @@ import android.app.Activity;
import android.app.FragmentManager;
import android.content.Intent;
import android.os.Bundle;
+import android.provider.Browser;
import android.support.v7.app.ActionBarActivity;
import android.text.TextUtils;
import android.util.Log;
@@ -29,6 +30,7 @@ import org.chromium.base.library_loader.LibraryProcessType;
import org.chromium.base.library_loader.ProcessInitException;
import org.chromium.chrome.browser.DevToolsServer;
import org.chromium.chrome.browser.FileProviderHelper;
+import org.chromium.chrome.browser.ServiceTabLauncher;
import org.chromium.chrome.browser.Tab;
import org.chromium.chrome.browser.appmenu.AppMenuHandler;
import org.chromium.chrome.browser.appmenu.AppMenuPropertiesDelegate;
@@ -244,10 +246,23 @@ public class ChromeShellActivity extends ActionBarActivity implements AppMenuPro
if (MemoryPressureListener.handleDebugIntent(this, intent.getAction())) return;
String url = getUrlFromIntent(intent);
- if (!TextUtils.isEmpty(url)) {
- ChromeShellTab tab = getActiveTab();
- if (tab != null) tab.loadUrlWithSanitization(url);
+ if (TextUtils.isEmpty(url)) return;
+
+ if (intent.getBooleanExtra(Browser.EXTRA_CREATE_NEW_TAB, false)) {
+ if (mTabManager == null) return;
+
+ Tab newTab = mTabManager.createTab(url, TabLaunchType.FROM_LINK);
+ if (newTab != null && intent.hasExtra(ServiceTabLauncher.LAUNCH_REQUEST_ID_EXTRA)) {
+ ServiceTabLauncher.onWebContentsForRequestAvailable(
+ intent.getIntExtra(ServiceTabLauncher.LAUNCH_REQUEST_ID_EXTRA, 0),
+ newTab.getWebContents());
+ }
+
+ return;
}
+
+ ChromeShellTab tab = getActiveTab();
+ if (tab != null) tab.loadUrlWithSanitization(url);
}
@Override

Powered by Google App Engine
This is Rietveld 408576698