Next: , Previous: Iconifying Windows, Up: Windows


8.12 Window Stickiness

Windows normally exist in a single workspace and a single viewport into that workspace. When changing workspace or viewport, the current windows disappear. This is sometimes not the correct policy; there are certain windows that should “follow” the user from window to window. These are typically windows that are not bound to a particular activity. The most common example is a dashboard window for calling other applications. Another example might be a diagnostic program such as a load monitory.

Each window has “stickiness” flags that govern this behavior. One flag controls stickiness across workspaces: sticky windows will appear in every workspace automatically. The other flag similarly governs stickiness across viewports. A window is “sticky” if either of these flags are set.

Sticky windows are often ignored, so they lack window decorations, and avoided so other windows do not cover them up.

— Function: window-sticky-p/workspace window
— Function: window-sticky-p/viewport window
— Function: window-sticky-p window

Returns true if window is sticky across a particular environment (workspaces, viewports, or either), false otherwise.

— Function: make-window-sticky/workspace window
— Function: make-window-sticky/viewport window
— Function: make-window-sticky window

Make the window sticky across some environment (workspaces, viewports, or both).

— Function: make-window-unsticky/workspace window
— Function: make-window-unsticky/viewport window
— Function: make-window-unsticky window

Make the window unsticky across some environment (workspaces, viewports or both).

— Function: toggle-window-sticky window

If window-sticky-p would report true for window, make window unsticky for all environments. Otherwise make it sticky for all environments.