summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBogDan Vatra <bogdan@kde.org>2013-11-06 17:17:49 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-11-07 14:56:32 +0100
commitb953e2f53ff1a9c40c46ad6e7d406d368083b235 (patch)
tree242b6450ff211fd6bcefa3f3e3efbaececab66f6 /src
parent6ff08b7db3d4f93b38ae769413d3f3377b3d272b (diff)
add/remove window only when the window is shown/hidden
Task-number: QTBUG-34469 Change-Id: Id77cf738f96bb94582833f6734a2a491b01e1666 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/platformsupport/fbconvenience/qfbwindow.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/platformsupport/fbconvenience/qfbwindow.cpp b/src/platformsupport/fbconvenience/qfbwindow.cpp
index 8b6186db79..b489ed351c 100644
--- a/src/platformsupport/fbconvenience/qfbwindow.cpp
+++ b/src/platformsupport/fbconvenience/qfbwindow.cpp
@@ -52,13 +52,10 @@ QFbWindow::QFbWindow(QWindow *window)
{
static QAtomicInt winIdGenerator(1);
mWindowId = winIdGenerator.fetchAndAddRelaxed(1);
-
- platformScreen()->addWindow(this);
}
QFbWindow::~QFbWindow()
{
- platformScreen()->removeWindow(this);
}
QFbScreen *QFbWindow::platformScreen() const
@@ -86,6 +83,11 @@ void QFbWindow::setVisible(bool visible)
setGeometry(platformScreen()->availableGeometry());
}
QPlatformWindow::setVisible(visible);
+
+ if (visible)
+ platformScreen()->addWindow(this);
+ else
+ platformScreen()->removeWindow(this);
}