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
avoided so other windows do not cover them up.
Returns true if window is sticky across a particular environment (workspaces, viewports, or either), false otherwise.
Make the window sticky across some environment (workspaces, viewports, or both).
Make the window unsticky across some environment (workspaces, viewports or both).
window-sticky-p would report true for window, make
window unsticky for all environments. Otherwise make it sticky
for all environments.