diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-07-03 08:32:08 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-07-04 20:46:07 +0200 |
commit | 864466d2e5ae9ab7a2e01a7da3abc5a4c0b16bda (patch) | |
tree | f1c09a2320f2455d3f2c81a9e91031f4a8b9d849 | |
parent | 90f1ef14aaf2f4b4dc49755ab8605e6a37ee06c6 (diff) |
Move xkbcommon to QtGui
Task-number: QTBUG-83255
Change-Id: Ia1c6a49af6be4aaa6b988537c38db3a2c0a646a5
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
20 files changed, 46 insertions, 103 deletions
diff --git a/src/gui/.prev_CMakeLists.txt b/src/gui/.prev_CMakeLists.txt index 4d2148170a..31eb39fb95 100644 --- a/src/gui/.prev_CMakeLists.txt +++ b/src/gui/.prev_CMakeLists.txt @@ -751,6 +751,14 @@ qt_extend_target(Gui CONDITION QT_FEATURE_systemtrayicon AND TARGET Qt::DBus AND platform/unix/dbustray/qxdgnotificationproxy.cpp platform/unix/dbustray/qxdgnotificationproxy_p.h ) +qt_extend_target(Gui CONDITION QT_FEATURE_xkbcommon AND UNIX + SOURCES + platform/unix/qxkbcommon.cpp platform/unix/qxkbcommon_p.h + platform/unix/qxkbcommon_3rdparty.cpp + PUBLIC_LIBRARIES + XKB::XKB +) + qt_extend_target(Gui CONDITION IOS OR MACOS SOURCES rhi/qrhimetal.mm rhi/qrhimetal_p.h diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index aff73daeee..db6f463c0b 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -898,6 +898,14 @@ qt_extend_target(Gui CONDITION QT_FEATURE_systemtrayicon AND TARGET Qt::DBus AND platform/unix/dbustray/qxdgnotificationproxy.cpp platform/unix/dbustray/qxdgnotificationproxy_p.h ) +qt_extend_target(Gui CONDITION QT_FEATURE_xkbcommon AND UNIX + SOURCES + platform/unix/qxkbcommon.cpp platform/unix/qxkbcommon_p.h + platform/unix/qxkbcommon_3rdparty.cpp + PUBLIC_LIBRARIES + XKB::XKB +) + qt_extend_target(Gui CONDITION IOS OR MACOS SOURCES rhi/qrhimetal.mm rhi/qrhimetal_p.h diff --git a/src/platformsupport/input/xkbcommon/qxkbcommon.cpp b/src/gui/platform/unix/qxkbcommon.cpp index 877c5d848f..540dbbc842 100644 --- a/src/platformsupport/input/xkbcommon/qxkbcommon.cpp +++ b/src/gui/platform/unix/qxkbcommon.cpp @@ -459,9 +459,9 @@ QString QXkbCommon::lookupStringNoKeysymTransformations(xkb_keysym_t keysym) return QString::fromUtf8(chars.constData(), size - 1); } -QVector<xkb_keysym_t> QXkbCommon::toKeysym(QKeyEvent *event) +QList<xkb_keysym_t> QXkbCommon::toKeysym(QKeyEvent *event) { - QVector<xkb_keysym_t> keysyms; + QList<xkb_keysym_t> keysyms; int qtKey = event->key(); if (qtKey >= Qt::Key_F1 && qtKey <= Qt::Key_F35) { diff --git a/src/platformsupport/input/xkbcommon/qxkbcommon_3rdparty.cpp b/src/gui/platform/unix/qxkbcommon_3rdparty.cpp index 08f43b3b72..c5062cc8d9 100644 --- a/src/platformsupport/input/xkbcommon/qxkbcommon_3rdparty.cpp +++ b/src/gui/platform/unix/qxkbcommon_3rdparty.cpp @@ -101,6 +101,8 @@ #include <QtCore/QChar> +QT_BEGIN_NAMESPACE + static void qt_UCSConvertCase(uint32_t code, xkb_keysym_t *lower, xkb_keysym_t *upper) { *lower = QChar::toLower(code); @@ -217,3 +219,5 @@ void QXkbCommon::xkbcommon_XConvertCase(xkb_keysym_t sym, xkb_keysym_t *lower, x break; } } + +QT_END_NAMESPACE diff --git a/src/platformsupport/input/xkbcommon/qxkbcommon_p.h b/src/gui/platform/unix/qxkbcommon_p.h index 561eae03db..d5fa47d4fe 100644 --- a/src/platformsupport/input/xkbcommon/qxkbcommon_p.h +++ b/src/gui/platform/unix/qxkbcommon_p.h @@ -44,17 +44,17 @@ // W A R N I N G // ------------- // -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to // version without notice, or even be removed. // // We mean it. // -#include <QtCore/QString> -#include <QtCore/QVector> -#include <QtCore/QLoggingCategory> -#include <QtCore/QList> +#include <QtGui/qtguiglobal.h> +#include <QtCore/qstring.h> +#include <QtCore/qloggingcategory.h> +#include <QtCore/qlist.h> #include <xkbcommon/xkbcommon.h> @@ -68,13 +68,13 @@ class QEvent; class QKeyEvent; class QPlatformInputContext; -class QXkbCommon +class Q_GUI_EXPORT QXkbCommon { public: static QString lookupString(struct xkb_state *state, xkb_keycode_t code); static QString lookupStringNoKeysymTransformations(xkb_keysym_t keysym); - static QVector<xkb_keysym_t> toKeysym(QKeyEvent *event); + static QList<xkb_keysym_t> toKeysym(QKeyEvent *event); static int keysymToQtKey(xkb_keysym_t keysym, Qt::KeyboardModifiers modifiers); static int keysymToQtKey(xkb_keysym_t keysym, Qt::KeyboardModifiers modifiers, diff --git a/src/gui/platform/unix/unix.pri b/src/gui/platform/unix/unix.pri index b12f3147a3..a51e27f1ee 100644 --- a/src/gui/platform/unix/unix.pri +++ b/src/gui/platform/unix/unix.pri @@ -34,3 +34,12 @@ if(unix:!uikit:!macos)|qtConfig(xcb) { qtConfig(systemtrayicon): include(dbustray/dbustray.pri) } } + +qtConfig(xkbcommon) { + SOURCES += \ + platform/unix/qxkbcommon_3rdparty.cpp \ + platform/unix/qxkbcommon.cpp + HEADERS += \ + platform/unix/qxkbcommon_p.h + QMAKE_USE += xkbcommon +} diff --git a/src/platformsupport/input/.prev_CMakeLists.txt b/src/platformsupport/input/.prev_CMakeLists.txt index f8c05e9f97..63f88bbb63 100644 --- a/src/platformsupport/input/.prev_CMakeLists.txt +++ b/src/platformsupport/input/.prev_CMakeLists.txt @@ -17,7 +17,7 @@ qt_add_module(InputSupport "../../corelib/global/qt_pch.h" ) -#### Keys ignored in scope 3:.:.:input-support.pro:<TRUE>: +#### Keys ignored in scope 2:.:.:input-support.pro:<TRUE>: # MODULE = "input_support" ## Scopes: @@ -77,13 +77,6 @@ qt_extend_target(InputSupport CONDITION QT_FEATURE_libinput PkgConfig::Libudev ) -qt_extend_target(InputSupport CONDITION QT_FEATURE_libinput AND QT_FEATURE_xkbcommon - LIBRARIES - XKB::XKB - PUBLIC_LIBRARIES - Qt::XkbCommonSupportPrivate -) - qt_extend_target(InputSupport CONDITION QT_FEATURE_evdev OR QT_FEATURE_libinput SOURCES shared/devicehandlerlist_p.h @@ -97,6 +90,3 @@ qt_extend_target(InputSupport CONDITION QT_FEATURE_integrityhid LIBRARIES integrityhid ) -if(QT_FEATURE_xkbcommon) - add_subdirectory(xkbcommon) -endif() diff --git a/src/platformsupport/input/CMakeLists.txt b/src/platformsupport/input/CMakeLists.txt index 7ab93df062..2c2a9fa1cc 100644 --- a/src/platformsupport/input/CMakeLists.txt +++ b/src/platformsupport/input/CMakeLists.txt @@ -22,7 +22,7 @@ qt_add_module(InputSupport "../../corelib/global/qt_pch.h" ) -#### Keys ignored in scope 3:.:.:input-support.pro:<TRUE>: +#### Keys ignored in scope 2:.:.:input-support.pro:<TRUE>: # MODULE = "input_support" ## Scopes: @@ -82,13 +82,6 @@ qt_extend_target(InputSupport CONDITION QT_FEATURE_libinput PkgConfig::Libudev ) -qt_extend_target(InputSupport CONDITION QT_FEATURE_libinput AND QT_FEATURE_xkbcommon - LIBRARIES - XKB::XKB - PUBLIC_LIBRARIES - Qt::XkbCommonSupportPrivate -) - qt_extend_target(InputSupport CONDITION QT_FEATURE_evdev OR QT_FEATURE_libinput SOURCES shared/devicehandlerlist_p.h @@ -102,6 +95,3 @@ qt_extend_target(InputSupport CONDITION QT_FEATURE_integrityhid LIBRARIES integrityhid ) -if(QT_FEATURE_xkbcommon) - add_subdirectory(xkbcommon) -endif() diff --git a/src/platformsupport/input/input.pro b/src/platformsupport/input/input.pro index 138c04dea3..f418a0deee 100644 --- a/src/platformsupport/input/input.pro +++ b/src/platformsupport/input/input.pro @@ -1,8 +1,6 @@ TEMPLATE = subdirs QT_FOR_CONFIG += gui-private -qtConfig(xkbcommon): SUBDIRS += xkbcommon - SUBDIRS += input-support.pro ### FIXME - QTBUG-52657 CONFIG += ordered diff --git a/src/platformsupport/input/libinput/libinput.pri b/src/platformsupport/input/libinput/libinput.pri index f80b5f41d9..74164a3c9b 100644 --- a/src/platformsupport/input/libinput/libinput.pri +++ b/src/platformsupport/input/libinput/libinput.pri @@ -13,8 +13,3 @@ SOURCES += \ QMAKE_USE_PRIVATE += libudev libinput INCLUDEPATH += $$PWD/../shared - -qtConfig(xkbcommon): { - QMAKE_USE_PRIVATE += xkbcommon - QT += xkbcommon_support-private -} diff --git a/src/platformsupport/input/libinput/qlibinputkeyboard.cpp b/src/platformsupport/input/libinput/qlibinputkeyboard.cpp index 4961d8d530..aebd18a1a7 100644 --- a/src/platformsupport/input/libinput/qlibinputkeyboard.cpp +++ b/src/platformsupport/input/libinput/qlibinputkeyboard.cpp @@ -46,7 +46,7 @@ #if QT_CONFIG(xkbcommon) #include <xkbcommon/xkbcommon-keysyms.h> #include <xkbcommon/xkbcommon-names.h> -#include <QtXkbCommonSupport/private/qxkbcommon_p.h> +#include <QtGui/private/qxkbcommon_p.h> #endif QT_BEGIN_NAMESPACE diff --git a/src/platformsupport/input/xkbcommon/CMakeLists.txt b/src/platformsupport/input/xkbcommon/CMakeLists.txt deleted file mode 100644 index 86d132d912..0000000000 --- a/src/platformsupport/input/xkbcommon/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -# Generated from xkbcommon.pro. - -##################################################################### -## XkbCommonSupport Module: -##################################################################### - -qt_add_module(XkbCommonSupport - STATIC - INTERNAL_MODULE - SOURCES - qxkbcommon.cpp qxkbcommon_p.h - qxkbcommon_3rdparty.cpp - DEFINES - QT_NO_CAST_FROM_ASCII - PUBLIC_LIBRARIES - Qt::CorePrivate - Qt::GuiPrivate - XKB::XKB - PRECOMPILED_HEADER - "../../../corelib/global/qt_pch.h" -) - -#### Keys ignored in scope 1:.:.:xkbcommon.pro:<TRUE>: -# MODULE = "xkbcommon_support" - -## Scopes: -##################################################################### - -qt_extend_target(XkbCommonSupport CONDITION CLANG AND NOT ICC - COMPILE_OPTIONS - -ftemplate-depth=1024 -) diff --git a/src/platformsupport/input/xkbcommon/xkbcommon.pro b/src/platformsupport/input/xkbcommon/xkbcommon.pro deleted file mode 100644 index 22b16ae44a..0000000000 --- a/src/platformsupport/input/xkbcommon/xkbcommon.pro +++ /dev/null @@ -1,23 +0,0 @@ -TARGET = QtXkbCommonSupport -MODULE = xkbcommon_support - -QT = core-private gui-private -CONFIG += static internal_module - -DEFINES += QT_NO_CAST_FROM_ASCII -PRECOMPILED_HEADER = ../../../corelib/global/qt_pch.h - -QMAKE_USE += xkbcommon - -HEADERS += \ - qxkbcommon_p.h - -SOURCES += \ - qxkbcommon.cpp \ - qxkbcommon_3rdparty.cpp - -# qxkbcommon.cpp::KeyTbl has more than 256 levels of expansion and older -# Clang uses that as a limit (it's 1024 in current versions). -clang:!intel_icc: QMAKE_CXXFLAGS += -ftemplate-depth=1024 - -load(qt_module) diff --git a/src/plugins/platforminputcontexts/ibus/CMakeLists.txt b/src/plugins/platforminputcontexts/ibus/CMakeLists.txt index ed75d7062a..a2f2275795 100644 --- a/src/plugins/platforminputcontexts/ibus/CMakeLists.txt +++ b/src/plugins/platforminputcontexts/ibus/CMakeLists.txt @@ -19,7 +19,6 @@ qt_internal_add_plugin(QIbusPlatformInputContextPlugin Qt::DBus Qt::Gui Qt::GuiPrivate - Qt::XkbCommonSupportPrivate ) #### Keys ignored in scope 1:.:.:ibus.pro:<TRUE>: diff --git a/src/plugins/platforminputcontexts/ibus/ibus.pro b/src/plugins/platforminputcontexts/ibus/ibus.pro index 9ba2297e38..52836bb8b6 100644 --- a/src/plugins/platforminputcontexts/ibus/ibus.pro +++ b/src/plugins/platforminputcontexts/ibus/ibus.pro @@ -1,6 +1,6 @@ TARGET = ibusplatforminputcontextplugin -QT += dbus gui-private xkbcommon_support-private +QT += dbus gui-private SOURCES += $$PWD/qibusplatforminputcontext.cpp \ $$PWD/qibusproxy.cpp \ $$PWD/qibusproxyportal.cpp \ diff --git a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp index 16c0ebfe21..c50f03de05 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp +++ b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp @@ -51,7 +51,7 @@ #include <QtGui/private/qguiapplication_p.h> -#include <QtXkbCommonSupport/private/qxkbcommon_p.h> +#include <QtGui/private/qxkbcommon_p.h> #include "qibusproxy.h" #include "qibusproxyportal.h" diff --git a/src/plugins/platforms/xcb/.prev_CMakeLists.txt b/src/plugins/platforms/xcb/.prev_CMakeLists.txt index db0d1adb16..7f0a0b01d0 100644 --- a/src/plugins/platforms/xcb/.prev_CMakeLists.txt +++ b/src/plugins/platforms/xcb/.prev_CMakeLists.txt @@ -42,7 +42,6 @@ qt_add_module(XcbQpa PkgConfig::XKB_COMMON_X11 Qt::CorePrivate Qt::GuiPrivate - Qt::XkbCommonSupportPrivate XCB::ICCCM XCB::IMAGE XCB::KEYSYMS diff --git a/src/plugins/platforms/xcb/CMakeLists.txt b/src/plugins/platforms/xcb/CMakeLists.txt index 5193823904..a7c2d5610a 100644 --- a/src/plugins/platforms/xcb/CMakeLists.txt +++ b/src/plugins/platforms/xcb/CMakeLists.txt @@ -42,7 +42,6 @@ qt_add_module(XcbQpa PkgConfig::XKB_COMMON_X11 Qt::CorePrivate Qt::GuiPrivate - Qt::XkbCommonSupportPrivate XCB::ICCCM XCB::IMAGE XCB::KEYSYMS diff --git a/src/plugins/platforms/xcb/qxcbkeyboard.h b/src/plugins/platforms/xcb/qxcbkeyboard.h index 0ee08aeff2..cf89acff6d 100644 --- a/src/plugins/platforms/xcb/qxcbkeyboard.h +++ b/src/plugins/platforms/xcb/qxcbkeyboard.h @@ -47,7 +47,7 @@ #include <xcb/xkb.h> #undef explicit -#include <QtXkbCommonSupport/private/qxkbcommon_p.h> +#include <QtGui/private/qxkbcommon_p.h> #include <xkbcommon/xkbcommon-x11.h> #include <QEvent> diff --git a/src/plugins/platforms/xcb/xcb_qpa_lib.pro b/src/plugins/platforms/xcb/xcb_qpa_lib.pro index 1b42a60e0c..809ae2b212 100644 --- a/src/plugins/platforms/xcb/xcb_qpa_lib.pro +++ b/src/plugins/platforms/xcb/xcb_qpa_lib.pro @@ -3,8 +3,7 @@ CONFIG += no_module_headers internal_module DEFINES += QT_NO_FOREACH QT += \ - core-private gui-private \ - xkbcommon_support-private + core-private gui-private qtConfig(opengl): QT += opengl-private |