class Manager
Defined at line 1028 of file fidling/gen/sdk/fidl/fuchsia.session.scene/fuchsia.session.scene/hlcpp/fuchsia/session/scene/cpp/fidl.h
A protocol used to manage the scene graph of the session.
This protocol is exposed by the `scene_manager` component. The `scene_manager`
component configures and constructs a scene graph in Scenic. A product may
use the `scene_manager` to reduce Scenic-related configuration code in their session.
Public Members
static const char[] Name_
Public Methods
void ~Manager ()
void SetRootView (::fidl::InterfaceHandle< ::fuchsia::ui::app::ViewProvider> view_provider, SetRootViewCallback callback)
Sets the root view of the scene graph to the view provided by `view_provider`.
Subsequent calls will replace the view tree with the one starting at the new root view.
The root view is shared between all clients of `Manager`.
Returns a `fuchsia.ui.views.ViewRef` referencing the view provided by `view_provider`.
If this ViewRef cannot be returned (e.g. in Flatland case, if the ViewCreationToken is
dropped before it is given to Scenic), then the connection to the `Manager` will be closed.
The client can expect that:
(1) Its root view will be focused once it's connected to the scene.
(2) The logical size and position of its root view match the display.
TODO(https://fxbug.dev/42055565): Fix this situation.
NOTE: the ViewRef is only returned after the child view is connected to the scene graph.
Therefore, the caller must guarantee that the child view will eventually be connected before
waiting for the ViewRef; if the child view doesn't connect, it is possible to deadlock.
void PresentRootViewLegacy (::fuchsia::ui::views::ViewHolderToken view_holder_token, ::fuchsia::ui::views::ViewRef view_ref, PresentRootViewLegacyCallback callback)
Presents a view tree to the display, via the provided view holder token.
This call will present the view using the legacy GFX API.
Subsequent calls will replace the view tree with the one starting at the new root viewport.
The root view is shared between all clients of `Manager`.
The client can expect that:
(1) Its root view will be focused once it's connected to the scene.
(2) The logical size and position of its root view match the display.
TODO(https://fxbug.dev/42055565): Fix this situation.
NOTE: this method returns only after the child view is connected to the scene graph.
Therefore, the caller must guarantee that the child view will eventually be connected before
waiting for the return; if the child view doesn't connect, it is possible to deadlock.
void PresentRootView (::fuchsia::ui::views::ViewportCreationToken viewport_creation_token, PresentRootViewCallback callback)
Presents a view tree to the display, via the provided viewport token.
Subsequent calls will replace the view tree with the one starting at the new root viewport.
The root view is shared between all clients of `Manager`.
The client can expect that:
(1) Its root view will be focused once it's connected to the scene.
(2) The logical size and position of its root view match the display.
TODO(https://fxbug.dev/42055565): Fix this situation.
NOTE: this method returns only after the child view is connected to the scene graph.
Therefore, the caller must guarantee that the child view will eventually be connected before
waiting for the return; if the child view doesn't connect, it is possible to deadlock.