diff options
author | Bocklage, Jens <Jens_Bocklage@mentor.com> | 2016-11-08 20:28:41 +0100 |
---|---|---|
committer | Bocklage, Jens <Jens_Bocklage@mentor.com> | 2016-11-08 20:28:41 +0100 |
commit | ea72edc2647a499fce3c8c38f505b5931239bfd6 (patch) | |
tree | 1a1c2f67ff4840ae87bba1209c54b40beb7d0da0 /recipes-demo-hmi/HomeScreen/HomeScreen_0.6.0.bb | |
parent | a883c25ab51609a7b17a0d5707fef7f431af163a (diff) |
-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
To build:
enable some features:
source meta-agl/scripts/aglsetup.sh -m porter -b build-porter agl-demo agl-appfw-smack agl-devel
Add HomeScreen to the agl-demo-platform.bb file:
IMAGE_INSTALL_append = " \
ces2017-demo \
can-utils iproute2 \
python-curses \
dhcp-client \
climatecontrolplugin \
Navigation \
HomeScreen \ <-----
${IMAGE_TTF_FONTS} \
"
The latest app-framework-main is needed:
Edit file:
meta-app-framework/recipes-core/af-main/af-main_1.0.inc
-SRCREV = "c31038db1cff938d7fa1f12f757c1c57ab51c0bd"
+SRCREV = "cdcf4b4caa5d02a626c2e7075126e395a72f58a0"
Build it:
bitbake agl-demo-platform
When writing the SD-Card, make sure you preserve the extended attributes!
You need at minimum tar v1.28.
You will find this version also in the sysroot!
So you may want to use it:
sudo [..]/sysroots/i686-linux/usr/bin/tar-native/tar xpj --xattrs-include='*' --directory=<sdcard> --file=agl-demo-platform-porter.tar.bz2
We need the IVI-shell, so edit the file weston.ini on the target:
vi /etc/xdg/weston/weston.ini
[core]
shell=ivi-shell.so
[ivi-shell]
ivi-module=ivi-controller.so
ivi-shell-user-interface=/usr/lib/weston/weston-ivi-shell-user-interface
[output]
name=HDMI-A-1
transform=270
If you want to test it, you can download a sample app here:
wget http://iot.bzh/download/public/2016/afb-demos/txc-demo_0.1.wgt
afm-util install txc-demo_0.1.wgt
Qt apps need an environement variable set, so we need to change the start script:
vi /usr/bin/web-runtime
export QT_WAYLAND_SHELL_INTEGRATION="ivi-shell"
LD_PRELOAD=/usr/lib/libEGL.so exec /usr/bin/qt5/qmlscene "$1" /usr/bin/web-runtime-webkit.qml
(this is already in gerrit review: https://gerrit.automotivelinux.org/gerrit/#/c/7077/ )
reboot
To start everything:
cd /opt/AGL/HomeScreen
./WindowManager &
./HomeScreenAppFrameworkBinderAGL &
QT_IVI_SURFACE_ID=1000 QT_WAYLAND_SHELL_INTEGRATION="ivi-shell" ./HomeScreen &
Now you can click the txc-demo and it will show up.
Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
Diffstat (limited to 'recipes-demo-hmi/HomeScreen/HomeScreen_0.6.0.bb')
-rw-r--r-- | recipes-demo-hmi/HomeScreen/HomeScreen_0.6.0.bb | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/recipes-demo-hmi/HomeScreen/HomeScreen_0.6.0.bb b/recipes-demo-hmi/HomeScreen/HomeScreen_0.6.0.bb new file mode 100644 index 000000000..87b6dc5cb --- /dev/null +++ b/recipes-demo-hmi/HomeScreen/HomeScreen_0.6.0.bb @@ -0,0 +1,73 @@ +SUMMARY = "AGL Home Screen Application" +DESCRIPTION = "AGL Home Screen Application + SampleAppTimeDate + HomeScreenAppFrameworkBinderAGL + WindowManager + InputEventManager + two sample apps (QML and Qtwidget)" +HOMEPAGE = "https://wiki.automotivelinux.org/homescreen" +LICENSE = "Apache-2.0" +SECTION = "apps" +PV = "0.6.0+gitr${SRCPV}" +PR = "r1" +S = "${WORKDIR}/git/" + +inherit qmake5 +DEPENDS = " qtbase " + +# for HomeScreenAppFrameworkBinderTizen: +#DEPENDS += " pkgmgr-info aul " +# for WindowManager: +DEPENDS += " wayland-ivi-extension " +# for libhomescreen +DEPENDS += " glib-2.0 " + +LIC_FILES_CHKSUM = "file://HomeScreen/LICENSE;md5=ae6497158920d9524cf208c09cc4c984" +SRCREV = "61d3f0e1e2210d6108953b0433324a3365d9dab6" +SRC_URI = "git://gerrit.automotivelinux.org/gerrit/p/staging/HomeScreen.git;protocol=http" + + +do_compile_prepend(){ + PATH=$PATH:${STAGING_BINDIR_NATIVE}/qt5 + export PATH +} + +do_install() { + install -d ${D}/opt/AGL/${PN} + install -m 0755 ${B}/HomeScreen/HomeScreen ${D}/opt/AGL/${PN}/ + install -d ${D}/opt/AGL/${PN}/colorschemes + cp -r ${B}/HomeScreen/colorschemes/* ${D}/opt/AGL/${PN}/colorschemes/ + install -m 0755 ${B}/SampleAppTimeDate/SampleAppTimeDate ${D}/opt/AGL/${PN}/ + install -m 0755 ${B}/SampleHomeScreenInterfaceApp/SampleHomeScreenInterfaceApp ${D}/opt/AGL/${PN}/ + install -m 0755 ${B}/HomeScreenAppFrameworkBinderAGL/HomeScreenAppFrameworkBinderAGL ${D}/opt/AGL/${PN}/ + install -m 0755 ${B}/WindowManager/WindowManager ${D}/opt/AGL/${PN}/ + install -m 0755 ${B}/InputEventManager/InputEventManager ${D}/opt/AGL/${PN}/ + install -m 0755 ${B}/SampleNavigationApp/SampleNavigationApp ${D}/opt/AGL/${PN}/ + install -m 0755 ${B}/SampleMediaApp/SampleMediaApp ${D}/opt/AGL/${PN}/ + + install -d ${D}/usr/lib + install -m 0644 ${B}/libhomescreen/libhomescreen.so.1.0.0 ${D}/usr/lib/ + ln -sf /usr/lib/libhomescreen.so.1.0.0 ${D}/usr/lib/libhomescreen.so + ln -sf /usr/lib/libhomescreen.so.1.0.0 ${D}/usr/lib/libhomescreen.so.1 + ln -sf /usr/lib/libhomescreen.so.1.0.0 ${D}/usr/lib/libhomescreen.so.1.0 +} + + +FILES_${PN} += "/opt/AGL/${PN}/ /opt/AGL/${PN}/colorschemes /usr/lib/" +FILES_${PN}-dbg += "/opt/AGL/${PN}/.debug" + +############################################# +# this has to be set up later... +############################################# +#PACKAGES =+ "libhomescreen libhomescreen-dev libhomescreen-dbg" +# +#FILES_libhomescreen = "\ +# ${libdir}/libhomescreen.so.* \ +#" +#FILES_libhomescreen-dev = "\ +# ${includedir}/libhomescreen.hpp \ +# ${libdir}/libhomescreen.so \ +# ${libdir}/pkgconfig/libhomescreen.pc \ +#" +#FILES_libhomescreen-dbg = "\ +# ${libdir}/.debug/libhomescreen.so.* \ +#" +#RDEPENDS_libhomescreen-dbg += "${PN}-dbg libhomescreen-dev" +# +#RDEPENDS_${PN}-dev += "libhomescreen-dev" + |