path: root/src/plugins/platforminputcontexts/compose/
diff options
authorGatis Paeglis <>2014-10-24 16:31:48 +0200
committerGatis Paeglis <>2019-03-01 14:31:37 +0000
commit2065bc070dcd1f88a1f5ba3dd6ef0139a9a441ec (patch)
treeb31ce3dc68ff29274399708edb61a840daaf383b /src/plugins/platforminputcontexts/compose/
parenta34e81ab8be6445877e040b1afb85deeaa725f86 (diff)
platforminputcontexts: use libxkbcommon compose key API
Our implementation of compose table parser was added on Mar, 2013. libxkbcommon added APIs for the same thing in Oct, 2014 (ver: 0.5.0). After removing RHEL 6.6 from the list of supported platforms we were able to move the minimal required libxkbcommon version to 0.5.0. Now we can use the xkbcommon-compose APIs on all supported platforms. With this patch we can drop nearly 1000 lines of maintenance burden. This patch fixes user reported issues with our implementation. Known issues: - Testing revealed that xkbcommon-compose does not support non-utf8 locales, and that is by design - Our implementation did work for those locales too, but it is unclear if anyone actually uses non-utf8 locales. It is a corner case (work-arounds existing) and likely a configuration error on the users' system. - Looking at the release notes for versions above 0.6.1, only one issue that stands out. Compose input does not work on system with tr_TR.UTF-8 locale, fixed in 0.7.1. Compose input works fine when using e.g. en_US.UTF-8 locale with Turkish keyboard layout. Note: With Qt 5.13 we have removed Ubuntu 16.04 and openSUSE 42.3 from CI: Ubuntu 16.04 - 0.5.0 openSUSE 42.3 - 0.6.1 CI for Qt 5.13 has: Ubuntu 18.04 - 0.8.0 RHEL-7.4 - 0.7.1 openSUSE 15.0 - 0.8.1 Currently the minimal required libxkbcommon version in src/gui/configure.json is set to 0.5.0, but we could bump it to 0.7.1 to avoid known issues from above, but that is a decision for a separate patch. [ChangeLog][plugins][platforminputcontexts] Now using libxkbcommon-compose APIs for compose key input, instead of Qt's own implementation. Fixes: QTBUG-42181 Fixes: QTBUG-53663 Fixes: QTBUG-48657 Change-Id: I79aafe2bc601293844066e7e5f5eddd3719c6bba Reviewed-by: Giulio Camuffo <> Reviewed-by: Johan Helsing <>
Diffstat (limited to 'src/plugins/platforminputcontexts/compose/')
1 files changed, 2 insertions, 6 deletions
diff --git a/src/plugins/platforminputcontexts/compose/ b/src/plugins/platforminputcontexts/compose/
index 68bc2c3466..2e2f8600c3 100644
--- a/src/plugins/platforminputcontexts/compose/
+++ b/src/plugins/platforminputcontexts/compose/
@@ -3,18 +3,14 @@ TARGET = composeplatforminputcontextplugin
QT += core-private gui-private
SOURCES += $$PWD/qcomposeplatforminputcontextmain.cpp \
- $$PWD/qcomposeplatforminputcontext.cpp \
- $$PWD/generator/qtablegenerator.cpp \
+ $$PWD/qcomposeplatforminputcontext.cpp
-HEADERS += $$PWD/qcomposeplatforminputcontext.h \
- $$PWD/generator/qtablegenerator.h \
+HEADERS += $$PWD/qcomposeplatforminputcontext.h
QMAKE_USE_PRIVATE += xkbcommon
OTHER_FILES += $$PWD/compose.json
PLUGIN_TYPE = platforminputcontexts