Re: Pending 1.2 stuff
- From: Matthias Clasen <maclas gmx de>
- To: wm-spec-list gnome org
- Subject: Re: Pending 1.2 stuff
- Date: 09 Aug 2002 23:44:13 +0200
How silly...here is the patch.
--- wm-spec.sgml.orig Tue Jun 11 23:27:52 2002
+++ wm-spec.sgml Fri Aug 9 00:55:45 2002
@@ -166,7 +166,7 @@
desktop. Unmapped windows should be placed in IconicState, according to
the ICCCM. Windows which are actually iconified or minimized
should have the _NET_WM_STATE_HIDDEN property set, to
-communicate to pagers that the window should not be represented as
+communicate to Pagers that the window should not be represented as
"onscreen."
</para>
</sect3>
@@ -232,7 +232,6 @@
<listitem><para>Other IPC mechanisms like ICE or Corba.</para></listitem>
<listitem><para>Window Manager configuration.</para></listitem>
<listitem><para>Window Manager documentation.</para></listitem>
-<listitem><para>Geometry between desktops.</para></listitem>
<listitem><para>Clients appearing on a proper subset of desktops.</para></listitem>
<listitem><para>Window-in-window MDI.</para></listitem>
</itemizedlist>
@@ -340,7 +339,7 @@
]]></programlisting>
<para>
Array of pairs of cardinals that define the top left corner of each desktops
-viewport. For window managers that don't support large desktops, this MUST
+viewport. For Window Managers that don't support large desktops, this MUST
always be set to (0,0).
</para>
<para>
@@ -401,7 +400,7 @@
<para>
The window ID of the currently active window or None if no window has the focus.
This is a read-only property set by the
-window manager. If a client (for example, a taskbar) wants to activate
+Window Manager. If a client (for example, a taskbar) wants to activate
another window, it MUST send a _NET_ACTIVE_WINDOW client message to the root
window:
</para>
@@ -425,7 +424,7 @@
Work area SHOULD be used by desktop applications to place desktop icons appropriately.
</para>
<para>
- The window manager SHOULD calculate this space by taking the current page minus space occupied by dock and panel windows, as indicated by the <link linkend="NETWMSTRUT">_NET_WM_STRUT</link> property set on client windows.
+ The Window Manager SHOULD calculate this space by taking the current page minus space occupied by dock and panel windows, as indicated by the <link linkend="NETWMSTRUT">_NET_WM_STRUT</link> property set on client windows.
</para>
</sect2>
<sect2>
@@ -441,12 +440,12 @@
have the _NET_WM_NAME property set to the name of the Window Manager.
</para>
<para>
-Rationale: The child window is used to distinguish an active window manager
+Rationale: The child window is used to distinguish an active Window Manager
from a stale _NET_SUPPORTING_WM_CHECK
property that happens to point to another window. If the
_NET_SUPPORTING_WM_CHECK window on the client window is missing
or not properly set, clients SHOULD assume that no conforming
- window manager is present.
+ Window Manager is present.
</para>
</sect2>
<sect2>
@@ -463,6 +462,100 @@
windows.
</para>
</sect2>
+ <sect2>
+ <title>_NET_DESKTOP_LAYOUT</title>
+ <programlisting><![CDATA[
+_NET_DESKTOP_LAYOUT, CARDINAL[3]/32
+]]>
+ #define _NET_WM_ORIENTATION_HORZ 0
+ #define _NET_WM_ORIENTATION_VERT 1
+</programlisting>
+ <para>
+ <emphasis>This property is set by a Pager, not by the Window
+ Manager.</emphasis>
+ When setting this property, the Pager must own a manager selection (as
+ defined in the ICCCM 2.8). The manager selection is called
+ <literal>_NET_DESKTOP_LAYOUT_Sn</literal> where
+ <literal>n</literal> is the screen number. The purpose of
+ this property is to allow the Window Manager to know the desktop
+ layout displayed by the Pager.
+ </para>
+ <para>
+ <literal>_NET_DESKTOP_LAYOUT</literal> describes the layout of virtual
+ desktops relative to each other. More specifically, it describes the layout
+ used by the owner of the manager selection. The Window Manager may use
+ this layout information or may choose to ignore it.
+ The property contains three values: the Pager orientation, the number of
+ desktops in the X direction, and the number in the Y direction.
+ </para>
+ <para>
+ The virtual desktops are arranged in a rectangle
+ with X rows and Y columns. If X times Y does not match the total number of
+ desktops as specified by
+ <literal>_NET_NUMBER_OF_DESKTOPS</literal>, the highest-numbered
+ workspaces are assumed to be nonexistent. Either X or Y (but not
+ both) may be specified as 0 in which case its actual value will be
+ derived from <literal>_NET_NUMBER_OF_DESKTOPS</literal>.
+ </para>
+ <para>
+ When the orientation is <literal>_NET_WM_ORIENTATION_HORZ</literal> (integer
+ value 0) the layout for X=4 and Y=3 looks like this:
+<programlisting>
+ +--+--+--+--+
+ | 0| 1| 2| 3|
+ +--+--+--+--+
+ | 4| 5| 6| 7|
+ +--+--+--+--+
+ | 8| 9|10|11|
+ +--+--+--+--+
+</programlisting>
+ </para>
+ <para>
+
+ When the orientation is <literal>_NET_WM_ORIENTATION_VERT</literal>
+ (integer value 1) the layout for X=4 and Y=3 looks like:
+
+<programlisting>
+ +--+--+--+--+
+ | 0| 3| 6| 9|
+ +--+--+--+--+
+ | 1| 4| 7|10|
+ +--+--+--+--+
+ | 2| 5| 8|11|
+ +--+--+--+--+
+</programlisting>
+ </para>
+ <para>
+ The numbers here are the desktop numbers, as for
+ <literal>_NET_CURRENT_DESKTOP</literal>.
+ </para>
+ </sect2>
+
+ <sect2><title>_NET_SHOWING_DESKTOP</title>
+ <programlisting><![CDATA[
+_NET_SHOWING_DESKTOP desktop, CARDINAL/32
+]]></programlisting>
+ <para>
+ Some Window Managers have a "showing the desktop" mode in which windows
+ are hidden, and the desktop background is displayed and focused. If a
+ Window Manager supports the _NET_SHOWING_DESKTOP hint, it MUST set it
+ to a value of 1 if the Window Manager is in "showing the desktop" mode,
+ and a value of zero if the Window Manager is not in this mode.
+ </para>
+ <para>
+ If a Pager wants to enter or leave the mode, it MUST
+ send a _NET_SHOWING_DESKTOP client message to the root window
+ requesting the change:
+ <programlisting><![CDATA[
+_NET_SHOWING_DESKTOP
+ message_type = _NET_SHOWING_DESKTOP
+ format = 32
+ data.l[0] = boolean 0 or 1
+]]></programlisting>
+ The Window Manager may choose to ignore this client message.
+ </para>
+ </sect2>
+
</sect1>
<sect1>
<title>Other Root Window Messages</title>
@@ -485,7 +578,7 @@
The Window Manager MUST then attempt to close the window specified.
</para>
<para>
- Rationale: A window manager might be more clever than the usual method (send WM_DELETE message if the protocol is selected, XKillClient otherwise). It might introduce a timeout, for example. Instead of duplicating the code, the Window Manager can easily do the job.
+ Rationale: A Window Manager might be more clever than the usual method (send WM_DELETE message if the protocol is selected, XKillClient otherwise). It might introduce a timeout, for example. Instead of duplicating the code, the Window Manager can easily do the job.
</para>
</sect2><sect2><title>_NET_WM_MOVERESIZE</title>
<programlisting><![CDATA[
@@ -737,6 +830,7 @@
_NET_WM_STATE_SKIP_PAGER, ATOM
_NET_WM_STATE_HIDDEN, ATOM
_NET_WM_STATE_FULLSCREEN, ATOM
+_NET_WM_STATE_FLOATING, ATOM
]]></programlisting>
<para>
An implementation MAY add new atoms to this list. Implementations
@@ -771,9 +865,9 @@
</para>
<para>
_NET_WM_STATE_SKIP_PAGER indicates that the window should not be
-included on a pager. This hint should be requested by the application,
+included on a Pager. This hint should be requested by the application,
i.e. it indicates that the window by nature is never in the
-pager. Applications should not set this hint if _NET_WM_WINDOW_TYPE
+Pager. Applications should not set this hint if _NET_WM_WINDOW_TYPE
already conveys the exact nature of the window.
</para>
<para>
@@ -800,6 +894,14 @@
and have no window decorations. For example, a presentation program would use
this hint.
</para>
+ <para>
+_NET_WM_STATE_FLOATING indicates that the window should be on top of other
+windows of the same type. Applications should not set this hint
+if _NET_WM_WINDOW_TYPE already conveys the exact nature of the window.
+Windows in this state would typically appear above other windows of the same
+_NET_WM_WINDOW_TYPE.
+ </para>
+
<para>
To change the state of a mapped window, a Client MUST send a _NET_WM_STATE
client message to the root window (window is the respective window, type
@@ -831,7 +933,7 @@
present in the list indicate actions that are not supported for this window.
The window manager MUST keep this property updated to reflect the
actions which are currently "active" or "sensitive" for a window.
-Taskbars, pagers, and other tools use _NET_WM_ALLOWED_ACTIONS to
+Taskbars, Pagers, and other tools use _NET_WM_ALLOWED_ACTIONS to
decide which actions should be made available to the user.
</para>
<para>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]