Details
-
Task
-
Resolution: Done
-
Low
-
None
-
None
-
None
Description
Background
The current GDP UX experience could be improved. The suggestion is to provide the JLR DNA UI (we call it that because of the rotating helix on the home screen) on top of GDP. The JLR team has already ported some of the applications to GDP for AMM 14. We would like to move this further and make the DNA UI the standard GDP UI. The team made an analysis of the effort necessary:
- We need an application framework that will manage applications on the system level. This needs to include some sort API available on the application level that would expose services between applications, as well as some sort of sandboxing (that could be put off though). IIRC, there has been some discussion on the Genivi Projects lists discussing an application manager.
Task description
- We need to rewrite/refactor the existing GDP HMI applications. There are 4:
- GDP-HMI-Controller - this is the central app for displaying content on a given screen - it sets up layers, and surfaces, and assigns the relevant applications to their associated layers. Currently layers and surface IDs are hard-coded. Controller would need to be refactored to listen to the application manager for available surface ids, and assign them to appropriate layers.
- GDP-HMI-Background - As near as I can tell, background exists to make sure the user doesn't see some surface that isn't up-to-date and hasn't been drawn over. This shouldn't need work, but
- GDP-HMI-Panel - This is the "bottom bar", that provides a "return to home" button. In our demo this year we're (working on) adding a volume control. This shouldn't need work, though we need to determine how we would handle this behavior when implementing the DNA UI.
- GDP-HMI-Launcher2 - This is the "Home screen" It displays current apps, and fires systemd calls to startup applications. With a properly implemented Application Manager, we should be able to display apps dynamically and have a generic launching mechanism.
- The individual DNA UI applications should be broken out into individual GDP Applications. This should be relatively quick as we have a good template for this that Tasha created modeled after existing GDP applications, and we've already done it twice for the radio and MediaManager.
Attachments
Issue Links
- relates to
-
HMIL-2 Qt Wayland Surface Id Generation
- To Do
-
HMIL-3 gdp-hmi-controller needs handle window surfaces and layers without fixed ids
- Done
-
HMIL-4 gdp-hmi-launcher needs to handle an arbitrary list of applications
- Done
-
HMIL-5 Update GDP demo applications to use new extensible launcher
- In Review