summaryrefslogtreecommitdiffstats
path: root/components/sync_driver/user_selectable_sync_type.h
diff options
context:
space:
mode:
authorblundell@chromium.org <blundell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-31 16:07:13 +0000
committerblundell@chromium.org <blundell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-31 16:07:13 +0000
commita0e77d34b23643174e25fb509a516efad179d57f (patch)
tree117ff89c38a021b453ad86b71e55b53652167d34 /components/sync_driver/user_selectable_sync_type.h
parent3a37a8029b0ffb8a101cdf1a202db83edd245e27 (diff)
downloadchromium_src-a0e77d34b23643174e25fb509a516efad179d57f.zip
chromium_src-a0e77d34b23643174e25fb509a516efad179d57f.tar.gz
chromium_src-a0e77d34b23643174e25fb509a516efad179d57f.tar.bz2
Create sync_driver component.
This CL creates the sync_driver component and moves files with no problematic dependencies from //chrome/browser/sync and //chrome/browser/sync/glue into it. This is a first step toward componentization of //chrome/browser/sync. BUG=339727 Review URL: https://codereview.chromium.org/133343007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248192 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components/sync_driver/user_selectable_sync_type.h')
-rw-r--r--components/sync_driver/user_selectable_sync_type.h66
1 files changed, 66 insertions, 0 deletions
diff --git a/components/sync_driver/user_selectable_sync_type.h b/components/sync_driver/user_selectable_sync_type.h
new file mode 100644
index 0000000..77e87df
--- /dev/null
+++ b/components/sync_driver/user_selectable_sync_type.h
@@ -0,0 +1,66 @@
+// Copyright 2014 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.
+
+#ifndef COMPONENTS_SYNC_DRIVER_USER_SELECTABLE_SYNC_TYPE_H_
+#define COMPONENTS_SYNC_DRIVER_USER_SELECTABLE_SYNC_TYPE_H_
+
+namespace browser_sync {
+namespace user_selectable_type {
+
+// An enumeration of the sync datatypes that are explicitly exposed to the user
+// via checkboxes in the "Advanced Sync Preferences" dialog. Used solely for the
+// purposes of UMA histogram logging of the datatypes explicitly selected by
+// users when sync is configured on a machine. This is a subset of the sync
+// types listed in sync/internal_api/public/base/model_type.h.
+//
+// Note: New sync datatypes must be added to the end of this list. Adding them
+// anywhere else will result in incorrect histogram logging.
+
+// THIS ENUM IS MEANT SOLELY FOR THE PURPOSE OF HISTOGRAM LOGGING. IF YOU ARE
+// LOOKING TO MODIFY SYNC FUNCTIONALITY AND NEED A LIST OF SYNC TYPES, USE
+// syncer::ModelType.
+
+enum UserSelectableSyncType {
+ BOOKMARKS = 0,
+ PREFERENCES = 1,
+ PASSWORDS = 2,
+ AUTOFILL = 3,
+ THEMES = 4,
+ TYPED_URLS = 5,
+ EXTENSIONS = 6,
+ PROXY_TABS = 7,
+ APPS = 8,
+ // TODO(petewil): There was talk of removing this from user selectable sync
+ // types. Should we?
+ SYNCED_NOTIFICATIONS = 9,
+
+ // The datatypes below are implicitly synced, and are not exposed via user
+ // selectable checkboxes.
+
+ // AUTOFILL_PROFILE,
+ // NIGORI,
+ // DICTIONARY
+ // SEARCH_ENGINES,
+ // APP_LIST,
+ // APP_SETTINGS,
+ // EXTENSION_SETTINGS,
+ // APP_NOTIFICATIONS,
+ // DEVICE_INFO,
+ // EXPERIMENTS,
+ // PRIORITY_PREFERENCES,
+ // SESSIONS,
+ // HISTORY_DELETE_DIRECTIVES,
+ // FAVICON_IMAGES,
+ // FAVICON_TRACKING,
+ // ARTICLE,
+ // SYNCED_NOTIFICATION_APP_INFO
+
+ // Number of sync datatypes exposed to the user via checboxes in the UI.
+ SELECTABLE_DATATYPE_COUNT = 10,
+};
+
+} // namespace user_selectable_type
+} // namespace browser_sync
+
+#endif // COMPONENTS_SYNC_DRIVER_USER_SELECTABLE_SYNC_TYPE_H_