From: Jan-Simon Moeller Date: Thu, 2 Aug 2018 14:42:12 +0000 (+0000) Subject: Merge "Improve output of multiple screen resolution" X-Git-Tag: 5.99.3~1 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=e1877c0c7c2add1dba21e64394ba06365c796edd;hp=69d5406160655c6b74ef2bd25a5d2ef31bea5c1f;p=apps%2Flauncher.git Merge "Improve output of multiple screen resolution" --- diff --git a/launcher/qml/Launcher.qml b/launcher/qml/Launcher.qml index ccca186..6caad1e 100644 --- a/launcher/qml/Launcher.qml +++ b/launcher/qml/Launcher.qml @@ -16,33 +16,38 @@ * limitations under the License. */ import QtQuick 2.6 +import QtQuick.Window 2.1 import QtQuick.Layouts 1.1 import QtQuick.Controls 2.0 import AppModel 1.0 -ApplicationWindow { - id: root - // Layout.fillWidth: true - // Layout.fillHeight: true - // width: 1080 - // Layout.preferredHeight: 1487 +Window { + visible: true + flags: Qt.FramelessWindowHint + width: container.width * container.scale + height: container.height * container.scale property int pid: -1 - Image { - y: 218 + + Item { + id: container anchors.centerIn: parent - source: './images/AGL_HMI_Blue_Background_Car-01.png' - } + width: 1080 + height: 1487 + scale: screenInfo.scale_factor() + Image { + anchors.centerIn: parent + source: './images/AGL_HMI_Blue_Background_Car-01.png' + } GridView { id: grid - x: 60 - y: 100 - width: 960 - height: 1280 - anchors.horizontalCenter: parent.horizontalCenter - anchors.verticalCenter: parent.verticalCenter + anchors { + topMargin: 60; bottomMargin: 0 + leftMargin: 60; rightMargin: 60 + fill: parent + } contentHeight: 320 flickableDirection: Flickable.AutoFlickDirection snapMode: GridView.SnapOneRow @@ -65,10 +70,6 @@ ApplicationWindow { property int index: grid.indexAt(loc.mouseX, loc.mouseY) x: 62 y: 264 - anchors.rightMargin: 0 - anchors.bottomMargin: 0 - anchors.leftMargin: 0 - anchors.topMargin: 0 onPressAndHold: currentId = applicationModel.id(newIndex = index) onReleased: { if (currentId === '') { @@ -92,3 +93,4 @@ ApplicationWindow { } } } +} diff --git a/launcher/src/main.cpp b/launcher/src/main.cpp index ea3ed74..91a1d80 100644 --- a/launcher/src/main.cpp +++ b/launcher/src/main.cpp @@ -100,6 +100,8 @@ int main(int argc, char *argv[]) exit(EXIT_FAILURE); } + AGLScreenInfo screenInfo(layoutHandler->get_scale_factor()); + if (layoutHandler->requestSurface(myname) != 0) { exit(EXIT_FAILURE); } @@ -156,9 +158,10 @@ int main(int argc, char *argv[]) // mail.qml loading QQmlApplicationEngine engine; - engine.rootContext()->setContextProperty("layoutHandler", layoutHandler); - engine.rootContext()->setContextProperty("homescreenHandler", homescreenHandler); - engine.rootContext()->setContextProperty("launcher", launcher); + engine.rootContext()->setContextProperty(QStringLiteral("layoutHandler"), layoutHandler); + engine.rootContext()->setContextProperty(QStringLiteral("homescreenHandler"), homescreenHandler); + engine.rootContext()->setContextProperty(QStringLiteral("launcher"), launcher); + engine.rootContext()->setContextProperty(QStringLiteral("screenInfo"), &screenInfo); engine.load(QUrl(QStringLiteral("qrc:/Launcher.qml"))); QObject *root = engine.rootObjects().first();