Index: chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkActivity.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkActivity.java |
index 2cd5ea50d829ef8efec3498d910f8cdb120fc8a4..63b76a6d714e390ab2a4609287139631480111df 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkActivity.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkActivity.java |
@@ -6,7 +6,11 @@ package org.chromium.chrome.browser.webapps; |
import android.content.Intent; |
+import org.chromium.base.ContextUtils; |
+import org.chromium.base.library_loader.LibraryProcessType; |
+import org.chromium.chrome.browser.ChromeApplication; |
import org.chromium.chrome.browser.ShortcutHelper; |
+import org.chromium.content.browser.ChildProcessCreationParams; |
import org.chromium.content_public.browser.LoadUrlParams; |
import org.chromium.ui.base.PageTransition; |
@@ -39,4 +43,36 @@ public class WebApkActivity extends WebappActivity { |
// when WebAPKs are registered in WebappRegistry. |
initializeSplashScreenWidgets(backgroundColor, null); |
} |
+ |
+ @Override |
+ public void onResume() { |
+ super.onResume(); |
+ // WebAPK hosts Chrome's renderer processes by declaring Chrome' renderer service in its |
+ // AndroidManifest.xml. We set WebAPK's child process creation parameter to let the |
+ // {@link ChildProcessLauncher} knows which application's renderer service to connect. |
pkotwicz
2016/05/27 21:10:13
Nit: connect to
Can you update this comment. I do
Xi Han
2016/05/27 21:31:39
Done.
|
+ initializeChildProcessCreationParams(true); |
+ } |
+ |
+ @Override |
+ protected void initializeChildProcessCreationParams() { |
+ // TODO(hanxi): crbug.com/611842. Investigates whether this function works for multiple |
+ // window or with --site-per-process enabled. |
pkotwicz
2016/05/27 21:10:13
window -> windows
Xi Han
2016/05/27 21:31:39
Done.
|
+ initializeChildProcessCreationParams(true); |
+ } |
+ |
+ @Override |
+ public void onPause() { |
+ super.onPause(); |
+ initializeChildProcessCreationParams(false); |
+ } |
+ |
pkotwicz
2016/05/27 21:10:13
Nit: isForWebApk
Please add a comment to this fun
Xi Han
2016/05/27 21:31:39
Done.
|
+ private void initializeChildProcessCreationParams(boolean isforWebApk) { |
+ ChromeApplication chrome = (ChromeApplication) ContextUtils.getApplicationContext(); |
+ ChildProcessCreationParams params = chrome.getChildProcessCreationParams(); |
+ if (isforWebApk) { |
+ params = new ChildProcessCreationParams(getWebappInfo().webApkPackageName(), |
+ params.getExtraBindFlags(), LibraryProcessType.PROCESS_WEBAPK_CHILD); |
+ } |
+ ChildProcessCreationParams.set(params); |
+ } |
} |