summaryrefslogtreecommitdiffstats
path: root/wm-spec
diff options
context:
space:
mode:
authorPhilipp Knechtges <philipp-dev@knechtges.com>2011-11-20 13:09:18 +0100
committerOwen W. Taylor <otaylor@fishsoup.net>2011-12-13 14:16:55 -0500
commit6f007183616dd13dc7e1622985a99f3401a4b1f1 (patch)
tree838c5a9de31490f3b9e062565e08e38509130657 /wm-spec
parentde23b5bd0a9f9b7ba5c61f60ae395d2e529ce7ec (diff)
downloadxdg-specs-6f007183616dd13dc7e1622985a99f3401a4b1f1.tar.xz
Adding _NET_WM_OPAQUE_REGION
Adding a new property _NET_WM_OPAQUE_REGION that as the name says represents an area of the window that occludes the background. The implementation is the same as discussed in http://www.mail-archive.com/wm-spec-list@gnome.org/msg00715.html
Diffstat (limited to 'wm-spec')
-rw-r--r--wm-spec/wm-spec.xml28
1 files changed, 28 insertions, 0 deletions
diff --git a/wm-spec/wm-spec.xml b/wm-spec/wm-spec.xml
index f7676e4..87dc02d 100644
--- a/wm-spec/wm-spec.xml
+++ b/wm-spec/wm-spec.xml
@@ -1553,6 +1553,31 @@ window's frame. left, right, top and bottom are widths of the
respective borders added by the Window Manager.
</para>
</sect2>
+
+ <sect2><title>_NET_WM_OPAQUE_REGION</title>
+ <programlisting><![CDATA[
+_NET_WM_OPAQUE_REGION, x, y, width, height, CARDINAL[][4]/32
+]]></programlisting>
+ <para>
+The Client MAY set this property to a list of 4-tuples [x, y, width,
+height], each representing a rectangle in window coordinates where the
+pixels of the window's contents have a fully opaque alpha value. If
+the window is drawn by the compositor without adding any transparency,
+then such a rectangle will occlude whatever is drawn behind it. When
+the window has an RGB visual rather than an ARGB visual, this property
+is not typically useful, since the effective opaque region of a
+window is exactly the bounding region of the window as set via the
+shape extension. For windows with an ARGB visual and also a bounding
+region set via the shape extension, the effective opaque region is
+given by the intersection of the region set by this property and the
+bounding region set via the shape extension. The compositing manager
+MAY ignore this hint.
+ </para>
+ <para>
+Rationale: This gives the compositing manager more room for optimizations.
+For example, it can avoid drawing occluded portions behind the window.
+ </para>
+ </sect2>
</sect1>
<sect1>
<title>Window Manager Protocols</title>
@@ -2261,6 +2286,9 @@ OR OTHER DEALINGS IN THE SOFTWARE.
<listitem><para>
Added _NET_WM_STATE_FOCUSED.
</para></listitem>
+ <listitem><para>
+Added _NET_WM_OPAQUE_REGION
+ </para></listitem>
</itemizedlist>
</sect2>
<sect2>