[Android] Method clobberCurrentTabWithFallbackUrl was removed from ExternalNavigationHandler

Chromium change:

https://chromium.googlesource.com/chromium/src/+/37b5b744bc83f630d3121b46868818bb4e848c2a

Don't launch external fallback URLs when not allowed to launch external URLs

Ensure that we don't launch external fallback URLs, when we've otherwise
decided that we should not launch an external navigation (even if it was
possible to). Also prevent auto subframe navigation from launching
external fallback URLs.

Bug: 1094442
This commit is contained in:
samartnik
2020-08-06 17:32:08 -04:00
committed by mkarolin
parent 9cd0a1e48c
commit 921b91dc14
5 changed files with 11 additions and 40 deletions
@@ -37,13 +37,18 @@ public class BraveExternalNavigationHandler extends ExternalNavigationHandler {
mBraveUphold.CompleteUpholdVerification(params, this);
}
/**
* This function will be removed by ASM byte-code patching tool
* and redirected to ExternalNavigationHandler.
*/
public @OverrideUrlLoadingResult int clobberCurrentTabWithFallbackUrl(
String browserFallbackUrl, ExternalNavigationParams params) {
assert false;
return OverrideUrlLoadingResult.OVERRIDE_WITH_CLOBBERING_TAB;
// Below is an actual code that was used prior to deletion of
// clobberCurrentTabWithFallbackUrl introduced here
// https://chromium.googlesource.com/chromium/src/+/37b5b744bc83f630d3121b46868818bb4e848c2a
if (!params.isMainFrame()) {
return OverrideUrlLoadingResult.NO_OVERRIDE;
}
if (params.getRedirectHandler() != null) {
params.getRedirectHandler().setShouldNotOverrideUrlLoadingOnCurrentRedirectChain();
}
return clobberCurrentTab(browserFallbackUrl, params.getReferrerUrl());
}
}