Matthias/All:

The whole _NET_WM_USER_TIME thing is a continuing problem for 
accessibility, as it now stands.  In an assistive technology setting, 
there isn't always an X event that corresponds to the "user action" 
which results in a new window being posted or focus changing.  Since X 
doesn't allow us to get a meaningful answer to "what's the current 
timestamp", we have serious problems when trying to interact with 
windows via non-X-device-based user requests.

We really need a solution for this!

Best regards,

Bill

Matthias Clasen wrote:

>Since there seem to be no further comments on this,
>here is a patch to add _NET_WM_USER_TIME_WINDOW to the EWMH.
>
>I have probably lost my fd.o commit powers since I last did
>an EWMH edit, so I can just put the patch here and ask for
>somebody else to commit it.
>
>Matthias
>
>
>
>  
>
>------------------------------------------------------------------------
>
>--- wm-spec.xml.orig   2006-09-26 00:45:58.000000000 -0400
>+++ wm-spec.xml        2006-09-26 00:53:13.000000000 -0400
>@@ -1,7 +1,7 @@
> <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
> "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"; [
>-<!ENTITY version "Draft version 1.4.draft-1">
>-<!ENTITY date "May 13, 2005">
>+<!ENTITY version "Draft version 1.4.draft-2">
>+<!ENTITY date "September 26, 2006">
> ]>
> <article id="index">
> <articleinfo>
>@@ -1470,7 +1470,8 @@
> window took place.
>         </para>
>         <para>
>-Clients should set this property on every new toplevel window, before mapping
>+Clients should set this property on every new toplevel window (or on the 
>window 
>+pointed out by the _NET_WM_USER_TIME_WINDOW property), before mapping
> the window, to the timestamp of the user interaction that caused the window to
> appear.  A client that only deals with core events, might, for example, use 
> the
> timestamp of the last KeyPress or ButtonPress event. ButtonRelease and
>@@ -1498,8 +1499,29 @@
> event.
>         </para>
>     </sect2>
>+
>+      <sect2><title>_NET_WM_USER_TIME_WINDOW</title>
>+      <programlisting><![CDATA[  
>+_NET_WM_USER_TIME_WINDOW WINDOW/32
>+]]></programlisting>
>+        <para>
>+This property contains the XID of a window on which the client sets
>+the _NET_WM_USER_TIME property. Clients should check whether the 
>+window manager supports _NET_WM_USER_TIME_WINDOW and fall back to 
>+setting the _NET_WM_USER_TIME property on the toplevel window if it 
>+doesn't. 
>+        </para>
>+        <para>
>+Rationale: Storing the frequently changing _NET_WM_USER_TIME property
>+on the toplevel window itself causes every application that is   
>+interested in any of the properties of that window to be woken up   
>+on every keypress, which is particularly bad for laptops running on 
>+battery power.
>+        </para>
>+      </sect2>
>+
>       <sect2><title>_NET_FRAME_EXTENTS</title>
>-      <programlisting><![CDATA[
>+      <programlisting><![CDATA[  
> _NET_FRAME_EXTENTS, left, right, top, bottom, CARDINAL[4]/32
> ]]></programlisting>
>       <para>
>@@ -2136,6 +2158,9 @@
>                       <listitem><para>
> Added note WM_TRANSIENT_FOR for override-redirect windows
>                       </para></listitem>
>+                      <listitem><para>
>+Added _NET_WM_USER_TIME_WINDOW.
>+                      </para></listitem>
>               </itemizedlist>
>             </sect2>
>           <sect2>
>  
>
>------------------------------------------------------------------------
>
>_______________________________________________
>wm-spec-list mailing list
>wm-spec-list@gnome.org
>http://mail.gnome.org/mailman/listinfo/wm-spec-list
>  
>

_______________________________________________
wm-spec-list mailing list
wm-spec-list@gnome.org
http://mail.gnome.org/mailman/listinfo/wm-spec-list

Reply via email to