forked from hexagon-geo-surv/qtbase
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
platformsupport/input: add xkbcommon utilities lib
xcb/eglfs/wayland - all use XKB keyboard configs and APIs. There is a lot of duplicated and naturally a diverging code. This patch adds a helper library to avoid all the mentioned problems and unify feature set between these platforms. qlibinputkeyboard: Added a fixup for 2803cdf. From spec: "keysyms, when bound to modifiers, affect the rules [..]", meaning we can't look at keys in isolation, but have to check if bounding exists in the keymap. This is done by using xkb_state_mod_name_is_active() API, but that API has its limitations - xkbcommon/libxkbcommon#88 I will fix this separately in the LTS (5.12) branch. We need to read the modifier state before the key action. This patch fixes a regression introduced by aforementioned patch, which caused modifiers being reported wrongly in QKeyEvent::modifiers(). qtwayland: Moved toKeysym(QKeyEvent) from qtwayland repository into this library. For this and other key mapping functionality wayland was duplicating the key table. All of that will be removed from qtwayland, and calls will be replaced to use this lib. Adjusted toKeysym() to fix QTBUG-71301. Qt keys don't map to ASCII codes, so first we need search in our key table, instead of mapping from unicode. lookupStringNoKeysymTransformations(): fixed off-by-one error, where we were including terminating NUL in QString. Fixes: QTBUG-71301 Task-number: QTBUG-65503 Change-Id: Idfddea5b34ad620235dc08c0b9e5a0669111821a Reviewed-by: Johan Helsing <[email protected]>
- Loading branch information
1 parent
f9421f0
commit a34e81a
Showing
13 changed files
with
1,043 additions
and
956 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
TARGET = QtInputSupport | ||
MODULE = input_support | ||
|
||
QT = core-private gui-private devicediscovery_support-private | ||
CONFIG += static internal_module | ||
|
||
DEFINES += QT_NO_CAST_FROM_ASCII | ||
PRECOMPILED_HEADER = ../../corelib/global/qt_pch.h | ||
|
||
qtConfig(evdev) { | ||
include($$PWD/evdevmouse/evdevmouse.pri) | ||
include($$PWD/evdevkeyboard/evdevkeyboard.pri) | ||
include($$PWD/evdevtouch/evdevtouch.pri) | ||
qtConfig(tabletevent) { | ||
include($$PWD/evdevtablet/evdevtablet.pri) | ||
} | ||
} | ||
|
||
qtConfig(tslib) { | ||
include($$PWD/tslib/tslib.pri) | ||
} | ||
|
||
qtConfig(libinput) { | ||
include($$PWD/libinput/libinput.pri) | ||
} | ||
|
||
qtConfig(evdev)|qtConfig(libinput) { | ||
include($$PWD/shared/shared.pri) | ||
} | ||
|
||
qtConfig(integrityhid) { | ||
include($$PWD/integrityhid/integrityhid.pri) | ||
} | ||
|
||
load(qt_module) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,35 +1,8 @@ | ||
TARGET = QtInputSupport | ||
MODULE = input_support | ||
TEMPLATE = subdirs | ||
QT_FOR_CONFIG += gui-private | ||
|
||
QT = core-private gui-private devicediscovery_support-private | ||
CONFIG += static internal_module | ||
qtConfig(xkbcommon): SUBDIRS += xkbcommon | ||
|
||
DEFINES += QT_NO_CAST_FROM_ASCII | ||
PRECOMPILED_HEADER = ../../corelib/global/qt_pch.h | ||
SUBDIRS += input-support.pro ### FIXME - QTBUG-52657 | ||
|
||
qtConfig(evdev) { | ||
include($$PWD/evdevmouse/evdevmouse.pri) | ||
include($$PWD/evdevkeyboard/evdevkeyboard.pri) | ||
include($$PWD/evdevtouch/evdevtouch.pri) | ||
qtConfig(tabletevent) { | ||
include($$PWD/evdevtablet/evdevtablet.pri) | ||
} | ||
} | ||
|
||
qtConfig(tslib) { | ||
include($$PWD/tslib/tslib.pri) | ||
} | ||
|
||
qtConfig(libinput) { | ||
include($$PWD/libinput/libinput.pri) | ||
} | ||
|
||
qtConfig(evdev)|qtConfig(libinput) { | ||
include($$PWD/shared/shared.pri) | ||
} | ||
|
||
qtConfig(integrityhid) { | ||
include($$PWD/integrityhid/integrityhid.pri) | ||
} | ||
|
||
load(qt_module) | ||
CONFIG += ordered |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.