| // Copyright 2019 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| library fuchsia.term; |
| |
| using zx; |
| |
| const uint64 MAX_BUF = 900; |
| |
| /// Defines a protocol to read and write to a Pty terminal. |
| protocol Pty { |
| /// Event stream when command is closed. |
| -> OnClose(); |
| |
| /// Event stream when data is available. |
| -> OnRead(vector<uint8>:MAX_BUF data); |
| |
| /// Writes data. |
| Write(vector<uint8>:MAX_BUF data); |
| |
| /// Sets the window size. |
| SetWindowSize(uint32 columns, uint32 rows); |
| }; |
| |
| /// Defines a protocol to create Pty terminal. |
| [Discoverable] |
| protocol Term { |
| CreatePty(vector<string> commandArgs, request<Pty> request) -> (zx.status status); |
| }; |