forked from joejulian/gio
app/internal/xkb: translate physical "Backtab" keys to Shift-Tab
Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
@@ -124,6 +124,11 @@ func (x *Context) DispatchKey(keyCode uint32) (events []event.Event) {
|
||||
sym := C.xkb_state_key_get_one_sym(x.state, C.xkb_keycode_t(keyCode))
|
||||
if n, ok := convertKeysym(sym); ok {
|
||||
cmd := key.Event{Name: n}
|
||||
// Ensure that a physical backtab key is translated to
|
||||
// Shift-Tab.
|
||||
if sym == C.XKB_KEY_ISO_Left_Tab {
|
||||
cmd.Modifiers |= key.ModShift
|
||||
}
|
||||
if C.xkb_state_mod_name_is_active(x.state, (*C.char)(unsafe.Pointer(&_XKB_MOD_NAME_CTRL[0])), C.XKB_STATE_MODS_EFFECTIVE) == 1 {
|
||||
cmd.Modifiers |= key.ModCtrl
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user