• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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// Messages containing DOM data captured from the browser.
6// It includes the structure of the HTML document and Navigator data.
7
8syntax = "proto2";
9
10option optimize_for = LITE_RUNTIME;
11
12package userfeedback;
13
14// Data captured from HTMLDocument DOM object.
15message HtmlDocument {
16
17  // The value of document.URL property.
18  required string url = 1;
19
20  // The value of document.title property.
21  optional string title = 2;
22
23  // The value of document.documentElement property.
24  optional HtmlElement document_element = 3;
25};
26
27// Data captured from HTMLElement DOM object.
28message HtmlElement {
29
30  // The value of element.tagName property.
31  required string tag_name = 1;
32
33  // The value of element.id property.
34  optional string id = 2;
35
36  // The value of element.className property.
37  optional string class_name = 3;
38
39  // A list of child elements.
40  repeated HtmlElement child_element = 4;
41
42  // The value of frame.contentDocument property for FRAME and IFRAME elements.
43  optional HtmlDocument frame_content_document = 5;
44};
45
46// Data captured from DOM Navigator object.
47message Navigator {
48
49  // The value of 'navigator.appCodeName' property.
50  optional string app_code_name = 1;
51
52  // The value of 'navigator.appName' property.
53  optional string app_name = 2;
54
55  // The value of 'navigator.appVersion' property.
56  optional string app_version = 3;
57
58  // The value of 'navigator.appMinorVersion' property.
59  optional string app_minor_version = 4;
60
61  // The value of 'navigator.cookieEnabled' property.
62  optional bool cookie_enabled = 5;
63
64  // The value of 'navigator.cpuClass' property.
65  optional string cpu_class = 6;
66
67  // The value of 'navigator.onLine' property.
68  optional bool on_line = 7;
69
70  // The value of 'navigator.platform' property.
71  optional string platform = 8;
72
73  // The value of 'navigator.browserLanguage' property.
74  optional string browser_language = 9;
75
76  // The value of 'navigator.systemLanguage' property.
77  optional string system_language = 10;
78
79  // The value of 'navigator.userAgent' property.
80  optional string user_agent = 11;
81
82  // The return value of 'navigator.javaEnabled()' method.
83  optional bool java_enabled = 12;
84
85  // The return value of 'navigator.taintEnabled()' method.
86  optional bool taint_enabled = 13;
87
88  // Plugin names specified by 'navigator.plugins' property.
89  repeated string plugin_name = 14;
90};
91
92// A path in the HTML document between two elements, which are in the
93// ancestor-descendant relationship.
94message HtmlPath {
95
96  // Ordered list of zero-based indices.
97  // Empty path selects root element.
98  // Non-negative index N selects (N+1)-th child.
99  // Index -1 selects root element from frame content document.
100  repeated int32 index = 1;
101};
102