// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Sync protocol datatype extension for custom search engines.
// If you change or add any fields in this file, update proto_visitors.h and
// potentially proto_enum_conversions.{h, cc}.
// Fields that are not used anymore should be marked [deprecated = true].
syntax = "proto2";
option java_multiple_files = true;
option java_package = "org.chromium.components.sync.protocol";
option optimize_for = LITE_RUNTIME;
package sync_pb;
// Properties of custom search engine sync objects.
message SearchEngineSpecifics {
// The description of the search engine.
optional string short_name = 1;
// The search engine keyword for omnibox access.
optional string keyword = 2;
// A URL to the favicon to show in the search engines options page.
optional string favicon_url = 3;
// The actual parameterized search engine query URL.
optional string url = 4;
// A flag signifying whether it is safe to automatically modify this search
// engine entry or not.
optional bool safe_for_autoreplace = 5;
// The URL to the OSD file this search engine entry came from.
optional string originating_url = 6;
// The date this search engine entry was created. A UTC timestamp with units
// in microseconds.
optional int64 date_created = 7;
// A list of supported input encodings.
optional string input_encodings = 8;
// Obsolete field. This used to represent whether or not this entry is shown
// in the list of default search engines.
optional bool deprecated_show_in_default_list = 9 [deprecated = true];
// The parameterized URL that provides suggestions as the user types.
optional string suggestions_url = 10;
// The ID associated with the prepopulate data this search engine comes from.
// Set to zero if it was not prepopulated.
optional int32 prepopulate_id = 11;
// DEPRECATED: Whether to autogenerate a keyword for the search engine or not.
// Do not write to this field in the future. We preserve this for now so we
// can read the field in order to migrate existing data that sets this bit.
optional bool autogenerate_keyword = 12 [deprecated = true];
// ID 13 reserved - previously used by |logo_id|, now deprecated.
optional string instant_url = 15 [deprecated = true];
// ID 16 reserved - previously used by |id|, now deprecated.
// The last time this entry was modified by a user. A UTC timestamp with units
// in microseconds.
optional int64 last_modified = 17;
// The primary identifier of this search engine entry for Sync.
optional string sync_guid = 18;
// A list of URL patterns that can be used, in addition to |url|, to extract
// search terms from a URL.
repeated string alternate_urls = 19;
optional string search_terms_replacement_key = 20 [deprecated = true];
// The parameterized URL that provides image results according to the image
// content or image URL provided by user.
optional string image_url = 21;
// The following post_params are comma-separated lists used to specify the
// post parameters for the corresponding search URL.
optional string search_url_post_params = 22;
optional string suggestions_url_post_params = 23;
optional string instant_url_post_params = 24 [deprecated = true];
optional string image_url_post_params = 25;
// The parameterized URL for a search provider specified new tab page.
optional string new_tab_url = 26;
enum ActiveStatus {
// The default state when a SE is auto-added. Unspecified SE are inactive.
ACTIVE_STATUS_UNSPECIFIED = 0;
// The SE is active and can be triggered via the omnibox.
ACTIVE_STATUS_TRUE = 1;
// The SE has been manually set to inactive by the user.
ACTIVE_STATUS_FALSE = 2;
}
// Whether a search engine is 'active' and can be triggered via the omnibox by
// typing in the relevant keyword.
optional ActiveStatus is_active = 27;
// The ID associated with the starter pack engine. This is set to 0 if not a
// starter pack engine.
optional int32 starter_pack_id = 28;
reserved 14;
reserved "created_by_policy";
}