Home | History | Annotate | Download | only in protocol
      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 // Sync protocol datatype extension for themes.
      6 
      7 // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change
      8 // any fields in this file.
      9 
     10 syntax = "proto2";
     11 
     12 option optimize_for = LITE_RUNTIME;
     13 option retain_unknown_fields = true;
     14 
     15 package sync_pb;
     16 
     17 import "sync.proto";
     18 
     19 // Properties of theme sync objects.
     20 message ThemeSpecifics {
     21   // If set, we're using a custom theme and all custom_* fields should be
     22   // present.  If not set, we use the default or system theme (see below)
     23   // and all custom_* fields should be omitted.
     24   optional bool use_custom_theme = 1;
     25   // This field is only set (i.e., not cleared) on platforms that have
     26   // a distinction between the system theme and the default theme, but
     27   // other platforms must be careful to pass through the set state (not
     28   // just the value) of this flag.
     29   //
     30   // If true, we use the system theme by default (i.e., when we don't use
     31   // a custom theme) for platforms that make a distinction between the
     32   // default theme and the system theme.  Has no effect if use_custom_theme
     33   // is set.
     34   optional bool use_system_theme_by_default = 2;
     35 
     36   // Custom-theme-specific fields.
     37   optional string custom_theme_name = 3;
     38   optional string custom_theme_id = 4;
     39   optional string custom_theme_update_url = 5;
     40 }
     41 
     42 extend EntitySpecifics {
     43   optional ThemeSpecifics theme = 41210;
     44 }
     45