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