mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-28 16:26:10 +03:00
58 lines
1.6 KiB
Plaintext
58 lines
1.6 KiB
Plaintext
// Copyright 2018 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.
|
|
|
|
module ax.mojom;
|
|
|
|
import "mojo/public/mojom/base/string16.mojom";
|
|
import "ui/gfx/geometry/mojo/geometry.mojom";
|
|
import "ui/gfx/range/mojo/range.mojom";
|
|
import "url/mojom/url.mojom";
|
|
|
|
// Tree structure for assistant. The tree is represented as a flat array of
|
|
// nodes, each containing a children_indices vector that points to its child
|
|
// nodes. The purpose is to work around max depth restriction of recursive
|
|
// data structure in mojo.
|
|
struct AssistantTree {
|
|
array<AssistantNode> nodes;
|
|
};
|
|
|
|
// Represents view structure to be passed to assistant. The view structure is
|
|
// synthesized from the AXNode.
|
|
struct AssistantNode {
|
|
array<int32> children_indices;
|
|
|
|
// Geometry of the view in pixels
|
|
gfx.mojom.Rect rect;
|
|
|
|
// Text of the view.
|
|
mojo_base.mojom.String16 text;
|
|
|
|
// Text properties
|
|
float text_size;
|
|
uint32 color;
|
|
uint32 bgcolor;
|
|
bool bold;
|
|
bool italic;
|
|
bool underline;
|
|
bool line_through;
|
|
|
|
// Selected portion of the text.
|
|
gfx.mojom.Range? selection;
|
|
|
|
// Fake Android view class name of the element. Each node is assigned
|
|
// a closest approximation of Android's views to keep the server happy.
|
|
string class_name;
|
|
|
|
// Accessibility functionality of the node inferred from DOM or based on HTML
|
|
// role attribute.
|
|
string? role;
|
|
};
|
|
|
|
// Additional information to current context.
|
|
struct AssistantExtra {
|
|
url.mojom.Url url;
|
|
gfx.mojom.Rect bounds_pixel;
|
|
mojo_base.mojom.String16 title;
|
|
};
|