#[non_exhaustive]pub enum Request<'a> {
Destroy,
CreateIcon {},
SetIcon {
toplevel: XdgToplevel,
icon: Option<XdgToplevelIconV1>,
},
}Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Destroy
destroy the toplevel icon manager
Destroy the toplevel icon manager. This does not destroy objects created with the manager.
This is a destructor, once sent this object cannot be used any longer.
CreateIcon
create a new icon instance
Creates a new icon object. This icon can then be attached to a xdg_toplevel via the ‘set_icon’ request.
SetIcon
set an icon on a toplevel window
This request assigns the icon ‘icon’ to ‘toplevel’, or clears the toplevel icon if ‘icon’ was null. This state is double-buffered and is applied on the next wl_surface.commit of the toplevel.
After making this call, the xdg_toplevel_icon_v1 provided as ‘icon’ can be destroyed by the client without ‘toplevel’ losing its icon. The xdg_toplevel_icon_v1 is immutable from this point, and any future attempts to change it must raise the ‘xdg_toplevel_icon_v1.immutable’ protocol error.
The compositor must set the toplevel icon from either the pixel data the icon provides, or by loading a stock icon using the icon name. See the description of ‘xdg_toplevel_icon_v1’ for details.
If ‘icon’ is set to null, the icon of the respective toplevel is reset to its default icon (usually the icon of the application, derived from its desktop-entry file, or a placeholder icon). If this request is passed an icon with no pixel buffers or icon name assigned, the icon must be reset just like if ‘icon’ was null.