pub enum ScenicRequest {
CreateSession {
session: ServerEnd<SessionMarker>,
listener: Option<ClientEnd<SessionListenerMarker>>,
control_handle: ScenicControlHandle,
},
CreateSession2 {
session: ServerEnd<SessionMarker>,
listener: Option<ClientEnd<SessionListenerMarker>>,
view_focuser: Option<ServerEnd<FocuserMarker>>,
control_handle: ScenicControlHandle,
},
CreateSessionT {
endpoints: SessionEndpoints,
responder: ScenicCreateSessionTResponder,
},
GetDisplayInfo {
responder: ScenicGetDisplayInfoResponder,
},
GetDisplayOwnershipEvent {
responder: ScenicGetDisplayOwnershipEventResponder,
},
TakeScreenshot {
responder: ScenicTakeScreenshotResponder,
},
UsesFlatland {
responder: ScenicUsesFlatlandResponder,
},
}
Variants§
CreateSession
Create a new Session, which is the primary way to interact with Scenic.
Fields
session: ServerEnd<SessionMarker>
listener: Option<ClientEnd<SessionListenerMarker>>
control_handle: ScenicControlHandle
CreateSession2
Create a new Session, which is the primary way to interact with Scenic.
In this variant, the caller may register a request for focus management.
The view_focuser
’s client is coupled to the requested session
, and
this coupling acts as a security boundary: the ViewRef used as the basis
for authority by view_focuser
must come from session
.
Fields
session: ServerEnd<SessionMarker>
listener: Option<ClientEnd<SessionListenerMarker>>
control_handle: ScenicControlHandle
CreateSessionT
Create a new Session, which is the primary way to interact with Scenic.
In this variant, the caller may submit a combination of protocols that make sense for it. The Session protocol is the only required protocol. The SessionEndpoints table may be extended with more protocol fields, but these extensions should retain ABI and API compatibility with existing (pre-compiled) clients.
The response acknowledges the request to create a Session, but actual creation may happen later.
GetDisplayInfo
Get information about the Scenic’s primary display.
Fields
responder: ScenicGetDisplayInfoResponder
GetDisplayOwnershipEvent
Gets an event signaled with displayOwnedSignal or displayNotOwnedSignal when display ownership changes.
Fields
responder: ScenicGetDisplayOwnershipEventResponder
TakeScreenshot
Take a screenshot and return the data in img_data
. img_data
will
not contain BGRA data if success
is false.
Fields
responder: ScenicTakeScreenshotResponder
UsesFlatland
Returns whether the clients should use [fuchsia.ui.composition/Flatland
] protocol to
interact with Scenic instead.
Fields
responder: ScenicUsesFlatlandResponder
Implementations§
Source§impl ScenicRequest
impl ScenicRequest
pub fn into_create_session( self, ) -> Option<(ServerEnd<SessionMarker>, Option<ClientEnd<SessionListenerMarker>>, ScenicControlHandle)>
pub fn into_create_session2( self, ) -> Option<(ServerEnd<SessionMarker>, Option<ClientEnd<SessionListenerMarker>>, Option<ServerEnd<FocuserMarker>>, ScenicControlHandle)>
pub fn into_create_session_t( self, ) -> Option<(SessionEndpoints, ScenicCreateSessionTResponder)>
pub fn into_get_display_info(self) -> Option<ScenicGetDisplayInfoResponder>
pub fn into_get_display_ownership_event( self, ) -> Option<ScenicGetDisplayOwnershipEventResponder>
pub fn into_take_screenshot(self) -> Option<ScenicTakeScreenshotResponder>
pub fn into_uses_flatland(self) -> Option<ScenicUsesFlatlandResponder>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL