class ControllerCreator

Defined at line 763 of file fidling/gen/sdk/fidl/fuchsia.input.virtualkeyboard/fuchsia.input.virtualkeyboard/hlcpp/fuchsia/input/virtualkeyboard/cpp/fidl.h

Provides the ability to acquire a `Controller`.

This protocol exists to bind `Controller`s to `View`s (via `ViewRef`s).

The binding allows the keyboard subsystem to use its knowledge of `View`

focus to limit when a `Controller` can influence virtual keyboard

configuration.

Note that the `Controller` itself allows configuration of the virtual

keyboard's presentation (visibility and layout), but does not pertain

to text events. See the `Controller` documentation for details.

# Roles

This protocol will typically be:

* Implemented by platform components which control UI policy.

* Consumed by application runtimes. For example, Flutter, Chromium.

Public Members

static const char[] Name_

Public Methods

void ~ControllerCreator ()
void Create (::fuchsia::ui::views::ViewRef view_ref, ::fuchsia::input::virtualkeyboard::TextType text_type, ::fidl::InterfaceRequest< ::fuchsia::input::virtualkeyboard::Controller> controller_request)

Requests that the `Controller` at the other end of the

`server_end:Controller` channel be associated with the `View`

referenced by `view_ref`.

When `Controller.RequestShow()` is called, the `Controller`

implementer will will attempt to provide a keyboard optimized

for the entry of `text_type` (unless the type is overridden by a

call to `Controller.SetType()`).

Implementers of `ControllerCreator` _should_ use knowledge of

the associated `View`'s focus state to apply access controls to

calls made on `Controller`. See documentation of the `Controller`

methods for further details.

Consumers of `ControllerCreator` may freely drop their Creator

connection, without affecting their Controller(s).