<div dir="ltr"><div>And as I explained on IRC, I don't want this in an initial dump. The motivation of this xdg_shell approach is to keep it small and land it now. We can add functionality later, but I'd rather not spend too much time in heated discussions on the list about client-side vs. server-side decorations.<br>
<br></div>If you write some code, on the other hand... :)<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Nov 14, 2013 at 1:44 PM, Axel Davy <span dir="ltr"><<a href="mailto:davy@clipper.ens.fr" target="_blank">davy@clipper.ens.fr</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
There has been some discussions on IRC about the possible support of<br>
decoration side negociation in xdg_shell.<br>
<br>
A client would have to support CSD if it uses xdg_shell.<br>
<br>
And I suggested the folowing mechanism:<br>
<br>
.when binding to xdg_shell,<br>
the client gets an event telling him the compositors's<br>
preferred mode between CSD and SSD.<br>
<br>
. When creating a surface, the client tells which he prefers between<br>
CSD and SSD<br>
<br>
. The client gets back an event to tell him what will be the decoration mode<br>
for the surface (the compositor can follow client choice, or enforce CSD or SSD).<br>
<br>
And I suggest too to be able to change that after creation (ie be able to<br>
send a new request to tell to the compositor the client wants to change of mode,<br>
and the client would get the back the same event than before, telling<br>
him what the compositor wants him to use).<br>
<br>
<br>
Axel Davy<br>
<br>
Le 07/11/2013 10:32, Rafael Antognolli a écrit :<div class="HOEnZb"><div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello all,<br>
<br>
Following is the same description as in my previous wrong email, but with the<br>
correct patch attached.<br>
<br>
I'm trying to summarize part of the discussion in this new patch, but it's not<br>
the final one.<br>
<br>
As far as I understood, the goal is to end up with something like this for<br>
keyboard focus:<br>
<br>
W = compositor<br>
A, Z = client surfaces<br>
<br>
Viewport change:<br>
W to Z: You are deactivated.<br>
W to A: You are activated.<br>
A to W: Do these things.<br>
<br>
So, I added "activated" and "deactivated" events, that the compositor can use<br>
to inform clients what they are. And there's a take_focus request that can be<br>
used by a client to ask for activation, but it's up to the compositor to<br>
decide.<br>
<br>
Regarding the surface fullscreen, maximized, etc, I added surface states as<br>
enum's, that can be set/unset, and events from the compositor to request that a<br>
given state should be set/unset.<br>
<br>
For those states that take parameters, I added separate requests for setting<br>
the parameters before setting the state. It should all take place after commit<br>
anyway, so that shouldn't matter much. Take a look at the docs and say what you<br>
think.<br>
<br>
I didn't change transient/popup surface types yet, but from what has been said<br>
in the ML thread, I think they also should be surface states now. Correct me if<br>
I'm wrong. Otherwise I'm going to send an updated version with those changes<br>
tomorrow.<br>
<br>
I also talked to jekstrand (I think) about stacking, will send an updated<br>
version with what I understood from that tomorrow. Should be simple.<br>
<br>
Any feedback is appreciated, and thank you guys for the input so far and the<br>
patience.<br>
<br>
<br>
Rafael Antognolli (1):<br>
   xdg_shell: Add a new shell protocol.<br>
<br>
  protocol/Makefile.am     |   2 +-<br>
  protocol/xdg-surface.xml | 381 ++++++++++++++++++++++++++++++<u></u>+++++++++++++++++<br>
  2 files changed, 382 insertions(+), 1 deletion(-)<br>
  create mode 100644 protocol/xdg-surface.xml<br>
<br>
</blockquote>
<br></div></div><div class="HOEnZb"><div class="h5">
______________________________<u></u>_________________<br>
wayland-devel mailing list<br>
<a href="mailto:wayland-devel@lists.freedesktop.org" target="_blank">wayland-devel@lists.<u></u>freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/wayland-devel" target="_blank">http://lists.freedesktop.org/<u></u>mailman/listinfo/wayland-devel</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>  Jasper<br>
</div>