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