This need to make a tree of transform inheritances is a good indication
that the subsurfaces will need to be done with a "parent" pointer, as I
proposed. A list does not contain this information and would prevent
recursive reuse of any subsurface code to make another subsurface.
It is not clear why the parent is part of the matrix rather than part of
the surface. Technically it is equivalent, but I suspect the parent is
going to be used for plenty of other operations that do not look at the
matrix.
I also still really really believe that there should be little to no
difference between these popup surfaces and subsurfaces. Really the only
difference is whether the shell can insert other surfaces between them.
Duplicating all this work for both popups and subsurfaces is wasteful.
As popup surfaces seem much further along, I think the best approach is
to modify them so they work as subsurfaces as well.
Pekka Paalanen wrote:
Implement the final bits needed to have inheritable surface
transformations:
- add 'parent' to weston_matrix_pointer, so that
weston_surface_update_transform() knows to update the parent surface
first
- add 'dirty_signal' to weston_surface, so that when the parent's
transformation gets dirtied, also the inheriting transformation can be
marked dirty
_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel