diff options
author | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2011-10-18 15:10:23 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-10-21 16:54:45 +0200 |
commit | c7df1af337e0d5a013a2f1c17bb14df083769410 (patch) | |
tree | 7ace2d306d219f03b7ca8a858d130eea0782f454 | |
parent | 960502d91a5deb7db116c0385cb9a6feddac173f (diff) |
[directfb] Implement grab/ungrab of keyboard/pointer
Change-Id: Ie2b99bb659e324c63bfd23e96d6c89c13a8df3b4
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbwindow.cpp | 24 | ||||
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbwindow.h | 2 |
2 files changed, 26 insertions, 0 deletions
diff --git a/src/plugins/platforms/directfb/qdirectfbwindow.cpp b/src/plugins/platforms/directfb/qdirectfbwindow.cpp index 2d6bee5ba7..0d32596631 100644 --- a/src/plugins/platforms/directfb/qdirectfbwindow.cpp +++ b/src/plugins/platforms/directfb/qdirectfbwindow.cpp @@ -169,3 +169,27 @@ WId QDirectFbWindow::winId() const m_dfbWindow->GetID(m_dfbWindow.data(), &id); return WId(id); } + +bool QDirectFbWindow::setKeyboardGrabEnabled(bool grab) +{ + DFBResult res; + + if (grab) + res = m_dfbWindow->GrabKeyboard(m_dfbWindow.data()); + else + res = m_dfbWindow->UngrabKeyboard(m_dfbWindow.data()); + + return res == DFB_OK; +} + +bool QDirectFbWindow::setMouseGrabEnabled(bool grab) +{ + DFBResult res; + + if (grab) + res = m_dfbWindow->GrabPointer(m_dfbWindow.data()); + else + res = m_dfbWindow->UngrabPointer(m_dfbWindow.data()); + + return res == DFB_OK; +} diff --git a/src/plugins/platforms/directfb/qdirectfbwindow.h b/src/plugins/platforms/directfb/qdirectfbwindow.h index 77afda5246..1169b8bf27 100644 --- a/src/plugins/platforms/directfb/qdirectfbwindow.h +++ b/src/plugins/platforms/directfb/qdirectfbwindow.h @@ -61,6 +61,8 @@ public: void setVisible(bool visible); Qt::WindowFlags setWindowFlags(Qt::WindowFlags flags); + bool setKeyboardGrabEnabled(bool grab); + bool setMouseGrabEnabled(bool grab); void raise(); void lower(); WId winId() const; |