#[non_exhaustive]pub enum Event<'a> {
Capabilities {
capabilities: Vec<u8>,
},
OutputEnter {
output: WlOutput,
},
OutputLeave {
output: WlOutput,
},
Workspace {
workspace: ZcosmicWorkspaceHandleV1,
},
Remove,
}
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Capabilities
compositor capabilities
This event advertises the capabilities supported by the compositor. If a capability isn’t supported, clients should hide or disable the UI elements that expose this functionality. For instance, if the compositor doesn’t advertise support for creating workspaces, a button triggering the create_workspace request should not be displayed.
The compositor will ignore requests it doesn’t support. For instance, a compositor which doesn’t advertise support for creating workspaces will ignore create_workspace requests.
Compositors must send this event once after creation of an zcosmic_workspace_group_handle_v1 . When the capabilities change, compositors must send this event again.
The capabilities are sent as an array of 32-bit unsigned integers in native endianness.
OutputEnter
output assigned to workspace group
This event is emitted whenever an output is assigned to the workspace group.
OutputLeave
output removed from workspace group
This event is emitted whenever an output is removed from the workspace group.
Workspace
workspace added to workspace group
This event is emitted whenever a new workspace has been created. A workspace can only be a member of a single workspace group and cannot be re-assigned.
All initial details of the workspace (name, coordinates, state) will be sent immediately after this event via the corresponding events in zcosmic_workspace_handle_v1.
Fields
workspace: ZcosmicWorkspaceHandleV1
Remove
this workspace group has been destroyed
This event means the zcosmic_workspace_group_handle_v1 has been destroyed. It is guaranteed there won’t be any more events for this zcosmic_workspace_group_handle_v1. The zext_workspace_group_handle_v1 becomes inert so any requests will be ignored except the destroy request.
The compositor must remove all workspaces belonging to a workspace group before removing the workspace group.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for Event<'a>
impl<'a> !RefUnwindSafe for Event<'a>
impl<'a> Send for Event<'a>
impl<'a> Sync for Event<'a>
impl<'a> Unpin for Event<'a>
impl<'a> !UnwindSafe for Event<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.