OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 module mojo; | 5 module mojo; |
6 | 6 |
7 import "mojo/services/public/interfaces/geometry/geometry.mojom"; | 7 import "mojo/services/geometry/public/interfaces/geometry.mojom"; |
8 | 8 |
9 interface AxProvider { | 9 interface AxProvider { |
10 GetTree() => (array<AxNode> nodes); | 10 GetTree() => (array<AxNode> nodes); |
11 }; | 11 }; |
12 | 12 |
13 struct AxNode { | 13 struct AxNode { |
14 // Must be non-zero. | 14 // Must be non-zero. |
15 uint32 id; | 15 uint32 id; |
16 | 16 |
17 // Can be zero if the node has no parent or next sibling. | 17 // Can be zero if the node has no parent or next sibling. |
18 uint32 parent_id; | 18 uint32 parent_id; |
19 uint32 next_sibling_id; | 19 uint32 next_sibling_id; |
20 | 20 |
21 mojo.Rect bounds; | 21 mojo.Rect bounds; |
22 | 22 |
23 // At most one of the below will be present. | 23 // At most one of the below will be present. |
24 // TODO(aa): These should become a union. | 24 // TODO(aa): These should become a union. |
25 AxLink? link; | 25 AxLink? link; |
26 AxText? text; | 26 AxText? text; |
27 }; | 27 }; |
28 | 28 |
29 struct AxLink { | 29 struct AxLink { |
30 string url; | 30 string url; |
31 }; | 31 }; |
32 | 32 |
33 struct AxText { | 33 struct AxText { |
34 string content; | 34 string content; |
35 }; | 35 }; |
OLD | NEW |