diff options
Diffstat (limited to 'src/plugins/platforms/qnx/qqnxscreen.cpp')
-rw-r--r-- | src/plugins/platforms/qnx/qqnxscreen.cpp | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/plugins/platforms/qnx/qqnxscreen.cpp b/src/plugins/platforms/qnx/qqnxscreen.cpp index cd77c3088a..1fef0bc0a7 100644 --- a/src/plugins/platforms/qnx/qqnxscreen.cpp +++ b/src/plugins/platforms/qnx/qqnxscreen.cpp @@ -40,11 +40,11 @@ ****************************************************************************/ #include "qqnxscreen.h" -#include "qqnxvirtualkeyboard.h" #include "qqnxwindow.h" #include <QtCore/QDebug> #include <QtCore/QUuid> +#include <QtGui/QWindowSystemInterface> #include <errno.h> @@ -59,6 +59,7 @@ QQnxScreen::QQnxScreen(screen_context_t screenContext, screen_display_t display, m_rootWindow(), m_primaryScreen(primaryScreen), m_posted(false), + m_keyboardHeight(0), m_platformContext(0) { #if defined(QQNXSCREEN_DEBUG) @@ -182,9 +183,8 @@ QRect QQnxScreen::availableGeometry() const qDebug() << Q_FUNC_INFO; #endif // available geometry = total geometry - keyboard - int keyboardHeight = QQnxVirtualKeyboard::instance().height(); return QRect(m_currentGeometry.x(), m_currentGeometry.y(), - m_currentGeometry.width(), m_currentGeometry.height() - keyboardHeight); + m_currentGeometry.width(), m_currentGeometry.height() - m_keyboardHeight); } /*! @@ -312,4 +312,15 @@ void QQnxScreen::onWindowPost(QQnxWindow *window) } } +void QQnxScreen::keyboardHeightChanged(int height) +{ + if (height == m_keyboardHeight) + return; + + m_keyboardHeight = height; + + QWindowSystemInterface::handleScreenAvailableGeometryChange(screen(), availableGeometry()); +} + + QT_END_NAMESPACE |