From 305b461157111b4af85d24aa998bea2955396dc9 Mon Sep 17 00:00:00 2001 From: Tuomas Vaarala Date: Wed, 2 Oct 2024 14:13:56 +0300 Subject: [PATCH] Enable platforminputcontext in QNX QPA without PPS Platforminputcontext is needed for Qt Virtual Keyboard to work thus it needs to be enabled without to condition to PPS. PPS is removed in QNX 8.0 and the condition would never be met. It is safe to enable platforminputcontext without condition for QNX 7.x as well since it is needed for Qt VKB anyways. Fixes: QTBUG-129436 Change-Id: I82230d1411e54713a2dabadf5a8dff3ca5455fbb Reviewed-by: James McDonnell (cherry picked from commit 4d908a3b5e305462bf7e234db0fe1e42e866e8ea) Reviewed-by: Qt Cherry-pick Bot --- src/plugins/platforms/qnx/qqnxintegration.cpp | 15 +++++++-------- src/plugins/platforms/qnx/qqnxintegration.h | 6 ++---- 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/src/plugins/platforms/qnx/qqnxintegration.cpp b/src/plugins/platforms/qnx/qqnxintegration.cpp index b308c956f29..cb453f8ca7d 100644 --- a/src/plugins/platforms/qnx/qqnxintegration.cpp +++ b/src/plugins/platforms/qnx/qqnxintegration.cpp @@ -32,11 +32,12 @@ #if QT_CONFIG(qqnx_pps) # include "qqnxbuttoneventnotifier.h" # include "qqnxclipboard.h" -# if QT_CONFIG(qqnx_imf) -# include "qqnxinputcontext_imf.h" -# else -# include "qqnxinputcontext_noimf.h" -# endif +#endif + +#if QT_CONFIG(qqnx_imf) +# include "qqnxinputcontext_imf.h" +#else +# include "qqnxinputcontext_noimf.h" #endif #include @@ -117,9 +118,9 @@ QQnxIntegration::QQnxIntegration(const QStringList ¶mList) , m_screenEventThread(0) , m_navigatorEventHandler(new QQnxNavigatorEventHandler()) , m_virtualKeyboard(0) + , m_inputContext(0) #if QT_CONFIG(qqnx_pps) , m_navigatorEventNotifier(0) - , m_inputContext(0) , m_buttonsNotifier(new QQnxButtonEventNotifier()) #endif , m_qpaInputContext(0) @@ -403,7 +404,6 @@ QPlatformOpenGLContext *QQnxIntegration::createPlatformOpenGLContext(QOpenGLCont } #endif -#if QT_CONFIG(qqnx_pps) QPlatformInputContext *QQnxIntegration::inputContext() const { qCDebug(lcQpaQnx) << Q_FUNC_INFO; @@ -411,7 +411,6 @@ QPlatformInputContext *QQnxIntegration::inputContext() const return m_qpaInputContext; return m_inputContext; } -#endif void QQnxIntegration::moveToScreen(QWindow *window, int screen) { diff --git a/src/plugins/platforms/qnx/qqnxintegration.h b/src/plugins/platforms/qnx/qqnxintegration.h index 8a78d54cebc..d096a78dcb8 100644 --- a/src/plugins/platforms/qnx/qqnxintegration.h +++ b/src/plugins/platforms/qnx/qqnxintegration.h @@ -33,9 +33,9 @@ class QQnxAbstractVirtualKeyboard; class QQnxServices; class QSimpleDrag; +class QQnxInputContext; #if QT_CONFIG(qqnx_pps) -class QQnxInputContext; class QQnxNavigatorEventNotifier; class QQnxButtonEventNotifier; #endif @@ -73,9 +73,7 @@ public: QPlatformOpenGLContext *createPlatformOpenGLContext(QOpenGLContext *context) const override; #endif -#if QT_CONFIG(qqnx_pps) QPlatformInputContext *inputContext() const override; -#endif void moveToScreen(QWindow *window, int screen); @@ -124,9 +122,9 @@ private: QQnxScreenEventThread *m_screenEventThread; QQnxNavigatorEventHandler *m_navigatorEventHandler; QQnxAbstractVirtualKeyboard *m_virtualKeyboard; + QQnxInputContext *m_inputContext; #if QT_CONFIG(qqnx_pps) QQnxNavigatorEventNotifier *m_navigatorEventNotifier; - QQnxInputContext *m_inputContext; QQnxButtonEventNotifier *m_buttonsNotifier; #endif QPlatformInputContext *m_qpaInputContext;