User Tools

Site Tools


agl-distro:demo-apps:home-screen

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
agl-distro:demo-apps:home-screen [2015/08/20 01:49]
wminer
agl-distro:demo-apps:home-screen [2015/08/20 19:57]
wminer Add block diagram and shell options
Line 5: Line 5:
  
 ==== Requirements ==== ==== Requirements ====
-Requirements for the Home Screen application are based on the [[:​agl_specification|AGL Requirements Specification]]. The team pulled the requirements from the spec and determined which requirements are to be met during this development cycle (through the end 2015). That list of requirements is {{:​agl-distro:​demo-apps:​agl_spec_homescreen_rev01.pdf|here}}.+Requirements for the Home Screen application are based on the [[:​agl_specification|AGL Requirements Specification ​ver 1.0]].  
 + 
 +**//Summary of Home Screen Requirements//​** 
 +  * Customize GUI layout by each vehicle, grade, brand and so on. 
 +  * Display status notifications,​ pop-up window, system setting, software keyboard for ivi-use. 
 +  * Manage applications (menu screen, kick applications launcher, install applications) 
 +  * Switch applications ( application stack, last application) 
 + 
 +The team pulled the requirements from the spec and determined which requirements are to be met during this development cycle (through the end 2015). That list of requirements is {{:​agl-distro:​demo-apps:​agl_spec_homescreen_rev01.pdf|here}}.
  
 ==== Architecture ==== ==== Architecture ====
 +
 +**//​Comparing ivi-shell to desktop-shell//​**
 +
 +A shell consists of two components.
 +  * Plugin: provided as the weston plugin
 +  * Daemon: GUI for the system.
 +Weston provides two type of plugins.
 +  * desktop-shell:​ for PC use sample.
 +  * ivi-shell: for ivi use provided by GENIVI.
 +
 +|          ^ desktop-shell ​ ^ ivi-shell ​                 ^
 +^ Plug-in ​ | Standard APIs              | APIs for ivi-applications ​ |
 +^:::       | APIs for desktop creation ​ | APIs for HMI control daemon|
 +^:::       ​| ​                           | Layer control functions ​   |
 +^ daemon ​  | GUI Design ​                | GUI Design ​                |
 +^:::       | Application Launcher ​      | Application Launcher ​      |
 +^:::       ​| ​                           | Layout, layer definition ​  |
 +
 +**Tizen Wiki**([[https://​wiki.tizen.org/​wiki/​IVI-Shell]])\\
 +IVI-Shell does not support "​wl_shell"​ nor "​xdg-shell"​ (the "​desktop"​ shell protocols found in upstream Weston) but a totally different one, named "​ivi-application"​.
 +This means that standard Wayland clients cannot be displayed on IVI-Shell, unless they somehow use the IVI-Shell protocol. The package itself provides demo clients, but incompatible clients are more common.\\
 +
 +Which plugin should AGL homescreen use?
 +  * Opt.1: re-use ivi-shell
 +{{:​agl-distro:​demo-apps:​option1.png?​300|}}
 +
 +  * Opt.2: create a new shell for AGL
 +{{:​agl-distro:​demo-apps:​option2.png?​300|}}
 +
 +
 +|          ^ Pros                        ^ Cons                       ^
 +^ Option 1 | ivi-shell upstream already ​ | Standard API Support needs to be added        |
 +^:::       | Layer functionality available ​ | APIs for HMI control daemon ​               |
 +^ Option 2 | Standard API support available | Need to create new software ​               |
 +^:::       ​| ​                               | Layer functionality needs to be designed ​  |
 +
 +The team prefers to reuse ivi-shell (option 1) assuming the maintainer supports AGL changes. ​
 +  * Support standard APIs
 +  * Maintain and support AGL requirements
 +
 +----
 +
 +**//​Proposed Software Block Diagram//**
 +{{:​agl-distro:​demo-apps:​softwareblockdiagram_proposal_.png?​700 |}}
 +
 +
 +----
 +**//Weston ivi-shell Software Block Diagram//**
 +
 +{{ :​agl-distro:​demo-apps:​weston_ivi-shell_block_diagram.png?​700 |}}
 +
 +From [[https://​github.com/​Tarnyko/​weston-ivi-shell/​blob/​weston150_ivi-shell_v6/​README.md]]