staging/HomeScreen.git
7 years agoFix for not showing up HomeScreen during startup v0.6.4
Bocklage, Jens [Thu, 1 Dec 2016 11:51:44 +0000 (12:51 +0100)]
Fix for not showing up HomeScreen during startup

This is a hack, because the root cause is not known.
The HomeScreen GUI will be replaced by a QML implementation,
so this source code will be replaced completely soon.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoMerge "Add sample qml application"
Jens Bocklage [Wed, 30 Nov 2016 12:32:42 +0000 (12:32 +0000)]
Merge "Add sample qml application"

7 years agoAdd sample qml application 47/7347/1
Kazumasa Mitsunari [Wed, 30 Nov 2016 11:11:48 +0000 (20:11 +0900)]
Add sample qml application

It is sample application(HVAC).
This app is used for debuging, for reference of HomeScreen API use and so on.

Signed-off-by: Kazumasa Mitsunari <kazumasa_mitsunari_za@mail.toyota.co.jp>
7 years agoimprove AppInfo class 43/7343/1
Tasuku Suzuki [Wed, 30 Nov 2016 04:34:30 +0000 (13:34 +0900)]
improve AppInfo class

hide public member variables and introduce getters and setters for them.

Change-Id: I9108e94516238ef2ff8d4ea18db381d4e7e73bec
Signed-off-by: Tasuku Suzuki <tasuku.suzuki@qt.io>
7 years agoArrange the surface z-order in the layer v0.6.3
Bocklage, Jens [Fri, 25 Nov 2016 14:58:23 +0000 (15:58 +0100)]
Arrange the surface z-order in the layer

Using ilm_layerSetRenderOrder to set the order of the surfaces
inside the layer. This is neccessary to show the surfaces
on the screen.

Resolves: #SPEC-333

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoEnable automcatic startup of Homescreen app
Bocklage, Jens [Thu, 24 Nov 2016 13:02:04 +0000 (14:02 +0100)]
Enable automcatic startup of Homescreen app

HomeScreen and its depending apps are started by default using systemd
user session.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoUse 4 layer instead of 3
Bocklage, Jens [Wed, 23 Nov 2016 12:06:44 +0000 (13:06 +0100)]
Use 4 layer instead of 3

This fixes a typo where only three of the available four layers were
shown on the screen.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agofix typo 73/7273/1
Tasuku Suzuki [Tue, 22 Nov 2016 05:42:05 +0000 (14:42 +0900)]
fix typo

Change-Id: I11b6b535c2587c5e61dfb17c8cb56f2554e06c06
Signed-off-by: Tasuku Suzuki <tasuku.suzuki@qt.io>
7 years agoremove QMAKE_CLEAN += -r * from project files 65/7265/2
Tasuku Suzuki [Mon, 21 Nov 2016 08:34:51 +0000 (17:34 +0900)]
remove QMAKE_CLEAN += -r * from project files

use $ make distclean if you want to clean binaries and Makefile

Change-Id: I4f9af670c8625f48a0f9f77d31117d2a1a1cbb22
Signed-off-by: Tasuku Suzuki <tasuku.suzuki@qt.io>
7 years agocheck ivi-layermanagement-api availability 63/7263/3
Tasuku Suzuki [Mon, 21 Nov 2016 05:40:40 +0000 (14:40 +0900)]
check ivi-layermanagement-api availability

replace #ifdef __arm__ with a definition that comes from availability
test

Change-Id: Id9fa4baefcc9f38acd3e98d40054040fc69029c6
Signed-off-by: Tasuku Suzuki <tasuku.suzuki@qt.io>
7 years agocleanup project files 61/7261/2
Tasuku Suzuki [Mon, 21 Nov 2016 03:21:14 +0000 (12:21 +0900)]
cleanup project files

Change-Id: I4d605d97d050fb60e1fef749926cb1b92071782e
Signed-off-by: Tasuku Suzuki <tasuku.suzuki@qt.io>
7 years agointroduce interfaces.pri 59/7259/3
Tasuku Suzuki [Mon, 21 Nov 2016 03:04:19 +0000 (12:04 +0900)]
introduce interfaces.pri

Change-Id: I3649d5275b9da71feb216eb70c9d9fda73507d69
Signed-off-by: Tasuku Suzuki <tasuku.suzuki@qt.io>
7 years agoremove header files missing from project file 57/7257/2
Tasuku Suzuki [Mon, 21 Nov 2016 02:59:51 +0000 (11:59 +0900)]
remove header files missing from project file

Change-Id: I2e4234a20ebdb476cf65b51cefbcc9acff45faf4
Signed-off-by: Tasuku Suzuki <tasuku.suzuki@qt.io>
7 years agoSet surface source rectanglge on CONFIGURED event.
Bocklage, Jens [Thu, 17 Nov 2016 08:09:11 +0000 (09:09 +0100)]
Set surface source rectanglge on CONFIGURED event.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoAdd initial systemd service files.
Bocklage, Jens [Thu, 17 Nov 2016 02:34:24 +0000 (03:34 +0100)]
Add initial systemd service files.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoUse std::vector instead of std::list.
Bocklage, Jens [Wed, 16 Nov 2016 05:35:02 +0000 (06:35 +0100)]
Use std::vector instead of std::list.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoChange HomeScreen API function renderSurfaceToAreaAllowed to renderAppToAreaAllowed.
Bocklage, Jens [Wed, 16 Nov 2016 02:56:12 +0000 (03:56 +0100)]
Change HomeScreen API function renderSurfaceToAreaAllowed to renderAppToAreaAllowed.

Background is that an application wants to know if it is allowed to be rendered before it creates its own surface.
If it is not allowed, it does not need to allocate resources.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoAdd Nav and Media app to control bar. 20161111_preCESIntegrationWorkshop
Bocklage, Jens [Fri, 11 Nov 2016 17:38:49 +0000 (18:38 +0100)]
Add Nav and Media app to control bar.

Hardcoded:
nav: nav@0.1
media: media@0.1

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoAdd new layer WINDOWMANAGER_LAYER_HOMESCREEN_OVERLAY.
Bocklage, Jens [Fri, 11 Nov 2016 15:00:10 +0000 (16:00 +0100)]
Add new layer WINDOWMANAGER_LAYER_HOMESCREEN_OVERLAY.
Add new signal surfaceVisibilityChanged to homescreen and windowmanager API.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoAdd org.agl.homescreen function renderSurfaceToAreaAllowed.
Bocklage, Jens [Fri, 11 Nov 2016 09:49:52 +0000 (10:49 +0100)]
Add org.agl.homescreen function renderSurfaceToAreaAllowed.

This function can be used to request, if it is allowed to render a surface in a layout area in preparation of the real renderSurfaceToArea command. This call will not change anything, it is only a request.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoMerge branch 'master' of https://gerrit.automotivelinux.org/gerrit/p/staging/HomeScreen
Bocklage, Jens [Wed, 9 Nov 2016 17:33:51 +0000 (18:33 +0100)]
Merge branch 'master' of https://gerrit.automotivelinux.org/gerrit/p/staging/HomeScreen

7 years agoChanges to org.agl.homescreen interface
Bocklage, Jens [Wed, 9 Nov 2016 17:31:50 +0000 (18:31 +0100)]
Changes to org.agl.homescreen interface

Change parameter for renderSurfaceToArea.
Remove getLayoutRenderAreaForSurfaceId.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoChanges to org.agl.homescreen interface
Bocklage, Jens [Wed, 9 Nov 2016 17:31:50 +0000 (18:31 +0100)]
Changes to org.agl.homescreen interface
Change parameter for renderSurfaceToArea.
Remove getLayoutRenderAreaForSurfaceId.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoFix for AppInfo member initialization.
Bocklage, Jens [Wed, 9 Nov 2016 15:14:53 +0000 (16:14 +0100)]
Fix for AppInfo member initialization.
Only one Layout for CES2017 needed.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoPushed some versions to 0.6.0 97/7097/1 v0.6.0
Bocklage, Jens [Tue, 8 Nov 2016 19:08:33 +0000 (20:08 +0100)]
Pushed some versions to 0.6.0

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoTizen -> AGL 95/7095/1
Bocklage, Jens [Tue, 8 Nov 2016 19:04:17 +0000 (20:04 +0100)]
Tizen -> AGL

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoBinding to AGL framework 99/7099/1
José Bollo [Tue, 8 Nov 2016 18:43:40 +0000 (19:43 +0100)]
Binding to AGL framework

This replaces the binding to the Tizen Framework with
the binding to the AGL framework.

Change-Id: Ib7e1da60b9eb1754fd623e7a346c117a9ee11647
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
7 years ago-Make the SampleNav app yellow. 93/7093/1
Bocklage, Jens [Tue, 8 Nov 2016 18:46:21 +0000 (19:46 +0100)]
-Make the SampleNav app yellow.
-Preparation for the new ApplicationFramework binding. The App Framework provides more information.
--Adding afm D-Bus-interface introspection
--Updating the AppInfo datatype to hold the new data:
  The application info consists of:
  string id;
  string version;
  int width;
  int height;
  string name;
  string description;
  string shortname;
  string author;
  string iconPath;
-When pressing the AppLauncher Button or the Settings Button, the app layer is hidden.
--Therefore, shideLayer and showLayer is introduced in the WindowManager API
-If an application does not create its surface instantly, the HomeScreen retries to show the surface related to the pid.
-New WindowManager function deleteLayoutById
-Implement the complete HomeScreen API in the libhomescreen

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoRemove menus and toolbar. 91/7091/1
Bocklage, Jens [Mon, 7 Nov 2016 12:41:51 +0000 (13:41 +0100)]
Remove menus and toolbar.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoNew HomeScreen API calls getSurfaceStatus and getAllSurfacesOfProcess. 89/7089/1
Bocklage, Jens [Mon, 7 Nov 2016 12:40:36 +0000 (13:40 +0100)]
New HomeScreen API calls getSurfaceStatus and getAllSurfacesOfProcess.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoadd signal as proposed by IoT 87/7087/1
Bocklage, Jens [Mon, 7 Nov 2016 09:49:19 +0000 (10:49 +0100)]
add signal as proposed by IoT

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoavoiding reserved keywords
José Bollo [Fri, 4 Nov 2016 17:00:09 +0000 (18:00 +0100)]
avoiding reserved keywords

Change-Id: I2d5eb487b5dc5f494ce21c7d70bb5597bc18e12e
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
7 years agoadding the xml introspection of afm-user-daemon
José Bollo [Fri, 4 Nov 2016 16:45:33 +0000 (17:45 +0100)]
adding the xml introspection of afm-user-daemon

Change-Id: Ifa30ae67b383e99a190f9e0cd590ee8133bacf65
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
7 years agoAdd two sample apps just to have some Qt based applications that can be launched.
Bocklage, Jens [Fri, 4 Nov 2016 16:23:50 +0000 (17:23 +0100)]
Add two sample apps just to have some Qt based applications that can be launched.
Nav is Qt widget based.
Media is QML based.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoFix for pid and surface handling.
Bocklage, Jens [Fri, 4 Nov 2016 16:23:02 +0000 (17:23 +0100)]
Fix for pid and surface handling.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoNew concept of dynamically placing surfaces in static defined layout areas. v0.4.0
Bocklage, Jens [Thu, 3 Nov 2016 19:23:10 +0000 (20:23 +0100)]
New concept of dynamically placing surfaces in static defined layout areas.

This is useful if an application wants to render more than one surface.
By default, one surface is placed in one layout render area. With the new homescreen.xml
introspection, apps can place their surfaces as they wish (limited to the boundries
of the assigned layou render area!).

The functionality is not fully implemented, but the shared lib already provides the interface.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoHomeScreen main surface has to have the surface id 1000!
Bocklage, Jens [Thu, 3 Nov 2016 15:38:56 +0000 (16:38 +0100)]
HomeScreen main surface has to have the surface id 1000!
Use
QT_IVI_SURFACE_ID=1000 QT_WAYLAND_SHELL_INTEGRATION="ivi-shell" ./HomeScreen &
to launch HomeScreen.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoHomeScreen is now visible independent of the Layout set.
Bocklage, Jens [Thu, 3 Nov 2016 12:47:46 +0000 (13:47 +0100)]
HomeScreen is now visible independent of the Layout set.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoNew layer management in WindowManager. Three layers are created. One for the HomeScre...
Bocklage, Jens [Wed, 2 Nov 2016 15:23:58 +0000 (16:23 +0100)]
New layer management in WindowManager. Three layers are created. One for the HomeScreen, one for apps, one for popups.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoGenerate docbook file for the homescreen.xml introspection file.
Bocklage, Jens [Mon, 31 Oct 2016 11:23:51 +0000 (12:23 +0100)]
Generate docbook file for the homescreen.xml introspection file.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoIntroduces shared lib that provides the API of D-Bus org.agl.homescreen.
Bocklage, Jens [Mon, 31 Oct 2016 10:40:18 +0000 (11:40 +0100)]
Introduces shared lib that provides the API of D-Bus org.agl.homescreen.
Initial implementation to show the idea. Also availabale a sample app that uses the new lib. The lib uses the GNU D-Bus lib.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoImplement toggle full screen mechanism.
Bocklage, Jens [Wed, 26 Oct 2016 13:53:34 +0000 (15:53 +0200)]
Implement toggle full screen mechanism.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoAll apps print their app name and version on launch.
Bocklage, Jens [Wed, 26 Oct 2016 11:18:37 +0000 (13:18 +0200)]
All apps print their app name and version on launch.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoD-Bus name of AppFrameworkBinder is more common now.
Bocklage, Jens [Fri, 21 Oct 2016 13:43:09 +0000 (15:43 +0200)]
D-Bus name of AppFrameworkBinder is more common now.
Change way of launching apps in development environment.
Fix handling of launching more than three apps.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoRemove QSurfaceFormat
Bocklage, Jens [Fri, 21 Oct 2016 13:22:16 +0000 (15:22 +0200)]
Remove QSurfaceFormat

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoREADME cleanup
Bocklage, Jens [Fri, 21 Oct 2016 13:18:19 +0000 (15:18 +0200)]
README cleanup

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoWindowManager now handles application surfaces by its pids.
Bocklage, Jens [Tue, 18 Oct 2016 16:18:13 +0000 (18:18 +0200)]
WindowManager now handles application surfaces by its pids.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoAdd new command line test descriptions for the provided D-Bus interfaces.
Bocklage, Jens [Fri, 7 Oct 2016 10:02:01 +0000 (12:02 +0200)]
Add new command line test descriptions for the provided D-Bus interfaces.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoImplemented proximity interface. v0.3.1
Bocklage, Jens [Wed, 5 Oct 2016 14:25:19 +0000 (16:25 +0200)]
Implemented proximity interface.

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoMerge branch 'master' of https://gerrit.automotivelinux.org/gerrit/p/staging/HomeScreen v0.3.0
Bocklage, Jens [Fri, 30 Sep 2016 12:59:57 +0000 (14:59 +0200)]
Merge branch 'master' of https://gerrit.automotivelinux.org/gerrit/p/staging/HomeScreen

7 years agoImplementing app launch and app surface control workflow. Using WindowManager to...
Bocklage, Jens [Fri, 30 Sep 2016 12:31:09 +0000 (14:31 +0200)]
Implementing app launch and app surface control workflow. Using WindowManager to control layer and surfaces (ongoing).
Defining three layouts. Adding combobox selection feature to popup widget.

Known issue: IVI-shell is currently disabled in AGL due to issues (porting to Yocto 2.1.1).

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoImplementing app launch and app surface control workflow. Using WindowManager to...
Bocklage, Jens [Fri, 30 Sep 2016 12:31:09 +0000 (14:31 +0200)]
Implementing app launch and app surface control workflow. Using WindowManager to control layer and surfaces (ongoing).
Defining three layouts. Adding combobox selection feature to popup widget.

Known issue: IVI-shell is currently disabled in AGL due to issues (porting to Yocto 2.1.1).

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoUsing the Tizen application manager to receive information about installed apps and... 27/6327/1 v0.2.0
Bocklage, Jens [Fri, 5 Aug 2016 17:42:52 +0000 (19:42 +0200)]
Using the Tizen application manager to receive information about installed apps and to launch apps.
This acts as a template for other app framework adoptions.
Using the weston ivi shell to control surfaces.
Using the input event manager to dispatch hard key inputs.

This is a bigger update, so I increased the version number from 0.1.1 to 0.2.0.

Some parts are under development.

I created the components "WindowsManager" and "InputEventManager" because they are not defined in AGL right now.
As soon as they are defined, we should switch to them.

Find more information on the official wiki page:
https://wiki.automotivelinux.org/homescreen

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoSupport for color schemes v0.1.1
Bocklage, Jens [Wed, 6 Jul 2016 17:35:45 +0000 (19:35 +0200)]
Support for color schemes
- 3 demo color schemes included

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoAdd some command line tests for HomeScreen app as example
Bocklage, Jens [Fri, 1 Jul 2016 11:11:02 +0000 (13:11 +0200)]
Add some command line tests for HomeScreen app as example

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoAdd GENERATED_SOURCES to .pro files v0.1.0
Bocklage, Jens [Fri, 24 Jun 2016 16:21:54 +0000 (18:21 +0200)]
Add GENERATED_SOURCES to .pro files

7 years agov0.1.0
Bocklage, Jens [Fri, 24 Jun 2016 14:19:10 +0000 (16:19 +0200)]
v0.1.0
06/24/2016

- reworked status bar
- reviewed D-Bus interfaces, now using signals instead of methods for day/night mode
- created new home screen simulator app
- license changed to Apache 2.0
- put D-Bus introspections in one central place
- disabled "only one instance allowed" for development

7 years agoFirst version
Bocklage, Jens [Thu, 2 Jun 2016 12:29:22 +0000 (14:29 +0200)]
First version

v0.0.1
06/01/2016

- initial version
- first implementation of home screen
- fix HMI layout (will be configurable in the future)
- dBus as IPC (may change in the future)
- no interaction with application manager so far
- multi-lanuage support
- day/night mode support
- initial status bar implementation (interface will be enhanced in the future)
- initial control bar implementation
- MPLv2.0 license
- input device simulator for developer build (not functional right now)
- system settings simulator for developer build (day/night mode switch functional right now)
- using QSettings for local app setting storage (may change in the future)
- first popup implementation (single popup support for now; multiple popup not defined; interface will change)
- only one instance of the app allowed

7 years agoAdd .gitignore file
Bocklage, Jens [Fri, 22 Apr 2016 16:39:04 +0000 (18:39 +0200)]
Add .gitignore file

Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
7 years agoInitial empty repository
Jan-Simon Moeller [Fri, 22 Apr 2016 15:17:39 +0000 (15:17 +0000)]
Initial empty repository