blob: c3c7b1c03b76a6e423a91b3f552c2de5a1aedfe2 [file] [log] [blame]
// 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);
};
// 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);
};