fuchsia.ui.test.scene

Added: 9

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

NameType
payload ControllerAttachClientViewRequest

Response

NameType
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.

Added: 10

Request

NameType
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

NameType
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.

Added: 19

Request

<EMPTY>

Response

<EMPTY>

TABLES

ControllerAttachClientViewRequest resource

Defined in fuchsia.ui.test.scene/controller.fidl

OrdinalFieldTypeDescription
view_provider client_end:fuchsia.ui.app/ViewProvider

ControllerPresentClientViewRequest resource

Defined in fuchsia.ui.test.scene/controller.fidl

OrdinalFieldTypeDescription
viewport_creation_token fuchsia.ui.views/ViewportCreationToken
Added: 10