From 8e600f9540ec1bbbda97ef5f182c275cc437b6d2 Mon Sep 17 00:00:00 2001 From: Gatis Paeglis Date: Sun, 23 Feb 2014 13:46:37 +0100 Subject: Fix stand alone demo layout issues on portrait devices B2Qt demos are designed for landscape view, nexus by default is a portrait device, so we have to rotate demos by 90 degrees to show them in portrait view on nexus. This matches the implementation from b2qt-launcher. Task-number: QTEE-432 Change-Id: Id063dc4a3ff97d86a3a02cb62f1066882316208f Reviewed-by: Rainer Keller --- basicsuite/shared/SharedMain.qml | 61 ++++++++++++++++++++++++++++++++++ basicsuite/shared/loader.qml | 63 ------------------------------------ basicsuite/shared/main.cpp | 8 ++++- basicsuite/shared/main_landscape.qml | 30 +++++++++++++++++ basicsuite/shared/shared.pri | 3 +- 5 files changed, 100 insertions(+), 65 deletions(-) create mode 100644 basicsuite/shared/SharedMain.qml delete mode 100644 basicsuite/shared/loader.qml create mode 100644 basicsuite/shared/main_landscape.qml (limited to 'basicsuite') diff --git a/basicsuite/shared/SharedMain.qml b/basicsuite/shared/SharedMain.qml new file mode 100644 index 0000000..60a141b --- /dev/null +++ b/basicsuite/shared/SharedMain.qml @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Digia Plc +** All rights reserved. +** For any questions to Digia, please use contact form at http://qt.digia.com +** +** This file is part of Qt Enterprise Embedded. +** +** Licensees holding valid Qt Enterprise licenses may use this file in +** accordance with the Qt Enterprise License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. +** +** If you have questions regarding the use of this file, please use +** contact form at http://qt.digia.com +** +****************************************************************************/ +import QtQuick 2.0 +import QtQuick.Enterprise.VirtualKeyboard 1.0 + +Item { + id: root + + Loader { + anchors.left: parent.left + anchors.top: parent.top + anchors.right: parent.right + anchors.bottom: inputPanel.top + + source: "main.qml" + } + + InputPanel { + id: inputPanel + z: 99 + y: root.height + anchors.left: root.left + anchors.right: root.right + + states: State { + name: "visible" + when: Qt.inputMethod.visible + PropertyChanges { + target: inputPanel + y: root.height - inputPanel.height + } + } + transitions: Transition { + from: "" + to: "visible" + reversible: true + ParallelAnimation { + NumberAnimation { + properties: "y" + duration: 250 + easing.type: Easing.InOutQuad + } + } + } + } +} diff --git a/basicsuite/shared/loader.qml b/basicsuite/shared/loader.qml deleted file mode 100644 index 733fded..0000000 --- a/basicsuite/shared/loader.qml +++ /dev/null @@ -1,63 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2014 Digia Plc -** All rights reserved. -** For any questions to Digia, please use contact form at http://qt.digia.com -** -** This file is part of Qt Enterprise Embedded. -** -** Licensees holding valid Qt Enterprise licenses may use this file in -** accordance with the Qt Enterprise License Agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Digia. -** -** If you have questions regarding the use of this file, please use -** contact form at http://qt.digia.com -** -****************************************************************************/ -import QtQuick 2.0 -import QtQuick.Enterprise.VirtualKeyboard 1.0 - - -Item { - id: root - - Loader { - anchors.left: parent.left - anchors.top: parent.top - anchors.right: parent.right - anchors.bottom: inputPanel.top - - source: "main.qml" - } - - InputPanel { - id: inputPanel - z: 99 - y: root.height - anchors.left: root.left - anchors.right: root.right - - states: State { - name: "visible" - when: Qt.inputMethod.visible - PropertyChanges { - target: inputPanel - y: root.height - inputPanel.height - } - } - transitions: Transition { - from: "" - to: "visible" - reversible: true - ParallelAnimation { - NumberAnimation { - properties: "y" - duration: 250 - easing.type: Easing.InOutQuad - } - } - } - } -} - diff --git a/basicsuite/shared/main.cpp b/basicsuite/shared/main.cpp index 74781e9..808d5df 100644 --- a/basicsuite/shared/main.cpp +++ b/basicsuite/shared/main.cpp @@ -75,7 +75,13 @@ int main(int argc, char **argv) view.rootContext()->setContextProperty("engine", &engine); view.setColor(Qt::black); view.setResizeMode(QQuickView::SizeRootObjectToView); - view.setSource(QUrl::fromLocalFile(path + QStringLiteral("/loader.qml"))); + + QSize screenSize = QGuiApplication::primaryScreen()->size(); + QString mainFile = screenSize.width() < screenSize.height() + ? QStringLiteral("/main_landscape.qml") + : QStringLiteral("/SharedMain.qml"); + + view.setSource(QUrl::fromLocalFile(path + mainFile)); view.show(); app.exec(); diff --git a/basicsuite/shared/main_landscape.qml b/basicsuite/shared/main_landscape.qml new file mode 100644 index 0000000..599645c --- /dev/null +++ b/basicsuite/shared/main_landscape.qml @@ -0,0 +1,30 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Digia Plc +** All rights reserved. +** For any questions to Digia, please use contact form at http://qt.digia.com +** +** This file is part of Qt Enterprise Embedded. +** +** Licensees holding valid Qt Enterprise licenses may use this file in +** accordance with the Qt Enterprise License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. +** +** If you have questions regarding the use of this file, please use +** contact form at http://qt.digia.com +** +****************************************************************************/ +import QtQuick 2.0 + +Item { + width: 800 + height: 1280 + + Main { + anchors.centerIn: parent + width: parent.height + height: parent.width + rotation: 90 + } +} diff --git a/basicsuite/shared/shared.pri b/basicsuite/shared/shared.pri index dbfd513..8f66b7d 100644 --- a/basicsuite/shared/shared.pri +++ b/basicsuite/shared/shared.pri @@ -12,7 +12,8 @@ HEADERS += $$PWD/engine.h defineTest(b2qtdemo_deploy_defaults) { commonFiles.files = \ exclude.txt \ - ../shared/loader.qml + ../shared/SharedMain.qml \ + ../shared/main_landscape.qml commonFiles.path = $$DESTPATH OTHER_FILES += $${commonFiles.files} INSTALLS += commonFiles -- cgit v1.2.3