diff options
author | ben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-26 03:10:26 +0000 |
---|---|---|
committer | ben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-26 03:10:26 +0000 |
commit | 2cd4fdea750fd153eb027e41810574c2b189190f (patch) | |
tree | f08e77879efe7221501caa078432c6f1b7731ff6 /chrome/browser/ui/browser_ui_prefs.cc | |
parent | a07b4f61e98491a1868c6ed15133dd4f6e9bc16b (diff) | |
download | chromium_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.cc | 177 |
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 |