Add QNX qpa to builds

Task-number: QTBUG-91234
Change-Id: I978aff101ce29d2df74ced801911426ccd56e997
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: James McDonnell <jmcdonnell@blackberry.com>
(cherry picked from commit 9c6721c106cfb593841e99b9670a3ba936254206)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Marianne Yrjänä 2021-03-09 11:44:16 +02:00 committed by Qt Cherry-pick Bot
parent a2a869c563
commit d8272bcd9f
4 changed files with 189 additions and 4 deletions

View File

@ -25,7 +25,7 @@ if(QT_FEATURE_direct2d1_1 AND QT_FEATURE_directwrite)
add_subdirectory(direct2d)
endif()
if(QNX)
# add_subdirectory(qnx) # special case TODO
add_subdirectory(qnx)
endif()
if(QT_FEATURE_eglfs)
add_subdirectory(eglfs)

View File

@ -0,0 +1,91 @@
# Generated from qnx.pro.
#####################################################################
## QQnxIntegrationPlugin Plugin:
#####################################################################
qt_internal_add_plugin(QQnxIntegrationPlugin
OUTPUT_NAME qqnx
TYPE platforms
SOURCES
main.cpp main.h
qqnxabstractcover.h
qqnxabstractnavigator.cpp qqnxabstractnavigator.h
qqnxabstractvirtualkeyboard.cpp qqnxabstractvirtualkeyboard.h
qqnxbuffer.cpp qqnxbuffer.h
qqnxcursor.cpp qqnxcursor.h
qqnxforeignwindow.cpp qqnxforeignwindow.h
qqnxglobal.cpp qqnxglobal.h
qqnxintegration.cpp qqnxintegration.h
qqnxkeytranslator.h
qqnxlgmon.h
qqnxnativeinterface.cpp qqnxnativeinterface.h
qqnxnavigatoreventhandler.cpp qqnxnavigatoreventhandler.h
qqnxrasterbackingstore.cpp qqnxrasterbackingstore.h
qqnxrasterwindow.cpp qqnxrasterwindow.h
qqnxscreen.cpp qqnxscreen.h
qqnxscreeneventfilter.h
qqnxscreeneventhandler.cpp qqnxscreeneventhandler.h
qqnxscreeneventthread.cpp qqnxscreeneventthread.h
qqnxservices.cpp qqnxservices.h
qqnxwindow.cpp qqnxwindow.h
PUBLIC_LIBRARIES
Qt::Core
Qt::CorePrivate
Qt::Gui
Qt::GuiPrivate
screen
)
#### Keys ignored in scope 1:.:.:qnx.pro:<TRUE>:
# OTHER_FILES = "qnx.json"
## Scopes:
#####################################################################
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_egl
SOURCES
qqnxeglwindow.cpp qqnxeglwindow.h
qqnxglcontext.cpp qqnxglcontext.h
PUBLIC_LIBRARIES
EGL::EGL
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_qqnx_pps
SOURCES
qqnxbuttoneventnotifier.cpp qqnxbuttoneventnotifier.h
qqnxnavigatoreventnotifier.cpp qqnxnavigatoreventnotifier.h
qqnxnavigatorpps.cpp qqnxnavigatorpps.h
qqnxvirtualkeyboardpps.cpp qqnxvirtualkeyboardpps.h
PUBLIC_LIBRARIES
PPS::PPS
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_clipboard AND QT_FEATURE_qqnx_pps
SOURCES
qqnxclipboard.cpp qqnxclipboard.h
PUBLIC_LIBRARIES
clipboard
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_qqnx_imf AND QT_FEATURE_qqnx_pps
SOURCES
qqnxinputcontext_imf.cpp qqnxinputcontext_imf.h
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_qqnx_pps AND NOT QT_FEATURE_qqnx_imf
SOURCES
qqnxinputcontext_noimf.cpp qqnxinputcontext_noimf.h
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_lgmon
SOURCES
qqnxlgmon.cpp
DEFINES
QQNX_LGMON
PUBLIC_LIBRARIES
lgmon
)
#### Keys ignored in scope 8:.:.:qnx.pro:NOT TARGET___equals____ss_QT_DEFAULT_QPA_PLUGIN:
# PLUGIN_EXTENDS = "-"

View File

@ -0,0 +1,92 @@
# Generated from qnx.pro.
#####################################################################
## QQnxIntegrationPlugin Plugin:
#####################################################################
qt_internal_add_plugin(QQnxIntegrationPlugin
OUTPUT_NAME qqnx
TYPE platforms
DEFAULT_IF ${QT_QPA_DEFAULT_PLATFORM} MATCHES qnx # special case
SOURCES
main.cpp main.h
qqnxabstractcover.h
qqnxabstractnavigator.cpp qqnxabstractnavigator.h
qqnxabstractvirtualkeyboard.cpp qqnxabstractvirtualkeyboard.h
qqnxbuffer.cpp qqnxbuffer.h
qqnxcursor.cpp qqnxcursor.h
qqnxforeignwindow.cpp qqnxforeignwindow.h
qqnxglobal.cpp qqnxglobal.h
qqnxintegration.cpp qqnxintegration.h
qqnxkeytranslator.h
qqnxlgmon.h
qqnxnativeinterface.cpp qqnxnativeinterface.h
qqnxnavigatoreventhandler.cpp qqnxnavigatoreventhandler.h
qqnxrasterbackingstore.cpp qqnxrasterbackingstore.h
qqnxrasterwindow.cpp qqnxrasterwindow.h
qqnxscreen.cpp qqnxscreen.h
qqnxscreeneventfilter.h
qqnxscreeneventhandler.cpp qqnxscreeneventhandler.h
qqnxscreeneventthread.cpp qqnxscreeneventthread.h
qqnxservices.cpp qqnxservices.h
qqnxwindow.cpp qqnxwindow.h
LIBRARIES
Qt::Core
Qt::CorePrivate
Qt::Gui
Qt::GuiPrivate
screen
)
#### Keys ignored in scope 1:.:.:qnx.pro:<TRUE>:
# OTHER_FILES = "qnx.json"
## Scopes:
#####################################################################
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_egl
SOURCES
qqnxeglwindow.cpp qqnxeglwindow.h
qqnxglcontext.cpp qqnxglcontext.h
PUBLIC_LIBRARIES
EGL::EGL
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_qqnx_pps
SOURCES
qqnxbuttoneventnotifier.cpp qqnxbuttoneventnotifier.h
qqnxnavigatoreventnotifier.cpp qqnxnavigatoreventnotifier.h
qqnxnavigatorpps.cpp qqnxnavigatorpps.h
qqnxvirtualkeyboardpps.cpp qqnxvirtualkeyboardpps.h
PUBLIC_LIBRARIES
PPS::PPS
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_clipboard AND QT_FEATURE_qqnx_pps
SOURCES
qqnxclipboard.cpp qqnxclipboard.h
PUBLIC_LIBRARIES
clipboard
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_qqnx_imf AND QT_FEATURE_qqnx_pps
SOURCES
qqnxinputcontext_imf.cpp qqnxinputcontext_imf.h
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION QT_FEATURE_qqnx_pps AND NOT QT_FEATURE_qqnx_imf
SOURCES
qqnxinputcontext_noimf.cpp qqnxinputcontext_noimf.h
)
qt_internal_extend_target(QQnxIntegrationPlugin CONDITION lgmon
SOURCES
qqnxlgmon.cpp
DEFINES
QQNX_LGMON
PUBLIC_LIBRARIES
lgmon
)
#### Keys ignored in scope 8:.:.:qnx.pro:NOT TARGET___equals____ss_QT_DEFAULT_QPA_PLUGIN:
# PLUGIN_EXTENDS = "-"

View File

@ -946,10 +946,12 @@ void QQnxWindow::applyWindowState()
void QQnxWindow::windowPosted()
{
if (m_cover)
if (m_cover) {
m_cover->updateCover();
qqnxLgmonFramePosted(m_cover); // for performance measurements
qqnxLgmonFramePosted(true); // for performance measurements
} else {
qqnxLgmonFramePosted(false); // for performance measurements
}
}
bool QQnxWindow::shouldMakeFullScreen() const