User Tools

Site Tools


agl-distro:demo-apps:home-screen

Home Screen Demo Application for AGL Distribution

Overview

We are developing the Best Freakin' Home Screen Ever for release with version 1 of the AGL distribution.

This project is covered by Jira issue SPEC-24 and its substasks.

Requirements

Requirements for the Home Screen application are based on the 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 here.

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

  • Opt.2: create a new shell for AGL

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


Weston ivi-shell Software Block Diagram

From https://github.com/Tarnyko/weston-ivi-shell/blob/weston150_ivi-shell_v6/README.md

Code

TBD

agl-distro/demo-apps/home-screen.txt · Last modified: 2015/08/20 20:39 by wminer