From 73a4daea8884292b69d70f37a26d39e16abadcca Mon Sep 17 00:00:00 2001 From: Tadao Tanikawa Date: Thu, 2 Aug 2018 12:36:27 +0000 Subject: Improve output of multiple screen resolution To improve output on various monitor with various resolution, use scale_factor from WM to fit various screen resolution. Bug-AGL: SPEC-1568, SPEC-1569, SPEC-1611 Change-Id: Ifb0391e7acf9546778dd0993e8e0d3f9b66c5dc9 Signed-off-by: Tadao Tanikawa --- app/MediaPlayer.qml | 11 +++++++++++ app/main.cpp | 2 ++ 2 files changed, 13 insertions(+) diff --git a/app/MediaPlayer.qml b/app/MediaPlayer.qml index 99ed3ea..983087c 100644 --- a/app/MediaPlayer.qml +++ b/app/MediaPlayer.qml @@ -22,6 +22,9 @@ import AGL.Demo.Controls 1.0 ApplicationWindow { id: root + width: container.width * container.scale + height: container.height * container.scale + Item { id: player @@ -168,6 +171,13 @@ ApplicationWindow { } } + Item { + id: container + anchors.centerIn: parent + width: 1080 + height: 1487 + scale: screenInfo.scale_factor() + ColumnLayout { anchors.fill: parent Item { @@ -417,3 +427,4 @@ ApplicationWindow { } } } +} diff --git a/app/main.cpp b/app/main.cpp index 67bbab4..3f38cc0 100644 --- a/app/main.cpp +++ b/app/main.cpp @@ -72,6 +72,7 @@ int main(int argc, char *argv[]) if(qwm->init(port,secret) != 0){ exit(EXIT_FAILURE); } + AGLScreenInfo screenInfo(qwm->get_scale_factor()); // Request a surface as described in layers.json windowmanager’s file if (qwm->requestSurface(myname) != 0) { exit(EXIT_FAILURE); @@ -100,6 +101,7 @@ int main(int argc, char *argv[]) context->setContextProperty("mediaplayer", new Mediaplayer(bindingAddress, context)); context->setContextProperty("bluetooth_connection", new Bluetooth(bindingAddress)); + context->setContextProperty(QStringLiteral("screenInfo"), &screenInfo); usleep(300000); -- cgit 1.2.3-korg