redirect users to new custom filter settings android

This commit is contained in:
tapanmodh
2023-08-21 18:32:02 +05:30
parent 55fd575aaa
commit bf9ce8523b
2 changed files with 17 additions and 1 deletions
@@ -147,6 +147,7 @@ import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
import org.chromium.chrome.browser.settings.developer.BraveQAPreferences;
import org.chromium.chrome.browser.share.ShareDelegate;
import org.chromium.chrome.browser.share.ShareDelegate.ShareOrigin;
import org.chromium.chrome.browser.shields.ContentFilteringFragment;
import org.chromium.chrome.browser.site_settings.BraveWalletEthereumConnectedSites;
import org.chromium.chrome.browser.speedreader.BraveSpeedReaderUtils;
import org.chromium.chrome.browser.tab.Tab;
@@ -1299,6 +1300,11 @@ public abstract class BraveActivity extends ChromeActivity
settingsLauncher.launchSettingsActivity(this, BraveNewsPreferencesV2.class);
}
public void openBraveContentFilteringSettings() {
SettingsLauncher settingsLauncher = new SettingsLauncherImpl();
settingsLauncher.launchSettingsActivity(this, ContentFilteringFragment.class);
}
public void openBraveWalletSettings() {
SettingsLauncher settingsLauncher = new SettingsLauncherImpl();
settingsLauncher.launchSettingsActivity(this, BraveWalletPreferences.class);
@@ -8,7 +8,9 @@ package org.chromium.chrome.browser.externalnav;
import android.content.Intent;
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.chrome.browser.BraveWalletProvider;
import org.chromium.chrome.browser.app.BraveActivity;
import org.chromium.chrome.browser.privacy.settings.BravePrivacySettings;
import org.chromium.components.external_intents.ExternalNavigationDelegate;
import org.chromium.components.external_intents.ExternalNavigationHandler;
@@ -20,6 +22,7 @@ import org.chromium.url.GURL;
* Extends Chromium's ExternalNavigationHandler
*/
public class BraveExternalNavigationHandler extends ExternalNavigationHandler {
private static final String TAG = "BraveUrlHandler";
private BraveWalletProvider mBraveWalletProvider;
public BraveExternalNavigationHandler(ExternalNavigationDelegate delegate) {
@@ -28,14 +31,21 @@ public class BraveExternalNavigationHandler extends ExternalNavigationHandler {
@Override
public OverrideUrlLoadingResult shouldOverrideUrlLoading(ExternalNavigationParams params) {
String originalUrl = params.getUrl().getSpec();
if (isWalletProviderOverride(params)) {
String originalUrl = params.getUrl().getSpec();
String url = originalUrl.replaceFirst("^rewards://", "brave://rewards/");
GURL browserFallbackGURL = new GURL(url);
if (params.getRedirectHandler() != null) {
params.getRedirectHandler().setShouldNotOverrideUrlLoadingOnCurrentRedirectChain();
}
return OverrideUrlLoadingResult.forNavigateTab(browserFallbackGURL, params);
} else if (originalUrl.equalsIgnoreCase("chrome://adblock/")) {
try {
BraveActivity.getBraveActivity().openBraveContentFilteringSettings();
} catch (BraveActivity.BraveActivityNotFoundException e) {
Log.e(TAG, "adblock url " + e);
}
return OverrideUrlLoadingResult.forExternalIntent();
}
return super.shouldOverrideUrlLoading(params);
}