Chromium Code Reviews| 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"); |