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.geometry/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>

TABLES

ControllerAttachClientViewRequest resource

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

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

ControllerPresentClientViewRequest 资源

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

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