From ea72edc2647a499fce3c8c38f505b5931239bfd6 Mon Sep 17 00:00:00 2001 From: "Bocklage, Jens" Date: Tue, 8 Nov 2016 20:28:41 +0100 Subject: -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= --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 --- recipes-demo-hmi/HomeScreen/HomeScreen_0.4.0.bb | 71 ------------------------ recipes-demo-hmi/HomeScreen/HomeScreen_0.6.0.bb | 73 +++++++++++++++++++++++++ 2 files changed, 73 insertions(+), 71 deletions(-) delete mode 100644 recipes-demo-hmi/HomeScreen/HomeScreen_0.4.0.bb create mode 100644 recipes-demo-hmi/HomeScreen/HomeScreen_0.6.0.bb (limited to 'recipes-demo-hmi') diff --git a/recipes-demo-hmi/HomeScreen/HomeScreen_0.4.0.bb b/recipes-demo-hmi/HomeScreen/HomeScreen_0.4.0.bb deleted file mode 100644 index 4a598ccf..00000000 --- a/recipes-demo-hmi/HomeScreen/HomeScreen_0.4.0.bb +++ /dev/null @@ -1,71 +0,0 @@ -SUMMARY = "AGL Home Screen Application" -DESCRIPTION = "AGL Home Screen Application + SampleAppTimeDate + HomeScreenAppFrameworkBinderTizen + WindowManager + InputEventManager" -HOMEPAGE = "https://wiki.automotivelinux.org/homescreen" -LICENSE = "Apache-2.0" -SECTION = "apps" -PV = "0.4.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 = "ec688535558c31989e7da221b858328b2e0766c8" -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}/HomeScreenAppFrameworkBinderTizen/HomeScreenAppFrameworkBinderTizen ${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 -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" - 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 00000000..87b6dc5c --- /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" + -- cgit 1.2.3-korg