[PATCH weston 0/3] Support to display a surface on many layers

Ucan, Emre (ADITG/SW1) eucan at de.adit-jv.com
Tue Jun 7 09:40:14 UTC 2016

This patch series introduces ivi_layout_view data struct,
which is a wrapper of weston_view.

There is always only one ivi_layout_view for an
ivi_layout_surface and ivi_layout_layer pair.
A surface could have many views with different
geometry and transformations, so that a surface
can be shown on:
	1. On many screens
	2. On the same screen with different positions

The geometry of a view is modified, when properties of
its layer are changed through ivi_layout_interface.
Users of ivi_layout_interface does not have direct access
to ivi_layout_view structure.

The first patch removes the ivi_layout_get_weston_view API, because
it is not possible to map an ivi_layout_surface to a weston_view.
If someone wants to get a view of the weston_surface, it is possible to
get it from the view_list of the weston_surface.

The second patch introduces ivi_layout_view data structure, and modifies
ivi_layout_surface and ivi_layout_layer data structures accordingly.
Furthermore, the implementation of ivi_layout APIs are modified to
support to display a surface on many layers.

The third patch implements surface_on_many_layers test. This test is 
implemented to test the use-case and the correct behaviour
of get_layers_under_surface API.

Emre Ucan (3):
  ivi-shell: remove ivi_layout_get_weston_view
  ivi-shell: introduce ivi_layout_view
  ivi-shell: implement surface_on_many_layer test

 ivi-shell/ivi-layout-private.h |   26 +++-
 ivi-shell/ivi-layout-shell.h   |    3 -
 ivi-shell/ivi-layout.c         |  288 +++++++++++++++++++++++-----------------
 ivi-shell/ivi-shell.c          |    8 --
 tests/ivi-test.h               |    1 +
 tests/ivi_layout-test-plugin.c |   45 +++++++
 tests/ivi_layout-test.c        |    1 +
 7 files changed, 236 insertions(+), 136 deletions(-)


More information about the wayland-devel mailing list