| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| [DartPackage="mojo_services"] |
| module mojo; |
| |
| import "geometry/public/interfaces/geometry.mojom"; |
| |
| interface AxProvider { |
| GetTree() => (array<AxNode> nodes); |
| }; |
| |
| struct AxNode { |
| // Must be non-zero. |
| uint32 id; |
| |
| // Can be zero if the node has no parent or next sibling. |
| uint32 parent_id; |
| uint32 next_sibling_id; |
| |
| mojo.Rect bounds; |
| |
| // At most one of the below will be present. |
| // TODO(aa): These should become a union. |
| AxLink? link; |
| AxText? text; |
| }; |
| |
| struct AxLink { |
| string url; |
| }; |
| |
| struct AxText { |
| string content; |
| }; |