| Index: chrome/android/java/src/org/chromium/chrome/browser/ServiceTabLauncher.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ServiceTabLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/ServiceTabLauncher.java
|
| index 5a2b92b77cb67f15af83686813a5917d205a3db1..b8d680886b9840a961014f848e08b013058f43d8 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ServiceTabLauncher.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ServiceTabLauncher.java
|
| @@ -76,9 +76,14 @@ public class ServiceTabLauncher {
|
| final WebappDataStorage storage =
|
| WebappRegistry.getInstance().getWebappDataStorageForUrl(url);
|
|
|
| - // If we do not find a WebappDataStorage corresponding to this URL, or if it hasn't
|
| - // been opened recently enough, open the URL in a tab.
|
| - if (storage == null || !storage.wasLaunchedRecently()) {
|
| + // Open a new tab if:
|
| + // - We did not find a WebappDataStorage corresponding to this URL.
|
| + // OR
|
| + // - The WebappDataStorage hasn't been opened recently enough.
|
| + // OR
|
| + // - The WebappDataStorage corresponds to a WebAPK (and WebAPKs are disabled).
|
| + if (storage == null || !storage.wasLaunchedRecently()
|
| + || storage.getWebApkPackageName() != null) {
|
| LoadUrlParams loadUrlParams = new LoadUrlParams(url, PageTransition.LINK);
|
| loadUrlParams.setPostData(postData);
|
| loadUrlParams.setVerbatimHeaders(extraHeaders);
|
|
|