summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@digia.com>2014-07-15 10:32:07 +0200
committerFriedemann Kleint <Friedemann.Kleint@digia.com>2014-07-15 11:24:38 +0200
commitcdba2439f91c1d3757e5d36f7759ac73a2e8ac2d (patch)
tree8df9dc64fc75fd3e839439457eae26f60316f84f /src/widgets
parente0dc27d791cd2106f661bd3d949281aaf1239990 (diff)
QSplitter: Exclude top level widgets from child event handling.
Prevent the splitter from adding them to the layout or showing them. Task-number: QTBUG-40132 Change-Id: Ife2be0bbd7e489570ef41f6f72a034b356c65f18 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/widgets/qsplitter.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/widgets/widgets/qsplitter.cpp b/src/widgets/widgets/qsplitter.cpp
index f58881af0d..1f29af319a 100644
--- a/src/widgets/widgets/qsplitter.cpp
+++ b/src/widgets/widgets/qsplitter.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtWidgets module of the Qt Toolkit.
@@ -1224,7 +1224,9 @@ void QSplitter::childEvent(QChildEvent *c)
return;
}
QWidget *w = static_cast<QWidget*>(c->child());
- if (c->added() && !d->blockChildAdd && !w->isWindow() && !d->findWidget(w)) {
+ if (w->isWindow())
+ return;
+ if (c->added() && !d->blockChildAdd && !d->findWidget(w)) {
d->insertWidget_helper(d->list.count(), w, false);
} else if (c->polished() && !d->blockChildAdd) {
if (isVisible() && !(w->isHidden() && w->testAttribute(Qt::WA_WState_ExplicitShowHide)))