blob: 59c1b1866f711c5a6992645ec7d0d887bef80ea2 [file] [log] [blame]
// 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 sync_driver {
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 sync_driver
#endif // COMPONENTS_SYNC_DRIVER_USER_SELECTABLE_SYNC_TYPE_H_