diff options
Diffstat (limited to 'src/widgets/graphicsview')
-rw-r--r-- | src/widgets/graphicsview/qgraphicsscene.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/widgets/graphicsview/qgraphicsscene.cpp b/src/widgets/graphicsview/qgraphicsscene.cpp index 75ec8a3223..5d2ead2ea7 100644 --- a/src/widgets/graphicsview/qgraphicsscene.cpp +++ b/src/widgets/graphicsview/qgraphicsscene.cpp @@ -5728,18 +5728,15 @@ void QGraphicsScene::setActiveWindow(QGraphicsWidget *widget) // Raise if (panel) { - QList<QGraphicsItem *> siblingWindows; QGraphicsItem *parent = panel->parentItem(); // Raise ### inefficient for toplevels - foreach (QGraphicsItem *sibling, parent ? parent->childItems() : items()) { - if (sibling != panel && sibling->isWindow()) - siblingWindows << sibling; - } // Find the highest z value. qreal z = panel->zValue(); - for (int i = 0; i < siblingWindows.size(); ++i) - z = qMax(z, siblingWindows.at(i)->zValue()); + foreach (QGraphicsItem *sibling, parent ? parent->childItems() : items()) { + if (sibling != panel && sibling->isWindow()) + z = qMax(z, sibling->zValue()); + } // This will probably never overflow. const qreal litt = qreal(0.001); |