summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qwindow.cpp
diff options
context:
space:
mode:
authorSamuel Rødal <samuel.rodal@nokia.com>2011-05-13 11:51:41 +0200
committerSamuel Rødal <samuel.rodal@nokia.com>2011-05-13 15:13:15 +0200
commit850b602c7a72635eb37a998089ee085d5d505c34 (patch)
tree7cce231c1293888e98b9c661f9960ecd8d4999a2 /src/gui/kernel/qwindow.cpp
parent6697f2a899fac47a65122a85691b2cfe63c6152c (diff)
Initial QPlatformWindow window state setting API and xcb implementation.
Diffstat (limited to 'src/gui/kernel/qwindow.cpp')
-rw-r--r--src/gui/kernel/qwindow.cpp22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp
index 7faf49395a..897b370cf5 100644
--- a/src/gui/kernel/qwindow.cpp
+++ b/src/gui/kernel/qwindow.cpp
@@ -89,6 +89,8 @@ void QWindow::create()
d->windowFlags = d->platformWindow->setWindowFlags(d->windowFlags);
if (!d->windowTitle.isNull())
d->platformWindow->setWindowTitle(d->windowTitle);
+ if (d->windowState != Qt::WindowNoState)
+ d->windowState = d->platformWindow->setWindowState(d->windowState);
QObjectList childObjects = children();
for (int i = 0; i < childObjects.size(); i ++) {
@@ -232,16 +234,24 @@ void QWindow::requestActivateWindow()
}
}
-Qt::WindowStates QWindow::windowState() const
+Qt::WindowState QWindow::windowState() const
{
- qDebug() << "unimplemented:" << __FILE__ << __LINE__;
- return Qt::WindowNoState;
+ Q_D(const QWindow);
+ return d->windowState;
}
-void QWindow::setWindowState(Qt::WindowStates state)
+void QWindow::setWindowState(Qt::WindowState state)
{
- Q_UNUSED(state);
- qDebug() << "unimplemented:" << __FILE__ << __LINE__;
+ if (state == Qt::WindowActive) {
+ requestActivateWindow();
+ return;
+ }
+
+ Q_D(QWindow);
+ if (d->platformWindow)
+ d->windowState = d->platformWindow->setWindowState(state);
+ else
+ d->windowState = state;
}
QSize QWindow::minimumSize() const