gtk: fix xkb mapping not working in Linux (#9454)
commit
cf06417b7d
|
|
@ -1139,13 +1139,14 @@ pub const Surface = extern struct {
|
||||||
if (entry.native == keycode) break :w3c entry.key;
|
if (entry.native == keycode) break :w3c entry.key;
|
||||||
} else .unidentified;
|
} else .unidentified;
|
||||||
|
|
||||||
// If the key should be remappable, then consult the pre-remapped
|
// Consult the pre-remapped XKB keyval/keysym to get the (possibly)
|
||||||
// XKB keyval/keysym to get the (possibly) remapped key.
|
// remapped key. If the W3C key or the remapped key
|
||||||
|
// is eligible for remapping, we use it.
|
||||||
//
|
//
|
||||||
// See the docs for `shouldBeRemappable` for why we even have to
|
// See the docs for `shouldBeRemappable` for why we even have to
|
||||||
// do this in the first place.
|
// do this in the first place.
|
||||||
if (w3c_key.shouldBeRemappable()) {
|
if (gtk_key.keyFromKeyval(keyval)) |remapped| {
|
||||||
if (gtk_key.keyFromKeyval(keyval)) |remapped|
|
if (w3c_key.shouldBeRemappable() or remapped.shouldBeRemappable())
|
||||||
break :keycode remapped;
|
break :keycode remapped;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue