Add _NET_WM_STATE_FOCUSED to _NET_WM_STATE
Rui Tiago Cação Matos <[email protected]> Thu, 27 Oct 2011 00:01:54 +0100
| Newsgroups | gmane.comp.gnome.wm-spec |
|---|---|
| Message-ID | <CACkMB-nTL_7V=ZOYEd-H-ZuswdjX=u7zUxtFWtv9X=2sLFqQVg@mail.gmail.com> |
Hi, I'm proposing that we add a new _NET_WM_STATE_FOCUSED hint to _NET_WM_STATE. The goal is to be able to do something like [1]. We decided not to use the existing _NET_ACTIVE_WINDOW property since it would mean that all clients would have to listen for changes on the root window properties and also because _NET_ACTIVE_WINDOW allows for at most one window while _NET_WM_STATE_FOCUSED can be set for any number windows. I'm attaching a patch against the 1.4.draft-2 xml file that I got from [2]. Comments are very welcome. Rui [1] http://gitorious.org/gnome-design/gnome-design/blobs/master/mockups/theming/unfocused-window.png [2] http://www.freedesktop.org/wiki/Specifications/wm-spec _______________________________________________ wm-spec-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/wm-spec-list
net-wm-state-focused.patch
(text/x-patch, 1.5 KB)
diff --git a/wm-spec-1.4.xml b/wm-spec-1.4.xml
index 98f9f9b..2518824 100644
--- a/wm-spec-1.4.xml
+++ b/wm-spec-1.4.xml
@@ -1117,6 +1117,7 @@ _NET_WM_STATE_FULLSCREEN, ATOM
_NET_WM_STATE_ABOVE, ATOM
_NET_WM_STATE_BELOW, ATOM
_NET_WM_STATE_DEMANDS_ATTENTION, ATOM
+_NET_WM_STATE_FOCUSED, ATOM
]]></programlisting>
<para>
An implementation MAY add new atoms to this list. Implementations
@@ -1207,6 +1208,17 @@ the window got the required attention (usually, that it got activated).
</para>
<para>
+_NET_WM_STATE_FOCUSED indicates that the window is being presented as
+focused. This is purely an hint about how the Window Manager visually displays
+the window, in particular it's unrelated to input. Clients MUST regard this as
+a read only hint which they can't change. The window given by
+_NET_ACTIVE_WINDOW will usually have this hint, but at times other windows may
+as well, if they have a strong association with the active window and will be
+considered as a unit with it by the user. This hint generally corresponds to
+whether window decorations are drawn in an active state.
+ </para>
+
+ <para>
To change the state of a mapped window, a Client MUST send a _NET_WM_STATE
client message to the root window:
</para>
@@ -2267,6 +2279,9 @@ Added _NET_WM_FULL_PLACEMENT.
<listitem><para>
Added _NET_WM_FULLSCREEN_MONITORS.
</para></listitem>
+ <listitem><para>
+Added _NET_WM_STATE_FOCUSED.
+ </para></listitem>
</itemizedlist>
</sect2>
<sect2>