synchronized_preferences.h revision c407dc5cd9bdc5668497f21b26b09d988ab439de
1// Copyright (c) 2010 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5// Defines a list of the preferences that the 6// PreferencesChangeProcessor should process changes for. 7 8#ifndef CHROME_BROWSER_SYNC_GLUE_SYNCHRONIZED_PREFERENCES_H_ 9#define CHROME_BROWSER_SYNC_GLUE_SYNCHRONIZED_PREFERENCES_H_ 10 11#include "chrome/browser/translate/translate_prefs.h" 12#include "chrome/common/pref_names.h" 13 14namespace browser_sync { 15 16static const wchar_t* kSynchronizedPreferences[] = { 17 // Options dialog: Basics tab. 18 prefs::kRestoreOnStartup, 19 prefs::kURLsToRestoreOnStartup, 20 prefs::kShowBookmarkBar, 21 prefs::kHomePageIsNewTabPage, 22 prefs::kHomePage, 23 prefs::kShowHomeButton, 24 prefs::kShowPageOptionsButtons, 25 // Default Search is not synced, needs a new data type. See 26 // http://crbug.com/40482 27 28 // Options dialog: Personal Stuff tab. 29 prefs::kPasswordManagerEnabled, 30 prefs::kAutoFillEnabled, 31 prefs::kUseCustomChromeFrame, 32 33 // Options dialog: Under the hood -> Content Settings -> Cookies. 34 // Cookie settings and exceptions not working 35 prefs::kBlockThirdPartyCookies, 36 prefs::kClearSiteDataOnExit, 37 38 // Options dialog: Under the hood -> Content Settings -> 39 // Images, JavaScript, Plug-ins, Pop-ups. 40 prefs::kDefaultContentSettings, 41 prefs::kContentSettingsPatterns, 42 43 // Options dialog: Under the hood -> Content Settings -> Location. 44 // Exceptions not working (dialog not working either). 45 prefs::kGeolocationContentSettings, 46 prefs::kGeolocationDefaultContentSetting, 47 48 // Options dialog: under the hood -> Content Settings -> Notifications. 49 prefs::kDesktopNotificationDefaultContentSetting, 50 51 // Options dialog: Under the hood -> Clear browsing data. 52 // All working but no live update. 53 prefs::kDeleteBrowsingHistory, 54 prefs::kDeleteDownloadHistory, 55 prefs::kDeleteCache, 56 prefs::kDeleteCookies, 57 prefs::kDeletePasswords, 58 prefs::kDeleteFormData, 59 prefs::kDeleteTimePeriod, 60 61 // Options dialog: Under the hood -> Change proxy settings. 62 // Uses native OS dialog, not synced. 63 64 // Options dialog: Under the hood -> Change font and language settings. 65 // Serif, San Serif, Fixed font settings not synced. 66 prefs::kDefaultCharset, 67 // There is no dialog to modify the kAcceptLanguages list on OSX, so 68 // don't sync it. 69#if !defined(OS_MACOSX) 70 prefs::kAcceptLanguages, 71#endif 72 prefs::kEnableSpellCheck, 73 // Spell checker language not synced. 74 prefs::kApplicationLocale, 75 76 // Options dialog: Under the hood. 77 prefs::kAlternateErrorPagesEnabled, 78 prefs::kSearchSuggestEnabled, 79 prefs::kDnsPrefetchingEnabled, 80 prefs::kSafeBrowsingEnabled, 81 prefs::kEnableTranslate, 82 // Download directory not synced. 83 // Clear auto-opening settings not synced. 84 prefs::kPromptForDownload, 85 86 // Wrench menu -> Extensions. 87 prefs::kExtensionsUIDeveloperMode, // no live update 88 89 // Document menu -> Zoom. 90 // prefs::kPerHostZoomLevels creates bad UX when synced, see 91 // http://crbug.com/47359. 92 93 // Document menu -> Encoding -> Auto Detect. 94 prefs::kWebKitUsesUniversalDetector, 95 96 // Autofill dialog. 97 prefs::kAutoFillAuxiliaryProfilesEnabled, 98 99 // Translate preferences. 100 TranslatePrefs::kPrefTranslateLanguageBlacklist, 101 TranslatePrefs::kPrefTranslateSiteBlacklist, 102 TranslatePrefs::kPrefTranslateWhitelists, 103 TranslatePrefs::kPrefTranslateDeniedCount, 104 TranslatePrefs::kPrefTranslateAcceptedCount, 105 106 // Desktop notification permissions. 107 prefs::kDesktopNotificationAllowedOrigins, 108 prefs::kDesktopNotificationDeniedOrigins, 109 110 // Cookie prompt dialog. 111 prefs::kCookiePromptExpanded, 112 113#if defined(OS_CHROMEOS) 114 // IME prefs 115 prefs::kLanguageHangulKeyboard, 116 prefs::kLanguagePinyinAutoCommit, 117 prefs::kLanguagePinyinCommaPeriodPage, 118 prefs::kLanguagePinyinCorrectPinyin, 119 prefs::kLanguagePinyinDoublePinyin, 120 prefs::kLanguagePinyinFuzzyPinyin, 121 prefs::kLanguagePinyinInitChinese, 122 prefs::kLanguagePinyinInitFull, 123 prefs::kLanguagePinyinInitFullPunct, 124 prefs::kLanguagePinyinInitSimplifiedChinese, 125 prefs::kLanguagePinyinMinusEqualPage, 126 prefs::kLanguagePinyinShiftSelectCandidate, 127 prefs::kLanguagePinyinTradCandidate, 128 prefs::kLanguagePreferredLanguages, 129 prefs::kLanguagePreloadEngines, 130 // TODO(yusukes): Add prefs for ibus-mozc (Japanese input method). 131 // prefs::kLanguageMozcPreeditMethod, 132 // prefs::kLanguageMozcSessionKeymap, 133 // prefs::kLanguageMozcPunctuationMethod, 134 // prefs::kLanguageMozcSymbolMethod, 135 // prefs::kLanguageMozcSpaceCharacterForm; 136 // prefs::kLanguageMozcHistoryLearningLevel; 137 // prefs::kLanguageMozcSelectionShortcut; 138 // prefs::kLanguageMozcShiftKeyModeSwitch; 139 // prefs::kLanguageMozcNumpadCharacterForm; 140 // prefs::kLanguageMozcIncognitoMode, 141 // prefs::kLanguageMozcUseAutoImeTurnOff, 142 // prefs::kLanguageMozcUseDateConversion, 143 // prefs::kLanguageMozcUseSingleKanjiConversion, 144 // prefs::kLanguageMozcUseSymbolConversion, 145 // prefs::kLanguageMozcUseNumberConversion, 146 // prefs::kLanguageMozcUseHistorySuggest, 147 // prefs::kLanguageMozcUseDictionarySuggest, 148 // prefs::kLanguageMozcSuggestionsSize 149 // 150 // We don't sync the following IME prefs since they are not user-configurable 151 // (yet): 152 // prefs::kLanguageHotkeyNextEngineInMenu, 153 // prefs::kLanguageHotkeyPreviousEngine, 154 // prefs::kLanguagePinyinDoublePinyinSchema, 155 // prefs::kLanguagePinyinLookupTablePageSize, 156 // 157 // We don't sync prefs::kLanguageCurrentInputMethod and PreviousInputMethod. 158#endif 159}; 160 161} // namespace browser_sync 162 163#endif // CHROME_BROWSER_SYNC_GLUE_SYNCHRONIZED_PREFERENCES_H_ 164