You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
weston/ivi-shell
Alexandros Frantzis 27a51b83e5 libweston: Use struct timespec for touch up events 7 years ago
..
.gitignore ivi-shell: a reference of weston.ini for ivi-shell and ivi-hmi-controller. 10 years ago
README Spellcheck fixes 10 years ago
hmi-controller.c libweston: Use struct timespec for touch up events 7 years ago
input-panel-ivi.c libweston: introduce weston_output_from_resource() 8 years ago
ivi-layout-export.h ivi-shell: Fixed broken link to wiki page in ivi-layout header file 8 years ago
ivi-layout-private.h ivi-shell: describe members of type wl_list 8 years ago
ivi-layout-shell.h ivi-shell: remove ivi_layout_get_weston_view 9 years ago
ivi-layout-transition.c ivi-shell: describe members of type wl_list 8 years ago
ivi-layout.c ivi-shell: Fix incorrect use of logical instead of bitwise operator 7 years ago
ivi-shell.c libweston: Use struct timespec for touch down events 7 years ago
ivi-shell.h include stdint.h for int32_t/uint32_t 9 years ago
weston.ini.in hmi-controller: allocate background surfaces for multi-screen 9 years ago

README

	In-vehicle infotainment (information and entertainment)
graphical environment support modules for Weston


IVI-shell is an alternative shell for Weston, a Wayland display server.
Window management and application interaction with the display server
are very different to that of a normal desktop, which is why this is
a separate shell and not an extension to the desktop-shell suite with
xdg_shell. As such, applications need to be specifically written to use
IVI-shell.

IVI-shell contains two main features:
- Common layout library for surface, which allow ivi-shell developer
to develop own shell, linking Common layout library.
For the time being, the library refers Genivi ilm interface.

http://projects.genivi.org/wayland-ivi-extension/

- Extension protocol; ivi-application to tie wl_surface and a given ID.
With this ID, shell can identify which wl_surface is drawn by which
application. In in-vehicle infortainment system, a shell has to update
a property of a wl_surface. E.g. there may be a use case when vehicle
starts to move, the wl_surface drawn by Car navigation is expected to
move top of surfaces.

The actual software components delivered with Weston are:

- ivi-application.xml:
Wayland protocol extension for IVI-applications; the public
shell protocol (the same concept as xdg_shell).
Implemented by ivi-shell.so.

- ivi-shell.so:
A Weston shell module that implements ivi-application.xml interfaces.
Loads ivi-layout.so.

- ivi-layout.so:
Implements the IVI window management concepts: Screen, Layer,
Surface, groups of Layers, groups of Surfaces, see:
http://projects.genivi.org/ivi-layer-management/node/13
Offers a stable API for writing IVI-controller modules like
hmi-controller.so against the IVI concepts. In other words,
it offers an API to write IVI window manager modules.

- hmi-controller.so:
A sample implementation of an IVI-controller module, usually
replaced by IVI system vendors.
Uses ivi-layout.so to perform essentially window manager tasks.
This implementation keeps all window management inside the module,
while IVI-systems may use another module that exposes all window
management via Wayland or other protocol for an external process
to control:
http://git.projects.genivi.org/?p=wayland-ivi-extension.git;a=summary

- ivi-hmi-controller.xml:
Wayland protocol extension for IVI display control; the private
shell protocol for weston-ivi-shell-user-interface client
(the same concept as desktop-shell.xml).
Implemented by hmi-controller.so, and usually replaced by IVI
system vendors.

- weston-ivi-shell-user-interface:
A sample implementation of an IVI shell helper client, usually
replaced by IVI system vendors.
A helper client for basic display content, similar to
weston-desktop-shell.


How to compile:
same as weston. To disable, use option: --disable-ivi-shell for configure.

How to configure weston.ini:
reference ini file will be generated in <build_dir>/ivi-shell.

How to run:
same as weston. exec weston.

How to use UI:
http://lists.freedesktop.org/archives/wayland-devel/attachments/20140625/abbfc064/attachment-0001.png