| // Copyright 2019 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 ash.mojom; |
| |
| import "mojo/public/mojom/base/unguessable_token.mojom"; |
| |
| // An interface that an ash user uses to interact with each ARC custom tab. |
| interface ArcCustomTabView { |
| // Embeds the remote view specified by the token. |
| EmbedUsingToken(mojo_base.mojom.UnguessableToken token); |
| }; |
| |
| // An exported object in ash which lets an ash consumer set a client interface. |
| interface ArcCustomTabController { |
| // Creates an ArcCustomTabView instance for the ARC window specified by the |
| // task ID and the surface ID. |
| // May return null when the arguments are invalid. |
| CreateView(int32 task_id, int32 surface_id, int32 top_margin) |
| => (ArcCustomTabView? controller); |
| }; |