<div dir="ltr"><div>Thanks for the clarification.  Much appreciated.</div><div><br></div><div>I'm interested in implementing a sub-surface example.  Is a MR/PR of interest?</div><div><br></div><div>Thanks,</div><div>Joel<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Nov 1, 2022 at 1:53 AM Pekka Paalanen <<a href="mailto:ppaalanen@gmail.com">ppaalanen@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">On Mon, 31 Oct 2022 10:14:42 -0700<br>
Joel Winarske <<a href="mailto:joel.winarske@gmail.com" target="_blank">joel.winarske@gmail.com</a>> wrote:<br>
<br>
> Thank you for the enlightenment!<br>
> <br>
> Adding the ordered commit calls was the missing link.<br>
> <br>
> Do the commit calls need to happen based on the active Z-order, or based on<br>
> the order of surface creation?<br>
<br>
They need to be ordered by sub-surface relationships, i.e. what is the<br>
parent surface for a sub-surface.<br>
<br>
Z-order is completely irrelevant here. Also wl_surface creation order<br>
is irrelevant. What is relevant is what you set as the parent<br>
wl_surface in wl_subcompositor.get_subsurface request.<br>
<br>
You can create a sub-surface tree in any order by creating the<br>
wl_subsurface objects in any order. The relevant thing is the final<br>
parent surface <-> sub-surface association graph (actually a tree) when<br>
you start doing updates (commits) to the wl_surfaces.<br>
<br>
<br>
Thanks,<br>
pq<br>
</blockquote></div>