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

Unified Diff: chrome/android/testshell/java/src/org/chromium/chrome/testshell/ChromiumTestShellActivity.java

Issue 22272006: Add support for multiple asynchronous browser startups. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Updated tests to use assert messages. Cleaned some of them up a bit. Rebased. Created 7 years, 4 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
« no previous file with comments | « no previous file | chrome/android/testshell/res/values/strings.xml » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/testshell/java/src/org/chromium/chrome/testshell/ChromiumTestShellActivity.java
diff --git a/chrome/android/testshell/java/src/org/chromium/chrome/testshell/ChromiumTestShellActivity.java b/chrome/android/testshell/java/src/org/chromium/chrome/testshell/ChromiumTestShellActivity.java
index cb17c6d01040abfbb47751072a9ed184c0266742..c6543a31cffd4b37b28efd43e46039cacb8a643d 100644
--- a/chrome/android/testshell/java/src/org/chromium/chrome/testshell/ChromiumTestShellActivity.java
+++ b/chrome/android/testshell/java/src/org/chromium/chrome/testshell/ChromiumTestShellActivity.java
@@ -13,20 +13,19 @@ import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
+import android.widget.Toast;
import org.chromium.base.ChromiumActivity;
import org.chromium.base.MemoryPressureListener;
import org.chromium.chrome.browser.DevToolsServer;
import org.chromium.chrome.testshell.sync.SyncController;
import org.chromium.content.browser.ActivityContentVideoViewClient;
-import org.chromium.content.browser.AndroidBrowserProcess;
-import org.chromium.content.browser.BrowserStartupConfig;
+import org.chromium.content.browser.BrowserStartupController;
import org.chromium.content.browser.ContentVideoViewClient;
import org.chromium.content.browser.ContentView;
import org.chromium.content.browser.ContentViewClient;
import org.chromium.content.browser.DeviceUtils;
import org.chromium.content.common.CommandLine;
-import org.chromium.content.common.ProcessInitException;
import org.chromium.sync.signin.ChromeSigninController;
import org.chromium.ui.WindowAndroid;
@@ -64,28 +63,23 @@ public class ChromiumTestShellActivity extends ChromiumActivity implements MenuH
DeviceUtils.addDeviceSpecificUserAgentSwitch(this);
- BrowserStartupConfig.setAsync(new BrowserStartupConfig.StartupCallback() {
- @Override
- public void run(int startupResult) {
- if (startupResult > 0) {
- // TODO: Show error message.
- Log.e(TAG, "Chromium browser process initialization failed");
- finish();
- } else {
- finishInitialization(savedInstanceState);
- }
- }
- });
-
- try {
- if (!AndroidBrowserProcess.init(this, AndroidBrowserProcess.MAX_RENDERERS_LIMIT)) {
- // Process was already running, finish initialization now.
- finishInitialization(savedInstanceState);
- }
- } catch (ProcessInitException e) {
- Log.e(TAG, "Chromium browser process initialization failed", e);
- finish();
- }
+ BrowserStartupController.StartupCallback callback =
+ new BrowserStartupController.StartupCallback() {
+ @Override
+ public void onSuccess(boolean alreadyStarted) {
+ finishInitialization(savedInstanceState);
+ }
+
+ @Override
+ public void onFailure() {
+ Toast.makeText(ChromiumTestShellActivity.this,
+ R.string.browser_process_initialization_failed,
+ Toast.LENGTH_SHORT).show();
+ Log.e(TAG, "Chromium browser process initialization failed");
+ finish();
+ }
+ };
+ BrowserStartupController.get(this).startBrowserProcessesAsync(callback);
}
private void finishInitialization(final Bundle savedInstanceState) {
@@ -110,7 +104,8 @@ public class ChromiumTestShellActivity extends ChromiumActivity implements MenuH
protected void onDestroy() {
super.onDestroy();
- mDevToolsServer.destroy();
+ if (mDevToolsServer != null)
+ mDevToolsServer.destroy();
mDevToolsServer = null;
}
« no previous file with comments | « no previous file | chrome/android/testshell/res/values/strings.xml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698