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.
		
		
		
		
			
				
					80 lines
				
				3.1 KiB
			
		
		
			
		
	
	
					80 lines
				
				3.1 KiB
			| 
											11 years ago
										 | 	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 protocal; 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
 |