pub struct Environment {
    pub manager: GlobalManager,
    pub compositor: Proxy<WlCompositor>,
    pub subcompositor: Proxy<WlSubcompositor>,
    pub shell: Shell,
    pub shm: Proxy<WlShm>,
    pub data_device_manager: Proxy<WlDataDeviceManager>,
    pub outputs: OutputMgr,
    pub decorations_mgr: Option<Proxy<ZxdgDecorationManagerV1>>,
    /* private fields */
}
Expand description

A convenience for global management

This type provides convenience utilities for writing wayland client apps, by auto-binding a large portion of the global objects you’ll likely need to write your app. This is mostly provided as a mean to factor a consequent amount of dumb, redundant code.

Fields§

§manager: GlobalManager

The underlying GlobalManager wrapping your registry

§compositor: Proxy<WlCompositor>

The compositor global, used to create surfaces

§subcompositor: Proxy<WlSubcompositor>

The subcompositor global, used to create subsurfaces

§shell: Shell

The shell global, used make your surfaces into windows

This tries to bind using the xdg_shell protocol, and fallbacks to wl_shell if it fails

§shm: Proxy<WlShm>

The SHM global, to create shared memory buffers

§data_device_manager: Proxy<WlDataDeviceManager>

The data device manager, used to handle drag&drop and selection copy/paste

§outputs: OutputMgr

A manager for handling the advertised outputs

§decorations_mgr: Option<Proxy<ZxdgDecorationManagerV1>>

The decoration manager, if the server supports server-side decorations

Implementations§

Create an environment wrapping a new registry

It requires you to provide the EventQueue as well because the initialization process does a few roundtrip to the server to initialize all the globals.

Create an environment wrapping a new registry

Additionally to from_display, this allows you to provide a callback to be notified of global events, just like GlobalManager::new_with_cb. Note that you will still receive events even if they are processed by this Environment.

Retrieve the accepted SHM formats of the server

Create a new dpi aware surface

The provided callback will be fired whenever the DPI factor associated to it changes.

The DPI factor associated to a surface is defined as the maximum of the DPI factors of the outputs it is displayed on.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.