Fuchsia.ui.test.scene

添加次数:9

协议

控制器

fuchsia.ui.test.scene/controller.fidl 中定义

控制界面测试场景。允许测试将测试 View 附加到场景,并添加与 View 相关的插桩。

AttachClientView

*** 注意:ViewProvider 不再是父视图和子视图就 ViewportCreationToken / ViewCreationToken 对达成一致时的首选方式。建议基于 Flatland 的客户端使用 PresentView(见下文),而不是 AttachClientView

诱使服务器使用提供的 fuchsia.ui.app.ViewProvider 句柄请求视图,并将其附加到场景。

转化价值

此方法会返回客户端视图的 ViewRef 的 KOID。

同步

当客户端 ViewRef 可用时,此调用会立即返回。请注意,此信号并不一定表示视图已附加到场景。

生命周期

AttachClientView 返回后,客户端可能会丢弃 Controller 连接。

请求

名称类型
payload ControllerAttachClientViewRequest

响应

名称类型
view_ref_koid zx/Koid

PresentClientView

请求服务器使用 viewport_creation_token 创建视口。

生命周期

PresentClientView 返回后,客户端可能会丢弃 Controller 连接。

添加数量:10

请求

名称类型
payload ControllerPresentClientViewRequest

RegisterViewTreeWatcher

代表客户端注册 ViewTreeWatcher

代表客户端注册的 ViewTreeWatcher 当前将在全局范围内限定作用域;我们打算在可行的情况下尽快将作用域限定为客户端视图的子树。

如需详细了解几何观察,请参阅 //sdk/fidl/fuchsia.ui.observation.传统几何图形/watcher.fidl 中的文档。

请求

名称类型
watcher server_end<fuchsia.ui.observation.geometry/ViewTreeWatcher>

响应

<EMPTY>

WatchViewPresentation

挂起来,查看最新动态,查看展示内容。

调用方可以使用此方法等待,直到 ClientView 通过以下任一视图呈现方法执行 Present() 操作:

  • fuchsia.ui.test.scene.Controller/AttachClientView()
  • fuchsia.ui.test.scene.Controller/PresentClientView()
  • fuchsia.element.GraphicalPresenter/PresentView()

调用方应该对他们预期等待的每个视图调用此方法一次。

请注意,调用方在交错调用时必须小心谨慎,因为此方法无法 a) 将 Present() 与特定 ClientView 相关联,或 b) 将 Present()AttachClientView() 调用(而不是 PresentClientView()PresentView 调用)相关联。

在之前的调用仍处于待处理状态时,调用 WatchViewPresentation 是无效的;后续请求将被忽略。

添加数量:19

请求

<EMPTY>

响应

<EMPTY>

ControllerAttachClientViewRequest 资源

fuchsia.ui.test.scene/controller.fidl 中定义

序数字段类型说明
view_provider fuchsia.ui.app/ViewProvider

ControllerPresentClientViewRequest 资源

fuchsia.ui.test.scene/controller.fidl 中定义

序数字段类型说明
viewport_creation_token fuchsia.ui.views/ViewportCreationToken
添加数量:10