OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012 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 apps. | |
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 "extension_specifics.proto"; | |
18 | |
19 // Settings related to push notifications for apps. | |
20 message AppNotificationSettings { | |
21 // DEPRECATED: Use oauth_client_id below. | |
22 // Whether or not the user has setup notifications at least once. | |
23 // The value for this field will start out false and will be set | |
24 // to true when the user accepts receiving notifications for the | |
25 // first time and then it will always remain true. | |
26 optional bool initial_setup_done = 1; | |
27 | |
28 // Whether or not the user has disabled notifications. | |
29 optional bool disabled = 2; | |
30 | |
31 // OAuth2 client id to which the user granted the notification permission. | |
32 // This field will start out empty. | |
33 // It will be set when the user accepts receiving notifications. | |
34 // This field is used when the user revokes the notifications permission. | |
35 // Note that it is never cleared after it was set once. Hence, the presence | |
36 // of this field can be used to determine if the user has setup notifications | |
37 // at least once for the given app. | |
38 optional string oauth_client_id = 3; | |
39 } | |
40 | |
41 // Information about a linked app icon. | |
42 message LinkedAppIconInfo { | |
43 // The URL of the app icon. | |
44 optional string url = 1; | |
45 | |
46 // The size of the app icon in DIPs. | |
47 optional uint32 size = 2; | |
48 } | |
49 | |
50 // Properties of app sync objects. | |
51 // | |
52 // For now, an app is just an extension. We keep the two data types | |
53 // separate for future-proofing purposes. | |
54 message AppSpecifics { | |
55 // Extension data. | |
56 optional ExtensionSpecifics extension = 1; | |
57 | |
58 // Notification settings. | |
59 optional AppNotificationSettings notification_settings = 2; | |
60 | |
61 // This controls where on a page this application icon will appear. | |
62 optional string app_launch_ordinal = 3; | |
63 | |
64 // This specifics which page the application icon will appear on in the NTP. | |
65 // This values only provide the order within the application pages, not within | |
66 // all of the panels in the NTP. | |
67 optional string page_ordinal = 4; | |
68 | |
69 // The possible launch types for an app. | |
70 // This enum should be kept in sync with extensions::LaunchType. | |
71 enum LaunchType { | |
72 PINNED = 0; | |
73 REGULAR = 1; | |
74 FULLSCREEN = 2; | |
75 WINDOW = 3; | |
76 } | |
77 | |
78 // This describes how the extension should be launched. | |
79 optional LaunchType launch_type = 5; | |
80 | |
81 // This is the url of a bookmark app. If this exists, the app is a bookmark | |
82 // app. | |
83 optional string bookmark_app_url = 6; | |
84 | |
85 // This is the description of a bookmark app. | |
86 optional string bookmark_app_description = 7; | |
87 | |
88 // This is the color to use when generating bookmark app icons. The string is | |
89 // in #rrggbb or #rgb syntax, e.g. #d8d8d8. | |
90 optional string bookmark_app_icon_color = 8; | |
91 | |
92 // This is information about linked icons (that is, icons that are downloaded | |
93 // from outside the app's bundle of files. | |
94 repeated LinkedAppIconInfo linked_app_icons = 9; | |
95 } | |
OLD | NEW |