diff options
author | Fabian Bumberger <fbumberger@rim.com> | 2014-01-10 18:08:17 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-01-15 01:10:19 +0100 |
commit | b5ceb6edf14988eed9826db4773e608754629848 (patch) | |
tree | 45bef8ea7e2e0a5939cd88abea76d153d54cd200 /tests/auto/quick/rendernode/tst_rendernode.cpp | |
parent | 679ea13790f217df0bb240fb80fd4ee5208e2084 (diff) |
Fix RenderNode autotest on BlackBerry
On BlackBerry the first window that is created is always shown as fullscreen.
This is a platform restriction and possibly applies to other platforms as well.
The autotest however expects the window to be of a specific size.
As workaround a "container" window is created first in which the QQuickView is placed.
Change-Id: Ib9023cfcb9148c6cafb21872c2821ebcb8fd664f
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
Diffstat (limited to 'tests/auto/quick/rendernode/tst_rendernode.cpp')
-rw-r--r-- | tests/auto/quick/rendernode/tst_rendernode.cpp | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/tests/auto/quick/rendernode/tst_rendernode.cpp b/tests/auto/quick/rendernode/tst_rendernode.cpp index 7d1590e5f6..06338e09e2 100644 --- a/tests/auto/quick/rendernode/tst_rendernode.cpp +++ b/tests/auto/quick/rendernode/tst_rendernode.cpp @@ -57,18 +57,18 @@ public: QImage runTest(const QString &fileName) { - QQuickView view; - view.setSource(testFileUrl(fileName)); + QQuickView view(&outerWindow); view.setResizeMode(QQuickView::SizeViewToRootObject); - const QRect screenGeometry = view.screen()->availableGeometry(); - const QSize size = view.size(); - const QPoint offset = QPoint(size.width() / 2, size.height() / 2); - view.setFramePosition(screenGeometry.center() - offset); - view.showNormal(); + view.setSource(testFileUrl(fileName)); + view.setVisible(true); QTest::qWaitForWindowExposed(&view); return view.grabWindow(); } + //It is important for platforms that only are able to show fullscreen windows + //to have a container for the window that is painted on. + QQuickWindow outerWindow; + private slots: void renderOrder(); void messUpState(); @@ -187,6 +187,8 @@ tst_rendernode::tst_rendernode() { qmlRegisterType<ClearItem>("Test", 1, 0, "ClearItem"); qmlRegisterType<MessUpItem>("Test", 1, 0, "MessUpItem"); + outerWindow.showNormal(); + outerWindow.setGeometry(0,0,400,400); } static bool fuzzyCompareColor(QRgb x, QRgb y, QByteArray *errorMessage) |