summaryrefslogtreecommitdiffstats
path: root/src/gui/styles/qwindowsxpstyle.cpp
diff options
context:
space:
mode:
authorPrasanth Ullattil <prasanth.ullattil@nokia.com>2009-10-22 14:39:14 (GMT)
committerPrasanth Ullattil <prasanth.ullattil@nokia.com>2009-10-23 11:25:13 (GMT)
commit3481db791c3b48e28f1a9531b247adf6562edb71 (patch)
tree201d9160ad1e31bc0986778345b3390474d0f967 /src/gui/styles/qwindowsxpstyle.cpp
parent19c60da9c15dc609d6d07c687a59d9c2c1a4da13 (diff)
downloadQt-3481db791c3b48e28f1a9531b247adf6562edb71.zip
Qt-3481db791c3b48e28f1a9531b247adf6562edb71.tar.gz
Qt-3481db791c3b48e28f1a9531b247adf6562edb71.tar.bz2
Remove internal widgets from QApplication::topLevelWidgets()
We have some internal hidden widgets which should not come up in the QApplication::topLevelWidgets() list. So the known ones are being removed from the QWidgetPrivate::allWidgets set. Task-number: QTBUG-739 Reviewed-by: Denis Dzyubenko Reviewed-by: Bradley T. Hughes
Diffstat (limited to 'src/gui/styles/qwindowsxpstyle.cpp')
-rw-r--r--src/gui/styles/qwindowsxpstyle.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gui/styles/qwindowsxpstyle.cpp b/src/gui/styles/qwindowsxpstyle.cpp
index 9ef30e5..2f00f07 100644
--- a/src/gui/styles/qwindowsxpstyle.cpp
+++ b/src/gui/styles/qwindowsxpstyle.cpp
@@ -47,6 +47,7 @@
#include <private/qpaintengine_raster_p.h>
#include <private/qapplication_p.h>
#include <private/qstylehelper_p.h>
+#include <private/qwidget_p.h>
#include <qlibrary.h>
#include <qpainter.h>
#include <qpaintengine.h>
@@ -299,7 +300,11 @@ HWND QWindowsXPStylePrivate::winId(const QWidget *widget)
if (!limboWidget) {
limboWidget = new QWidget(0);
+ limboWidget->createWinId();
limboWidget->setObjectName(QLatin1String("xp_limbo_widget"));
+ // We dont need this internal widget to appear in QApplication::topLevelWidgets()
+ if (QWidgetPrivate::allWidgets)
+ QWidgetPrivate::allWidgets->remove(limboWidget);
}
return limboWidget->winId();