Improve output of multiple screen resolution 47/15947/1
authorTadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
Thu, 2 Aug 2018 12:36:27 +0000 (12:36 +0000)
committerTadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
Thu, 2 Aug 2018 12:36:27 +0000 (12:36 +0000)
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 <tanikawa.tadao@jp.panasonic.com>
app/MediaPlayer.qml
app/main.cpp

index 99ed3ea..983087c 100644 (file)
@@ -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 {
         }
     }
 }
+}
index 67bbab4..3f38cc0 100644 (file)
@@ -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);