pub enum RegistryRequest {
RegisterScopedViewTreeWatcher {
context_view: u64,
watcher: ServerEnd<ViewTreeWatcherMarker>,
responder: RegistryRegisterScopedViewTreeWatcherResponder,
},
}
Expand description
*** ONLY FOR USE IN PLATFORM COMPONENTS *** This is a sensitive protocol. It provides unlimited visibility into any view tree, if handed the tree root’s view ref KOID. Hand it out ONLY to platform components, such as Accessibility Manager or UI Test Manager.
Regular UI clients uses should obtain observation protocols through a graphics factory function (see |fuchsia.ui.composition.ViewBoundProtocols|), which securely ties observation protocols to a specific view client.
Variants§
RegisterScopedViewTreeWatcher
Sets up a geometry ViewTreeWatcher
channel which reports the view tree
geometry for a specific view, identified by context_view
. The data
received describes the context_view
and its descendant views.
This method may be called multiple times to obtain multiple geometry
ViewTreeWatcher
s. Typical usage is to obtain just one geometry
ViewTreeWatcher
.
Client can freely disconnect this Registry
endpoint after this method
returns and the ViewTreeWatcher
endpoint will remain active.
Flow control. The caller is allowed at most one in-flight call at a time. Subsequent calls must wait until the acknowledgment returns. Non-compliance results in channel closure.
Client synchronization. The method response signifies that the server has processed the channel endpoint. A client can synchronize its next actions based on this guarantee (for example, trigger a change in view geometry without the change “getting lost”).
View lifecycle. The view represented by context_view
must first be
created. Otherwise, geometry
channel’s server endpoint is closed.
- request
context_view
a view’s identity, which serves as the root of a view tree - request
geometry
a channel to observecontext_view
’s view tree
- response acknowledgement that
geometry
is connected to the server
Fields
watcher: ServerEnd<ViewTreeWatcherMarker>
Implementations§
Source§impl RegistryRequest
impl RegistryRequest
pub fn into_register_scoped_view_tree_watcher( self, ) -> Option<(u64, ServerEnd<ViewTreeWatcherMarker>, RegistryRegisterScopedViewTreeWatcherResponder)>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL