<div dir="ltr">(I forgot to mention in the above message that I was looking at the unstable version)</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Aug 8, 2022 at 1:54 PM samuel ammonius <<a href="mailto:sfammonius@gmail.com">sfammonius@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi Daniel,</div><div><br></div><div>I've just looked at the xdg-shell protocol as you said. I was really surprised at the</div><div>amount of features it had, but one part in particular caught my eye:</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><pre lang="xml"><span id="gmail-m_6037094990481317568gmail-LC435" lang="xml">    <span><<span>request</span> <span>name</span>=<span>"set_window_geometry"</span>></span></span>
<span id="gmail-m_6037094990481317568gmail-LC436" lang="xml">      <span><<span>description</span> <span>summary</span>=<span>"set the new window geometry"</span>></span></span>
<span id="gmail-m_6037094990481317568gmail-LC437" lang="xml"> The window geometry of a surface is its "visible bounds" from the</span>
<span id="gmail-m_6037094990481317568gmail-LC438" lang="xml"> user's perspective. Client-side decorations often have invisible</span>
<span id="gmail-m_6037094990481317568gmail-LC439" lang="xml"> portions like drop-shadows which should be ignored for the</span>
<span id="gmail-m_6037094990481317568gmail-LC440" lang="xml"> purposes of aligning, placing and constraining windows.</span>
<span id="gmail-m_6037094990481317568gmail-LC441" lang="xml"></span>
<span id="gmail-m_6037094990481317568gmail-LC442" lang="xml"> The window geometry is double buffered, and will be applied at the</span>
<span id="gmail-m_6037094990481317568gmail-LC443" lang="xml"> time wl_surface.commit of the corresponding wl_surface is called.</span>
<span id="gmail-m_6037094990481317568gmail-LC444" lang="xml"></span>
<span id="gmail-m_6037094990481317568gmail-LC445" lang="xml"> Once the window geometry of the surface is set, it is not possible to</span>
<span id="gmail-m_6037094990481317568gmail-LC446" lang="xml"> unset it, and it will remain the same until set_window_geometry is</span>
<span id="gmail-m_6037094990481317568gmail-LC447" lang="xml"> called again, even if a new subsurface or buffer is attached.</span>
<span id="gmail-m_6037094990481317568gmail-LC448" lang="xml"></span>
<span id="gmail-m_6037094990481317568gmail-LC449" lang="xml"> If never set, the value is the full bounds of the surface,</span>
<span id="gmail-m_6037094990481317568gmail-LC450" lang="xml"> including any subsurfaces. This updates dynamically on every</span>
<span id="gmail-m_6037094990481317568gmail-LC451" lang="xml"> commit. This unset is meant for extremely simple clients.</span>
<span id="gmail-m_6037094990481317568gmail-LC452" lang="xml"></span>
<span id="gmail-m_6037094990481317568gmail-LC453" lang="xml"> The arguments are given in the surface-local coordinate space of</span>
<span id="gmail-m_6037094990481317568gmail-LC454" lang="xml"> the wl_surface associated with this xdg_surface.</span>
<span id="gmail-m_6037094990481317568gmail-LC455" lang="xml"></span>
<span id="gmail-m_6037094990481317568gmail-LC456" lang="xml"> The width and height must be greater than zero. Setting an invalid size</span>
<span id="gmail-m_6037094990481317568gmail-LC457" lang="xml"> will raise an error. When applied, the effective window geometry will be</span>
<span id="gmail-m_6037094990481317568gmail-LC458" lang="xml"> the set window geometry clamped to the bounding rectangle of the</span>
<span id="gmail-m_6037094990481317568gmail-LC459" lang="xml"> combined geometry of the surface of the xdg_surface and the associated</span>
<span id="gmail-m_6037094990481317568gmail-LC460" lang="xml"> subsurfaces.</span>
<span id="gmail-m_6037094990481317568gmail-LC461" lang="xml">      <span></<span>description</span>></span></span>
<b><span id="gmail-m_6037094990481317568gmail-LC462" lang="xml">      <span><<span>arg</span> <span>name</span>=<span>"x"</span> <span>type</span>=<span>"int"</span>/>       <-----------------------------------------------</span></span>
<span id="gmail-m_6037094990481317568gmail-LC463" lang="xml">      <span><<span>arg</span> <span>name</span>=<span>"y"</span> <span>type</span>=<span>"int"</span>/>       <-----------------------------------------------</span></span></b>
<span id="gmail-m_6037094990481317568gmail-LC464" lang="xml">      <span><<span>arg</span> <span>name</span>=<span>"width"</span> <span>type</span>=<span>"int"</span>/></span></span>
<span id="gmail-m_6037094990481317568gmail-LC465" lang="xml">      <span><<span>arg</span> <span>name</span>=<span>"height"</span> <span>type</span>=<span>"int"</span>/></span></span>
<span id="gmail-m_6037094990481317568gmail-LC466" lang="xml">    <span></<span>request</span>></span></span></pre></blockquote><div>Doesn't this mean that Wayland already supports this? </div></div>
</blockquote></div>