Re: Add unredirect block / request hints
Adel Gadllah <[email protected]> Tue, 14 Feb 2012 14:32:46 +0100
| Newsgroups | gmane.comp.gnome.wm-spec |
|---|---|
| Message-ID | <CAD5qFUkwQtM4WSK4WoubHMt7zg36z2C5wjFHPmXUoCicmqgnTw@mail.gmail.com> |
Follow up from my last mail including a patch with the proposed hints.
Subject: [PATCH] Add _NET_WM_BYPASS_COMPOSITOR and
_NET_WM_DONT_BYPASS_COMPOSITOR
Add properties that allows client windows to hint the compositor that they
should or should never be unredirected.
---
wm-spec/wm-spec.xml | 35 +++++++++++++++++++++++++++++++++++
1 files changed, 35 insertions(+), 0 deletions(-)
diff --git a/wm-spec/wm-spec.xml b/wm-spec/wm-spec.xml
index 87dc02d..4698c16 100644
--- a/wm-spec/wm-spec.xml
+++ b/wm-spec/wm-spec.xml
@@ -1578,6 +1578,38 @@ Rationale: This gives the compositing manager
more room for optimizations.
For example, it can avoid drawing occluded portions behind the window.
</para>
</sect2>
+
+ <sect2><title>_NET_WM_BYPASS_COMPOSITOR</title>
+ <programlisting><![CDATA[
+_NET_WM_BYPASS_COMPOSITOR, ATOM
+]]></programlisting>
+ <para>
+The Client MAY set this property to hint the compositor that the window would
+benefit from not being redirected and therefor should be undredirected.
+The compositing manager MAY ignore this hint.
+ </para>
+ <para>
+Rationale: Some applications like fullscreen games might want to be
unredirected
+to avoid extra copies and thus perform better.
+ </para>
+ </sect2>
+
+ <sect2><title>_NET_WM_DONT_BYPASS_COMPOSITOR</title>
+ <programlisting><![CDATA[
+_NET_WM_DONT_BYPASS_COMPOSITOR, ATOM
+]]></programlisting>
+ <para>
+The Client MAY set this property to hint the compositor that the
window should not
+be unredirected by any heuristic.
+The compositing manager MAY ignore this hint.
+ </para>
+ <para>
+Rationale: Some windows might fall into a compositors unredirect heuristics for
+instance by being fullscreen but might not be performance ciritical or don't
+benefit or even being hurt from being unredirected due to other reasons.
+ </para>
+ </sect2>
+
</sect1>
<sect1>
<title>Window Manager Protocols</title>
@@ -2283,6 +2315,9 @@ OR OTHER DEALINGS IN THE SOFTWARE.
<sect2>
<title>Changes since 1.4draft</title>
<itemizedlist>
+ <listitem><para>
+Added _NET_WM_BYPASS_COMPOSITOR and _NET_WM_DONT_BYPASS_COMPOSITOR.
+ </para></listitem>
<listitem><para>
Added _NET_WM_STATE_FOCUSED.
</para></listitem>
--
1.7.7.6