Skip to content

Commit

Permalink
Merge pull request #3031 from brave/reg-pref-rework
Browse files Browse the repository at this point in the history
Register prefs in right places
  • Loading branch information
darkdh authored Aug 2, 2019
2 parents 8c3226e + b0db6c6 commit 3a56a40
Show file tree
Hide file tree
Showing 8 changed files with 82 additions and 54 deletions.
2 changes: 0 additions & 2 deletions browser/autoplay/autoplay_permission_context_unittest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,6 @@ class AutoplayPermissionContextTests : public ChromeRenderViewHostTestHarness {
auto prefs =
std::make_unique<sync_preferences::TestingPrefServiceSyncable>();
RegisterUserProfilePrefs(prefs->registry());
prefs->registry()->
RegisterBooleanPref(kGoogleLoginControlType, true);
builder.SetPrefService(std::move(prefs));
return builder.Build().release();
}
Expand Down
34 changes: 0 additions & 34 deletions browser/brave_profile_prefs.cc
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,7 @@

#include "brave/browser/brave_profile_prefs.h"

#include "brave/browser/themes/brave_theme_service.h"
#include "brave/browser/tor/buildflags.h"
#include "brave/common/pref_names.h"
#include "brave/components/brave_rewards/browser/rewards_service.h"
#include "brave/components/brave_shields/browser/brave_shields_web_contents_observer.h"
#include "brave/components/brave_webtorrent/browser/buildflags/buildflags.h"
#include "chrome/browser/net/prediction_options.h"
Expand All @@ -18,7 +15,6 @@
#include "components/pref_registry/pref_registry_syncable.h"
#include "components/safe_browsing/common/safe_browsing_prefs.h"
#include "components/signin/core/browser/signin_pref_names.h"
#include "components/spellcheck/browser/pref_names.h"
#include "components/sync/base/pref_names.h"
#include "extensions/buildflags/buildflags.h"
#include "extensions/common/feature_switch.h"
Expand All @@ -32,30 +28,18 @@
#include "brave/components/brave_webtorrent/browser/webtorrent_util.h"
#endif

#if BUILDFLAG(ENABLE_TOR)
#include "brave/browser/tor/tor_profile_service.h"
#endif

using extensions::FeatureSwitch;

namespace brave {

void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
brave_rewards::RewardsService::RegisterProfilePrefs(registry);
brave_shields::BraveShieldsWebContentsObserver::RegisterProfilePrefs(
registry);

// appearance
#if !defined(OS_ANDROID)
BraveThemeService::RegisterProfilePrefs(registry);
#endif
registry->RegisterBooleanPref(kLocationBarIsWide, false);
registry->RegisterBooleanPref(kHideBraveRewardsButton, false);

#if BUILDFLAG(ENABLE_TOR)
tor::TorProfileService::RegisterProfilePrefs(registry);
#endif

registry->RegisterBooleanPref(kWidevineOptedIn, false);
#if BUILDFLAG(BUNDLE_WIDEVINE_CDM)
BraveWidevineBundleManager::RegisterProfilePrefs(registry);
Expand All @@ -76,11 +60,6 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
webtorrent::RegisterProfilePrefs(registry);
#endif

#if defined(OS_LINUX)
// Use brave theme by default instead of gtk theme.
registry->SetDefaultPrefValue(prefs::kUsesSystemTheme, base::Value(false));
#endif

// Hangouts
registry->RegisterBooleanPref(kHangoutsEnabled, true);

Expand All @@ -96,9 +75,6 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
FeatureSwitch::load_media_router_component_extension()->IsEnabled());
#endif

// No sign into Brave functionality
registry->SetDefaultPrefValue(prefs::kSigninAllowed, base::Value(false));

// Restore last profile on restart
registry->SetDefaultPrefValue(
prefs::kRestoreOnStartup,
Expand All @@ -111,10 +87,6 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->SetDefaultPrefValue(prefs::kAlternateErrorPagesEnabled,
base::Value(false));

// Disable spell check service
registry->SetDefaultPrefValue(
spellcheck::prefs::kSpellCheckUseSpellingService, base::Value(false));

// Disable safebrowsing reporting
registry->SetDefaultPrefValue(
prefs::kSafeBrowsingExtendedReportingOptInAllowed, base::Value(false));
Expand All @@ -131,12 +103,6 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
// Make sync managed to dsiable some UI after password saving.
registry->SetDefaultPrefValue(syncer::prefs::kSyncManaged, base::Value(true));

// Make sure sign into Brave is not enabled
// The older kSigninAllowed is deprecated and only in use in Android until
// C71.
registry->SetDefaultPrefValue(prefs::kSigninAllowedOnNextStartup,
base::Value(false));

// Disable cloud print
// Cloud Print: Don't allow this browser to act as Cloud Print server
registry->SetDefaultPrefValue(prefs::kCloudPrintProxyEnabled,
Expand Down
5 changes: 0 additions & 5 deletions browser/profiles/tor_unittest_profile_manager.cc
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@
#include "base/threading/thread_task_runner_handle.h"
#include "brave/browser/profiles/brave_profile_manager.h"
#include "brave/browser/tor/tor_profile_service.h"
#include "brave/components/brave_webtorrent/browser/buildflags/buildflags.h"
#include "brave/components/brave_webtorrent/browser/webtorrent_util.h"
#include "chrome/browser/prefs/browser_prefs.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/test/base/testing_profile.h"
Expand Down Expand Up @@ -63,9 +61,6 @@ Profile* TorUnittestProfileManager::CreateTorProfile(
factory.CreateSyncable(registry.get()));
RegisterUserProfilePrefs(registry.get());
tor::TorProfileService::RegisterProfilePrefs(registry.get());
#if BUILDFLAG(ENABLE_BRAVE_WEBTORRENT)
webtorrent::RegisterProfilePrefs(registry.get());
#endif
profile_builder.SetPrefService(std::move(prefs));
profile_builder.SetPath(path);
profile_builder.SetDelegate(delegate);
Expand Down
6 changes: 6 additions & 0 deletions chromium_src/chrome/browser/prefs/browser_prefs.cc
Original file line number Diff line number Diff line change
@@ -1,2 +1,8 @@
/* Copyright (c) 2019 The Brave Authors. All rights reserved.
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "brave/browser/brave_profile_prefs.h"
#include "brave/browser/brave_local_state_prefs.h"
#include "../../../../chrome/browser/prefs/browser_prefs.cc"
55 changes: 55 additions & 0 deletions chromium_src/chrome/browser/profiles/pref_service_builder_utils.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
/* Copyright (c) 2019 The Brave Authors. All rights reserved.
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "chrome/browser/profiles/pref_service_builder_utils.h"

#define RegisterProfilePrefs RegisterProfilePrefs_ChromiumImpl
#include "../../../../../chrome/browser/profiles/pref_service_builder_utils.cc"
#undef RegisterProfilePrefs

#include "brave/browser/brave_profile_prefs.h"
#include "brave/browser/themes/brave_theme_service.h"
#include "brave/browser/tor/buildflags.h"
#include "brave/common/pref_names.h"
#include "brave/components/brave_rewards/browser/rewards_service.h"
#include "chrome/common/pref_names.h"
#include "components/spellcheck/browser/pref_names.h"

#if BUILDFLAG(ENABLE_TOR)
#include "brave/browser/tor/tor_profile_service.h"
#endif

// Prefs for KeyedService
void RegisterProfilePrefs(bool is_signin_profile,
const std::string& locale,
user_prefs::PrefRegistrySyncable* registry) {
RegisterProfilePrefs_ChromiumImpl(is_signin_profile, locale, registry);

// appearance
#if !defined(OS_ANDROID)
BraveThemeService::RegisterProfilePrefs(registry);
#endif

#if BUILDFLAG(ENABLE_TOR)
tor::TorProfileService::RegisterProfilePrefs(registry);
#endif

brave_rewards::RewardsService::RegisterProfilePrefs(registry);

// Disable spell check service
registry->SetDefaultPrefValue(
spellcheck::prefs::kSpellCheckUseSpellingService, base::Value(false));

// Make sure sign into Brave is not enabled
// The older kSigninAllowed is deprecated and only in use in Android until
// C71.
registry->SetDefaultPrefValue(prefs::kSigninAllowedOnNextStartup,
base::Value(false));

#if defined(OS_LINUX)
// Use brave theme by default instead of gtk theme.
registry->SetDefaultPrefValue(prefs::kUsesSystemTheme, base::Value(false));
#endif
}
12 changes: 11 additions & 1 deletion chromium_src/chrome/common/pref_names.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
#include "../../../chrome/common/pref_names.h"
/* Copyright (c) 2019 The Brave Authors. All rights reserved.
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */

#ifndef BRAVE_CHROMIUM_SRC_CHROME_COMMON_PREF_NAMES_H_
#define BRAVE_CHROMIUM_SRC_CHROME_COMMON_PREF_NAMES_H_

#include "../../../../chrome/common/pref_names.h"

namespace prefs {

Expand All @@ -8,3 +16,5 @@ extern const char kImportDialogLedger[];
extern const char kImportDialogWindows[];

} // namespace prefs

#endif // BRAVE_CHROMIUM_SRC_CHROME_COMMON_PREF_NAMES_H_
10 changes: 9 additions & 1 deletion patches/chrome-browser-prefs-browser_prefs.cc.patch
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
index 50312cdb0324e3dad18c77c96e5e609bfb259541..ed0ab71e9e08494abb5016bcb4e1fce6f852ea24 100644
index 50312cdb0324e3dad18c77c96e5e609bfb259541..2298f9b60d2718d82e721dc8483b114931a30d0d 100644
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -658,6 +658,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
Expand All @@ -10,3 +10,11 @@ index 50312cdb0324e3dad18c77c96e5e609bfb259541..ed0ab71e9e08494abb5016bcb4e1fce6
}

// Register prefs applicable to all profiles.
@@ -908,6 +909,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
#endif

RegisterProfilePrefsForMigration(registry);
+ brave::RegisterProfilePrefs(registry);
}

void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
12 changes: 1 addition & 11 deletions patches/chrome-browser-profiles-profile_impl.cc.patch
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
index 71619ca3d5271b0f813110dce0e5570b6eebdda7..a9c1f8ec99aafa581c7fc8261e470261323c6492 100644
index 71619ca3d5271b0f813110dce0e5570b6eebdda7..97003f2bc6f1141ae49dc2a2ac58e5f861fd0615 100644
--- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc
@@ -34,6 +34,7 @@
Expand All @@ -10,13 +10,3 @@ index 71619ca3d5271b0f813110dce0e5570b6eebdda7..a9c1f8ec99aafa581c7fc8261e470261
#include "build/build_config.h"
#include "chrome/browser/background/background_contents_service_factory.h"
#include "chrome/browser/background_fetch/background_fetch_delegate_factory.h"
@@ -508,6 +509,9 @@ ProfileImpl::ProfileImpl(
LoadPrefsForNormalStartup(async_prefs);
#endif

+// Done here instead of browser_prefs.cc so it can override default prefs
+brave::RegisterProfilePrefs(pref_registry_.get());
+
content::BrowserContext::Initialize(this, path_);

// Register on BrowserContext.

0 comments on commit 3a56a40

Please sign in to comment.