Comment 1 for bug 260875

Revision history for this message
Michael B. Trausch (mtrausch) wrote : Invalid (with rationale)

  status invalid
  done

The hidden option asks the window manager to toggle the
_NET_WM_STATE_HIDDEN attribute of a window, however the Extended
Window Manager Hints specification from freedesktop.org states:

  _NET_WM_STATE_HIDDEN should be set by the Window Manager to indicate
  that a window would not be visible on the screen if its
  desktop/viewport were active and its coordinates were within the
  screen bounds. The canonical example is that minimized windows should
  be in the _NET_WM_STATE_HIDDEN state. Pagers and similar applications
  should use _NET_WM_STATE_HIDDEN instead of WM_STATE to decide whether
  to display a window in miniature representations of the windows on a
  desktop.

  Implementation note: if an Application asks to toggle
  _NET_WM_STATE_HIDDEN the Window Manager should probably just ignore
  the request, since _NET_WM_STATE_HIDDEN is a function of some other
  aspect of the window such as minimization, rather than an independent
  state.

Keep in mind that the property that you submit with -r / -b sends a
request to the window manager to change the _NET_WM_STATE_<property>
property of the window. This is an arbitrary property, presumably so
that it continues to work when the specifications change or are
extended. There is no option in the specification to request
minimization of the window, which means that it is outside of wmctrl's
ability to control it; for additional information, refer to the
Extended Window Manager Hints specification, Applicatoin Windows
Properties, _NET_WM_STATE:

  http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html#id2507241

The mention of minimization on the -h states that it is an example of
an action that a window manager may permit. Should the EWMH standard
be extended to include a _NET_WM_STATE_MINIMIZED or something similar,
it will be controllable from wmctrl; until then, a lower-level,
possibly WM-specific API will need to be used, though that would
require further study by the person who wants to do such a thing.

--
My sigfile ran away and is on hiatus.