Expand description

libwmctl implements the Extended Window Manager Hints (EWMH) specification as a way to integrate with EWMH compatible window managers. The EWHM spec builds on the lower level Inter Client Communication Conventions Manual (ICCCM) to define interactions between window managers, compositing managers and applications.

Root Window Properties
The EWMH spec defines a number of properties that EWHM compliant window managers will maintain and return to clients requesting information. libwmctl taps into the message queue to retrieve details about a given window and to than manipulate the given window as desired.

wmctl uses libwmctl with pre-defined shapes and positions to manipulate how a window should be shaped and positioned on the screen in an ergonomic way; however libwmctl could be used for a variety of reasons.

Modules

All essential symbols in a simple consumable form

Structs

Window option provides an ergonomic way to manipulate a window

Window Manager control implements the EWMH protocol using x11rb to provide a simplified access layer to EWHM compatible window managers.

Enums

ErrorWrapper provides wrapper around all the underlying library dependencys that libwmctl uses such that we can easily surface all errors from libwmctdl in a single easy way.

WinClass provides a easy way to identify the different window class types

WinGravity Gravity is defined as the lower byte of the move resize flags 32bit value https://tronche.com/gui/x/xlib/window/attributes/gravity.html

WinMap provides an easy way to identify the differnt window map values

WinPosition provides a number of pre-defined positions on the screen to quickly and easily move the window to taking into account borders and taskbars automatically.

WinShape provides a number of pre-defined shapes to manipulate the window into, taking into account borders and taskbars automatically.

WinState provides an easy way to identify the different window states

WinType provides an easy way to identify the different window types

WmCtlError defines all the internal errors that libwmctl might return

Functions

List out a x11 information including the window manager’s name, if there is a composite manager running and what the screen and work screen sizes are.

List out the windows the window manager is managing and their essential properties

Type Definitions

WmCtlResult<T> provides a simplified result type with a common error type