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

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

Issue 19957002: Run the later parts of startup as UI thread tasks (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Run the later parts of startup as UI thread tasks - patch for Yaron's comments Created 7 years, 5 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/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 98df0c1afbd1f5a8ad9cabae2110ee65ec2c5f0f..9b83e61f227b80e4ea5d32796ef8168ef2a33d68 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
@@ -21,6 +21,7 @@ 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.browser.StartupObserver;
import org.chromium.content.common.CommandLine;
import org.chromium.content.common.ProcessInitException;
import org.chromium.ui.WindowAndroid;
@@ -49,21 +50,33 @@ public class ChromiumTestShellActivity extends ChromiumActivity {
private WindowAndroid mWindow;
private TabManager mTabManager;
private DevToolsServer mDevToolsServer;
+ private Bundle mSavedInstanceState;
@Override
protected void onCreate(Bundle savedInstanceState) {
Yaron 2013/07/25 00:05:17 If you make this final, you can pass it through to
aberent 2013/07/26 20:36:54 Done.
super.onCreate(savedInstanceState);
+ mSavedInstanceState = savedInstanceState;
if (!CommandLine.isInitialized()) CommandLine.initFromFile(COMMAND_LINE_FILE);
waitForDebuggerIfNeeded();
DeviceUtils.addDeviceSpecificUserAgentSwitch(this);
+
try {
- AndroidBrowserProcess.init(this, AndroidBrowserProcess.MAX_RENDERERS_LIMIT);
+ AndroidBrowserProcess.init(
+ this, AndroidBrowserProcess.MAX_RENDERERS_LIMIT, false, new StartupObserver() {
+ @Override
+ public void allStartupTasksRan() {
+ finishInitialization();
+ }
+ });
} catch (ProcessInitException e) {
Log.e(TAG, "Chromium browser process initialization failed", e);
finish();
}
+ }
+
+ private void finishInitialization() {
setContentView(R.layout.testshell_activity);
mTabManager = (TabManager) findViewById(R.id.tab_manager);
String startupUrl = getUrlFromIntent(getIntent());
@@ -72,7 +85,7 @@ public class ChromiumTestShellActivity extends ChromiumActivity {
}
mWindow = new WindowAndroid(this);
- mWindow.restoreInstanceState(savedInstanceState);
+ mWindow.restoreInstanceState(mSavedInstanceState);
mTabManager.setWindow(mWindow);
mDevToolsServer = new DevToolsServer("chromium_testshell");

Powered by Google App Engine
This is Rietveld 408576698