| // 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.web; |
| |
| /// The debug service which allows to enable the DevTools service on Contexts. |
| [Discoverable] |
| protocol Debug { |
| /// Enables the DevTools service on every subsequent Context creation and |
| /// and delivers subsequent DevTools events to the supplied `listener`. |
| /// The callback indicates when the WebEngine is in a debuggable state. |
| /// Events will be sent to every `listener` registered with this method. |
| EnableDevTools(DevToolsListener listener) -> (); |
| }; |
| |
| /// Interface used to observe DevTools service availability events. |
| protocol DevToolsListener { |
| /// Called when the DevTools service is available on a new Context. |
| /// |
| /// `listener`: Channel over which DevTools events for the new Context will |
| /// be delivered. This channel will disconnect when the Context |
| /// is detroyed. |
| OnContextDevToolsAvailable(request<DevToolsPerContextListener> listener); |
| }; |
| |
| /// Interface supplied by the debugging component to observe the DevTools |
| /// service opening event. |
| protocol DevToolsPerContextListener { |
| /// Called when the DevTools service starts accepting TCP connections on |
| /// `port`. `port` will remain open until the Context is destroyed. |
| /// |
| /// `port`: The port used by the service. |
| OnHttpPortOpen(uint16 port); |
| }; |