summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/browser_ui_prefs.cc
diff options
context:
space:
mode:
authorben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-26 03:10:26 +0000
committerben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-26 03:10:26 +0000
commit2cd4fdea750fd153eb027e41810574c2b189190f (patch)
treef08e77879efe7221501caa078432c6f1b7731ff6 /chrome/browser/ui/browser_ui_prefs.cc
parenta07b4f61e98491a1868c6ed15133dd4f6e9bc16b (diff)
downloadchromium_src-2cd4fdea750fd153eb027e41810574c2b189190f.zip
chromium_src-2cd4fdea750fd153eb027e41810574c2b189190f.tar.gz
chromium_src-2cd4fdea750fd153eb027e41810574c2b189190f.tar.bz2
Move browser prefs off Browser and View Source into browser_commands.
http://crbug.com/133576 TEST=none Review URL: https://chromiumcodereview.appspot.com/10636042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144099 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui/browser_ui_prefs.cc')
-rw-r--r--chrome/browser/ui/browser_ui_prefs.cc177
1 files changed, 177 insertions, 0 deletions
diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc
new file mode 100644
index 0000000..502bb18
--- /dev/null
+++ b/chrome/browser/ui/browser_ui_prefs.cc
@@ -0,0 +1,177 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/ui/browser_ui_prefs.h"
+
+#include "chrome/browser/prefs/pref_service.h"
+#include "chrome/browser/profiles/profile.h"
+#include "chrome/common/pref_names.h"
+
+namespace chrome {
+
+void SetNewHomePagePrefs(PrefService* prefs) {
+ const PrefService::Preference* home_page_pref =
+ prefs->FindPreference(prefs::kHomePage);
+ if (home_page_pref &&
+ !home_page_pref->IsManaged() &&
+ !prefs->HasPrefPath(prefs::kHomePage)) {
+ prefs->SetString(prefs::kHomePage, std::string());
+ }
+ const PrefService::Preference* home_page_is_new_tab_page_pref =
+ prefs->FindPreference(prefs::kHomePageIsNewTabPage);
+ if (home_page_is_new_tab_page_pref &&
+ !home_page_is_new_tab_page_pref->IsManaged() &&
+ !prefs->HasPrefPath(prefs::kHomePageIsNewTabPage))
+ prefs->SetBoolean(prefs::kHomePageIsNewTabPage, false);
+}
+
+void RegisterBrowserPrefs(PrefService* prefs) {
+ prefs->RegisterIntegerPref(prefs::kOptionsWindowLastTabIndex, 0);
+ prefs->RegisterBooleanPref(prefs::kAllowFileSelectionDialogs, true);
+ prefs->RegisterBooleanPref(prefs::kShouldShowFirstRunBubble, false);
+ prefs->RegisterBooleanPref(prefs::kPrintPreviewDisabled,
+#if defined(GOOGLE_CHROME_BUILD)
+ false
+#else
+ true
+#endif
+ );
+}
+
+void RegisterBrowserUserPrefs(PrefService* prefs) {
+ prefs->RegisterBooleanPref(prefs::kHomePageChanged,
+ false,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kHomePageIsNewTabPage,
+ true,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kShowHomeButton,
+ false,
+ PrefService::SYNCABLE_PREF);
+#if defined(OS_MACOSX)
+ // This really belongs in platform code, but there's no good place to
+ // initialize it between the time when the AppController is created
+ // (where there's no profile) and the time the controller gets another
+ // crack at the start of the main event loop. By that time,
+ // StartupBrowserCreator has already created the browser window, and it's too
+ // late: we need the pref to be already initialized. Doing it here also saves
+ // us from having to hard-code pref registration in the several unit tests
+ // that use this preference.
+ prefs->RegisterBooleanPref(prefs::kShowUpdatePromotionInfoBar,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+#endif
+ prefs->RegisterBooleanPref(prefs::kDeleteBrowsingHistory,
+ true,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kDeleteDownloadHistory,
+ true,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kDeleteCache,
+ true,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kDeleteCookies,
+ true,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kDeletePasswords,
+ false,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kDeleteFormData,
+ false,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kDeleteHostedAppsData,
+ false,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterIntegerPref(prefs::kDeleteTimePeriod,
+ 0,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kCheckDefaultBrowser,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kDefaultBrowserFlowDialog,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kShowOmniboxSearchHint,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kWebAppCreateOnDesktop,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kWebAppCreateInAppsMenu,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kWebAppCreateInQuickLaunchBar,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kEnableTranslate,
+ true,
+ PrefService::SYNCABLE_PREF);
+ prefs->RegisterStringPref(prefs::kCloudPrintEmail,
+ std::string(),
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kCloudPrintProxyEnabled,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kCloudPrintSubmitEnabled,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kDevToolsDisabled,
+ false,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterIntegerPref(prefs::kDevToolsHSplitLocation,
+ -1,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterIntegerPref(prefs::kDevToolsVSplitLocation,
+ -1,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterDictionaryPref(prefs::kBrowserWindowPlacement,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterDictionaryPref(prefs::kPreferencesWindowPlacement,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kImportBookmarks,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kImportHistory,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kImportHomepage,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kImportSearchEngine,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kImportSavedPasswords,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+ // The map of timestamps of the last used file browser handlers.
+ prefs->RegisterDictionaryPref(prefs::kLastUsedFileBrowserHandlers,
+ PrefService::UNSYNCABLE_PREF);
+
+ // We need to register the type of these preferences in order to query
+ // them even though they're only typically controlled via policy.
+ prefs->RegisterBooleanPref(prefs::kPluginsAllowOutdated,
+ false,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kPluginsAlwaysAuthorize,
+ false,
+ PrefService::UNSYNCABLE_PREF);
+ prefs->RegisterBooleanPref(prefs::kClearPluginLSODataEnabled,
+ true,
+ PrefService::UNSYNCABLE_PREF);
+}
+
+void RegisterAppPrefs(const std::string& app_name, Profile* profile) {
+ // We need to register the window position pref.
+ std::string window_pref(prefs::kBrowserWindowPlacement);
+ window_pref.append("_");
+ window_pref.append(app_name);
+ PrefService* prefs = profile->GetPrefs();
+ if (!prefs->FindPreference(window_pref.c_str())) {
+ prefs->RegisterDictionaryPref(window_pref.c_str(),
+ PrefService::UNSYNCABLE_PREF);
+ }
+}
+
+
+} // namespace chrome