diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/AppInstallMenuHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/AppInstallMenuHandler.java index 7bedbc8985a1192dcce41f282f2e1e4473dc13a8..9b12a2a70f3b852f9c2fa4ff74b8a6abd90197c5 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/AppInstallMenuHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/AppInstallMenuHandler.java @@ -14,6 +14,7 @@ import org.chromium.base.ContextUtils; import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.Nullable; import org.chromium.chrome.R; +import org.chromium.components.embedder_support.util.UrlConstants; import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl; import org.chromium.chrome.browser.banners.AppMenuVerbiage; import org.chromium.chrome.browser.tab.Tab; @@ -61,7 +62,7 @@ public class AppInstallMenuHandler { if (webContents == null) return false; @Nullable BottomSheetController controller = BottomSheetControllerProvider.from(windowAndroid); - if (controller == null) { + if ((currentTab.getUrl() != null && UrlConstants.CHROME_SCHEME.equals(currentTab.getUrl().getScheme())) || controller == null) { // We have three options when this function fails. One is to abort the operation and do // nothing (by returning false), or we can make one of the two options of the Universal // Install dialog the default and go with that in case of errors. Since Install App is