PROTOCOLS
Controller
Defined in fuchsia.ui.test.scene/controller.fidl
Controls a UI test scene. Allows a test to attach test Views to the scene and add View-related instrumentation.
AttachClientView
*** NOTE: ViewProvider
is no longer the preferred way for a parent
and child view to agree on a ViewportCreationToken / ViewCreationToken
pair. Flatland-based clients are encouraged to use PresentView
(below)
instead of AttachClientView
.
Elicits the server to request a view using the
fuchsia.ui.app.ViewProvider
handle provided, and attach it to the
scene.
RETURN VALUE
This method returns the KOID for the client view's ViewRef
.
SYNCHRONIZATION
This call returns as soon as the client ViewRef
is available. Note
that this signal does NOT necessarily indicate that the view has been
attached to the scene.
LIFE CYCLE
Clients may drop the Controller
connection once AttachClientView
has
returned.
Request
Name | Type |
---|---|
payload |
ControllerAttachClientViewRequest
|
Response
Name | Type |
---|---|
view_ref_koid |
zx/Koid
|
PresentClientView
Elicits the server to create a viewport using viewport_creation_token
.
LIFE CYCLE
Clients may drop the Controller
connection once PresentClientView
has
returned.
Request
Name | Type |
---|---|
payload |
ControllerPresentClientViewRequest
|
RegisterViewTreeWatcher
Registers a ViewTreeWatcher
on the client's behalf.
The ViewTreeWatcher
registered on behalf of the client will currently
be scoped globally; we intend to restrict the scope to the client view's
subtree as soon as it's feasible to do so.
For more information on geometry observation, see the documentation in //sdk/fidl/fuchsia.ui.observation.geometry/watcher.fidl.
Request
Name | Type |
---|---|
watcher |
server_end:fuchsia.ui.observation.geometry/ViewTreeWatcher
|
Response
<EMPTY>
WatchViewPresentation
A hanging get to watch for updates to view presentation.
Callers can use this method to wait until a ClientView
has
Present()
-ed through any of the following view presentation methods:
fuchsia.ui.test.scene.Controller/AttachClientView()
fuchsia.ui.test.scene.Controller/PresentClientView()
fuchsia.element.GraphicalPresenter/PresentView()
Callers should expect to call this method once for each view they expect to wait for.
Note that callers must take care when interleaving calls, since
this method has no way to
a) associate a Present()
with a specific ClientView
, or
b) associate a Present()
with an AttachClientView()
call, rather
than a PresentClientView()
or PresentView
call.
It is invalid to call WatchViewPresentation
while a previous call is
still pending; subsequent requests will be ignored.
Request
<EMPTY>
Response
<EMPTY>
TABLES
ControllerAttachClientViewRequest resource
Defined in fuchsia.ui.test.scene/controller.fidl
Ordinal | Field | Type | Description |
---|---|---|---|
1 |
view_provider |
client_end:fuchsia.ui.app/ViewProvider
|
ControllerPresentClientViewRequest resource
Defined in fuchsia.ui.test.scene/controller.fidl
Ordinal | Field | Type | Description |
---|---|---|---|
1 |
viewport_creation_token |
fuchsia.ui.views/ViewportCreationToken
|
Added: 10
|