diff options
-rw-r--r-- | src/imports/controls/ApplicationWindow.qml | 2 | ||||
-rw-r--r-- | src/imports/controls/material/ApplicationWindow.qml | 2 | ||||
-rw-r--r-- | src/imports/controls/universal/ApplicationWindow.qml | 1 | ||||
-rw-r--r-- | src/imports/templates/qtquicktemplates2plugin.cpp | 2 | ||||
-rw-r--r-- | tests/auto/revisions/tst_revisions.cpp | 31 |
5 files changed, 36 insertions, 2 deletions
diff --git a/src/imports/controls/ApplicationWindow.qml b/src/imports/controls/ApplicationWindow.qml index 1dd39279..af3986ac 100644 --- a/src/imports/controls/ApplicationWindow.qml +++ b/src/imports/controls/ApplicationWindow.qml @@ -35,9 +35,9 @@ ****************************************************************************/ import QtQuick 2.9 +import QtQuick.Window 2.3 import QtQuick.Controls 2.2 import QtQuick.Controls.impl 2.2 -import QtQuick.Window 2.2 import QtQuick.Templates 2.2 as T T.ApplicationWindow { diff --git a/src/imports/controls/material/ApplicationWindow.qml b/src/imports/controls/material/ApplicationWindow.qml index 82a0d135..0d56ed2c 100644 --- a/src/imports/controls/material/ApplicationWindow.qml +++ b/src/imports/controls/material/ApplicationWindow.qml @@ -35,7 +35,7 @@ ****************************************************************************/ import QtQuick 2.9 -import QtQuick.Window 2.2 +import QtQuick.Window 2.3 import QtQuick.Templates 2.2 as T import QtQuick.Controls.Material 2.2 diff --git a/src/imports/controls/universal/ApplicationWindow.qml b/src/imports/controls/universal/ApplicationWindow.qml index a9d03c8c..3f3926de 100644 --- a/src/imports/controls/universal/ApplicationWindow.qml +++ b/src/imports/controls/universal/ApplicationWindow.qml @@ -35,6 +35,7 @@ ****************************************************************************/ import QtQuick 2.9 +import QtQuick.Window 2.3 import QtQuick.Templates 2.2 as T import QtQuick.Controls.Universal 2.2 import QtQuick.Controls.Universal.impl 2.2 diff --git a/src/imports/templates/qtquicktemplates2plugin.cpp b/src/imports/templates/qtquicktemplates2plugin.cpp index e7cb8540..263d7fde 100644 --- a/src/imports/templates/qtquicktemplates2plugin.cpp +++ b/src/imports/templates/qtquicktemplates2plugin.cpp @@ -213,6 +213,7 @@ void QtQuickTemplates2Plugin::registerTypes(const char *uri) qmlRegisterRevision<QQuickText, 6>(uri, 2, 0); qmlRegisterRevision<QQuickTextInput, 7>(uri, 2, 0); qmlRegisterRevision<QQuickTextEdit, 7>(uri, 2, 0); + qmlRegisterRevision<QWindow, 3>(uri, 2, 0); // QtQuick.Templates 2.1 (new types and revisions in Qt 5.8) qmlRegisterType<QQuickButtonGroup, 1>(uri, 2, 1, "ButtonGroup"); @@ -260,6 +261,7 @@ void QtQuickTemplates2Plugin::registerTypes(const char *uri) // make revisioned properties available to their subclasses (synced with Qt 5.9) qmlRegisterRevision<QQuickText, 9>(uri, 2, 2); qmlRegisterRevision<QQuickTextInput, 9>(uri, 2, 2); + qmlRegisterRevision<QQuickWindowQmlImpl, 2>(uri, 2, 2); } QT_END_NAMESPACE diff --git a/tests/auto/revisions/tst_revisions.cpp b/tests/auto/revisions/tst_revisions.cpp index 8a7a5d6e..606cea33 100644 --- a/tests/auto/revisions/tst_revisions.cpp +++ b/tests/auto/revisions/tst_revisions.cpp @@ -46,6 +46,9 @@ class tst_revisions : public QObject private slots: void revisions_data(); void revisions(); + + void window_data(); + void window(); }; void tst_revisions::revisions_data() @@ -77,6 +80,34 @@ void tst_revisions::revisions() QVERIFY2(!object.isNull(), qPrintable(component.errorString())); } +void tst_revisions::window_data() +{ + QTest::addColumn<int>("revision"); + QTest::addColumn<QString>("qml"); + QTest::addColumn<QString>("error"); + + // Qt 5.7: 2.0, Qt 5.8: 2.1 + for (int i = 0; i <= 1; ++i) + QTest::newRow(qPrintable(QString("screen:2.%1").arg(i))) << i << "screen: null" << QString(":1 \"ApplicationWindow.screen\" is not available in QtQuick.Templates 2.%1").arg(i); + + // Qt 5.9: 2.2, Qt 5.10: 2.3... + for (int i = 2; i <= QT_VERSION_MINOR - 7; ++i) + QTest::newRow(qPrintable(QString("screen:2.%1").arg(i))) << i << "screen: null" << ""; +} + +void tst_revisions::window() +{ + QFETCH(int, revision); + QFETCH(QString, qml); + QFETCH(QString, error); + + QQmlEngine engine; + QQmlComponent component(&engine); + component.setData(QString("import QtQuick.Templates 2.%1; ApplicationWindow { %2 }").arg(revision).arg(qml).toUtf8(), QUrl()); + QScopedPointer<QObject> window(component.create()); + QCOMPARE(window.isNull(), !error.isEmpty()); +} + QTEST_MAIN(tst_revisions) #include "tst_revisions.moc" |