summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@digia.com>2013-07-16 13:11:06 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-07-16 16:28:11 +0200
commitaab50ad061dfaff7a0a30a4164163fdd41571270 (patch)
tree8d8f9d10a7707e72e5e2815090ae05281ba136d6 /tests/auto/gui
parente89547fff44b5558039c04397d7dc8a03cd504e3 (diff)
QGuiApplicationPrivate::updateBlockedStatus(): Recurse over children.
Task-number: QTBUG-32242 Change-Id: Ia43257a998507b9a367f41dc2395ab92cc89a118 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Diffstat (limited to 'tests/auto/gui')
-rw-r--r--tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp b/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp
index ed07b3fab5..29f198f1ba 100644
--- a/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp
+++ b/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp
@@ -372,8 +372,8 @@ public:
int leaves;
int enters;
- inline BlockableWindow()
- : QWindow(), blocked(false), leaves(0), enters(0) {}
+ inline explicit BlockableWindow(QWindow *parent = 0)
+ : QWindow(parent), blocked(false), leaves(0), enters(0) {}
bool event(QEvent *e)
{
@@ -416,6 +416,8 @@ void tst_QGuiApplication::modalWindow()
window1->setTitle(QStringLiteral("window1"));
window1->resize(windowSize, windowSize);
window1->setFramePosition(QPoint(x, y));
+ BlockableWindow *childWindow1 = new BlockableWindow(window1.data());
+ childWindow1->resize(windowSize / 2, windowSize / 2);
x += spacing + windowSize;
QScopedPointer<BlockableWindow> window2(new BlockableWindow);
@@ -458,6 +460,7 @@ void tst_QGuiApplication::modalWindow()
QVERIFY(QTest::qWaitForWindowExposed(window2.data()));
QCOMPARE(app.modalWindow(), static_cast<QWindow *>(0));
QCOMPARE(window1->blocked, 0);
+ QCOMPARE(childWindow1->blocked, 0);
QCOMPARE(window2->blocked, 0);
QCOMPARE(windowModalWindow1->blocked, 0);
QCOMPARE(windowModalWindow2->blocked, 0);
@@ -473,6 +476,7 @@ void tst_QGuiApplication::modalWindow()
applicationModalWindow1->show();
QCOMPARE(app.modalWindow(), applicationModalWindow1.data());
QCOMPARE(window1->blocked, 1);
+ QCOMPARE(childWindow1->blocked, 1); // QTBUG-32242, blocked status needs to be set on children as well.
QCOMPARE(window2->blocked, 1);
QCOMPARE(windowModalWindow1->blocked, 1);
QCOMPARE(windowModalWindow2->blocked, 1);
@@ -500,6 +504,7 @@ void tst_QGuiApplication::modalWindow()
applicationModalWindow1->hide();
QCOMPARE(app.modalWindow(), static_cast<QWindow *>(0));
QCOMPARE(window1->blocked, 0);
+ QCOMPARE(childWindow1->blocked, 0); // QTBUG-32242, blocked status needs to be set on children as well.
QCOMPARE(window2->blocked, 0);
QCOMPARE(windowModalWindow1->blocked, 0);
QCOMPARE(windowModalWindow2->blocked, 0);