Crate libwmctl

Source
Expand description

libwmctl implements a subset of 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 use cases separate from wmctl.

Modules§

prelude
All essential symbols in a simple consumable form

Structs§

AtomCollection
AtomCollectionCookie
Border
Border provides a simple way to store border values
Info
Info provides information about the window manager and its environment.
Property
Property provides a convenient way to store window properties
Rect
Rect provides a simple way to store the width and height of an area
Window
Window provides a higer level interfacefor manipulating windows.

Enums§

ErrorWrapper
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.
Gravity
Gravity When windows are resized, subwindows may be repositioned automatically relative to some position in the window. This attraction of a subwindow to some part of its parent is known as window gravity.
Kind
Kind provides an easy way to identify the different window types
MapState
MapState provides an easy way to identify the differnt window map values
Position
Position 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.
Shape
Shape provides a number of pre-defined shapes to manipulate the window into, taking into account borders and taskbars automatically.
State
State provides an easy way to identify the different window states
WmCtlError
WmCtlError defines all the internal errors that libwmctl might return

Constants§

MOVE_RESIZE_WINDOW_HEIGHT
MOVE_RESIZE_WINDOW_WIDTH
MOVE_RESIZE_WINDOW_X
MOVE_RESIZE_WINDOW_Y
WINDOW_STATE_ACTION_ADD
WINDOW_STATE_ACTION_REMOVE

Functions§

active
Get the active window
first_by_class
Get the first window that matches the given class
info
Get window manager informational properties
window
Get the window by id
windows
Get all the windows the window manager is managing and their essential properties

Type Aliases§

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