| // Copyright 2016 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.ui.policy; |
| |
| using fuchsia.ui.gfx; |
| using fuchsia.ui.viewsv1token; |
| |
| // The Presenter service provides a way for applications to ask that a |
| // specified view be added to a view tree, leaving any window management |
| // concerns up to the discretion of the presenter implementation. |
| // |
| // TODO(SCN-599): this will be replaced by Presenter2 |
| [Discoverable] |
| interface Presenter { |
| 1: Present2(handle<eventpair> view_owner_token, request<Presentation>? presentation_request); |
| |
| // Sets new default renderer params and forces them on for the duration of the |
| // presenter's lifetime. Only applies to any subsequent calls to Present(). |
| // Used for testing. |
| 2: HACK_SetRendererParams(bool enable_clipping, vector<fuchsia.ui.gfx.RendererParam> params); |
| |
| // Set the input path. Root presenter will send to ViewManager (legacy) or Scenic. |
| 3: HACK_SetInputPath(bool use_legacy); |
| |
| // Query the input path. Return true if ViewManager receives input. |
| 4: HACK_QueryInputPath() -> (bool use_legacy); |
| }; |
| |
| // The Presenter service provides a way for applications to ask that a |
| // specified view be added to a view tree, leaving any window management |
| // concerns up to the discretion of the presenter implementation. |
| // |
| // TODO(SCN-595): this is the new presenter interface, which will be renamed |
| // to Presenter after the original is deleted. |
| [Discoverable] |
| interface Presenter2 { |
| // Usage: the client creates a pair of eventpairs and uses one to create a |
| // View in their Scenic session. The other eventpair is passed to this |
| // method as |view_holder_token|; the Presenter2 service will use this to |
| // create a ViewHolder which is embedded within an appropriate Scenic scene, |
| // such that the client View it will receive input events, etc. |
| 1: PresentView(handle<eventpair> view_holder_token, request<Presentation>? presentation_request); |
| }; |