diff --git a/android/java/org/chromium/chrome/browser/settings/privacy/BravePrivacySettings.java b/android/java/org/chromium/chrome/browser/settings/privacy/BravePrivacySettings.java
index 98a4677a3b9..4a5da76c933 100644
--- a/android/java/org/chromium/chrome/browser/settings/privacy/BravePrivacySettings.java
+++ b/android/java/org/chromium/chrome/browser/settings/privacy/BravePrivacySettings.java
@@ -11,6 +11,7 @@ import android.support.v7.preference.Preference;
import org.chromium.base.ContextUtils;
import org.chromium.chrome.R;
+import org.chromium.chrome.browser.preferences.BravePref;
import org.chromium.chrome.browser.preferences.BravePrefServiceBridge;
import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
@@ -27,12 +28,16 @@ public class BravePrivacySettings extends PrivacySettings {
private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link";
private static final String PREF_SEARCH_SUGGESTIONS = "search_suggestions";
+ private static final String PREF_AUTOCOMPLETE_TOP_SITES = "autocomplete_top_sites";
+ private static final String PREF_AUTOCOMPLETE_BRAVE_SUGGESTED_SITES = "autocomplete_brave_suggested_sites";
private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data";
private final PrefServiceBridge mPrefServiceBridge = PrefServiceBridge.getInstance();
private final ManagedPreferenceDelegate mManagedPreferenceDelegate =
createManagedPreferenceDelegate();
private ChromeSwitchPreference mSearchSuggestions;
+ private ChromeSwitchPreference mAutocompleteTopSites;
+ private ChromeSwitchPreference mAutocompleteBraveSuggestedSites;
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
@@ -60,6 +65,12 @@ public class BravePrivacySettings extends PrivacySettings {
mSearchSuggestions.setOnPreferenceChangeListener(this);
mSearchSuggestions.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
+ mAutocompleteTopSites = (ChromeSwitchPreference) findPreference(PREF_AUTOCOMPLETE_TOP_SITES);
+ mAutocompleteTopSites.setOnPreferenceChangeListener(this);
+
+ mAutocompleteBraveSuggestedSites = (ChromeSwitchPreference) findPreference(PREF_AUTOCOMPLETE_BRAVE_SUGGESTED_SITES);
+ mAutocompleteBraveSuggestedSites.setOnPreferenceChangeListener(this);
+
updatePreferences();
}
@@ -82,6 +93,11 @@ public class BravePrivacySettings extends PrivacySettings {
sharedPreferencesEditor.apply();
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
mPrefServiceBridge.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
+ } else if (PREF_AUTOCOMPLETE_TOP_SITES.equals(key)) {
+ BravePrefServiceBridge.getInstance().setBoolean(BravePref.TOP_SITE_SUGGESTIONS_ENABLED, (boolean) newValue);
+ } else if (PREF_AUTOCOMPLETE_BRAVE_SUGGESTED_SITES.equals(key)) {
+ BravePrefServiceBridge.getInstance().setBoolean(BravePref.BRAVE_SUGGESTED_SITE_SUGGESTIONS_ENABLED,
+ (boolean) newValue);
}
return true;
@@ -97,6 +113,12 @@ public class BravePrivacySettings extends PrivacySettings {
removePreferenceIfPresent(PREF_SYNC_AND_SERVICES_LINK);
mSearchSuggestions.setChecked(mPrefServiceBridge.getBoolean(Pref.SEARCH_SUGGEST_ENABLED));
mSearchSuggestions.setOrder(findPreference(PREF_CLEAR_BROWSING_DATA).getOrder() + 1);
+ mAutocompleteTopSites
+ .setChecked(BravePrefServiceBridge.getInstance().getBoolean(BravePref.TOP_SITE_SUGGESTIONS_ENABLED));
+ mAutocompleteTopSites.setOrder(findPreference(PREF_CLEAR_BROWSING_DATA).getOrder() + 2);
+ mAutocompleteBraveSuggestedSites.setChecked(
+ BravePrefServiceBridge.getInstance().getBoolean(BravePref.BRAVE_SUGGESTED_SITE_SUGGESTIONS_ENABLED));
+ mAutocompleteBraveSuggestedSites.setOrder(findPreference(PREF_CLEAR_BROWSING_DATA).getOrder() + 3);
}
private void removePreferenceIfPresent(String key) {
diff --git a/android/java/res/xml/brave_privacy_preferences.xml b/android/java/res/xml/brave_privacy_preferences.xml
index 5c3dda4cc99..cf4d09ff27b 100644
--- a/android/java/res/xml/brave_privacy_preferences.xml
+++ b/android/java/res/xml/brave_privacy_preferences.xml
@@ -32,4 +32,12 @@
android:title="@string/autocomplete_searches_and_urls_title"
android:summary="@string/autocomplete_searches_and_urls_summary"
android:persistent="false"/>
+
+
diff --git a/browser/android/preferences/brave_prefs.h b/browser/android/preferences/brave_prefs.h
index d46789bc6ad..9f0dabe34ca 100644
--- a/browser/android/preferences/brave_prefs.h
+++ b/browser/android/preferences/brave_prefs.h
@@ -7,6 +7,7 @@
#include
+#include "brave/common/pref_names.h"
#include "brave/components/ntp_background_images/common/pref_names.h"
#include "build/build_config.h"
@@ -17,6 +18,8 @@ enum BravePref {
NTP_SHOW_SPONSORED_IMAGES_BACKGROUND_IMAGE = 10000,
NTP_SHOW_SUPER_REFERRAL_THEMES_OPTION,
NTP_SHOW_BACKGROUND_IMAGE,
+ TOP_SITE_SUGGESTIONS_ENABLED,
+ BRAVE_SUGGESTED_SITE_SUGGESTIONS_ENABLED,
// BRAVE_PREF_NUM_PREFS must be the last entry.
BRAVE_PREF_NUM_PREFS
};
@@ -26,6 +29,8 @@ const char* const kBravePrefsExposedToJava[] = {
ntp_background_images::prefs::kNewTabPageShowSponsoredImagesBackgroundImage,
ntp_background_images::prefs::kNewTabPageSuperReferralThemesOption,
ntp_background_images::prefs::kNewTabPageShowBackgroundImage,
+ kTopSiteSuggestionsEnabled,
+ kBraveSuggestedSiteSuggestionsEnabled
};
static const int kBravePrefOffset = 10000;
diff --git a/browser/ui/android/strings/android_chrome_strings.grd b/browser/ui/android/strings/android_chrome_strings.grd
index b46b3be8021..5dfb3153572 100644
--- a/browser/ui/android/strings/android_chrome_strings.grd
+++ b/browser/ui/android/strings/android_chrome_strings.grd
@@ -4004,6 +4004,13 @@ Only you can see what your camera is looking at. The site can't see your camera'
NFC is off for this device. Turn it on in <link>Android Settings</link>.
+
+
+ Show top sites in autocomplete
+
+
+ Show suggested sites in autocomplete
+