Fixed advance keycode translation
This commit is contained in:
parent
84cd21b16d
commit
c6c7383ef2
@ -5,7 +5,8 @@ import "github.com/jezek/xgb/xproto"
|
||||
import "github.com/jezek/xgbutil/keybind"
|
||||
import "git.tebibyte.media/sashakoshka/stone"
|
||||
|
||||
// when making changes to this file, look at keysymdef.h
|
||||
// when making changes to this file, look at keysymdef.h and
|
||||
// https://tronche.com/gui/x/xlib/input/keyboard-encoding.html
|
||||
|
||||
var buttonCodeTable = map[xproto.Keysym] stone.Button {
|
||||
0xFFFFFF: stone.ButtonUnknown,
|
||||
@ -19,7 +20,7 @@ var buttonCodeTable = map[xproto.Keysym] stone.Button {
|
||||
0xFF7F: stone.KeyNumLock,
|
||||
0xFF08: stone.KeyBackspace,
|
||||
0xFF09: stone.KeyTab,
|
||||
0xFF0A: stone.KeyEnter,
|
||||
0xFF0D: stone.KeyEnter,
|
||||
0xFF1B: stone.KeyEscape,
|
||||
|
||||
0xFF52: stone.KeyUp,
|
||||
@ -147,25 +148,18 @@ func (backend *Backend) keycodeToButton (
|
||||
}
|
||||
|
||||
case shift:
|
||||
selectedKeysym = symbol3
|
||||
selectedRune = symbol3Rune
|
||||
selectedKeysym = symbol2
|
||||
selectedRune = symbol2Rune
|
||||
}
|
||||
|
||||
// look up in table
|
||||
var isControl bool
|
||||
button, isControl = buttonCodeTable[selectedKeysym]
|
||||
if isControl { return }
|
||||
|
||||
button = stone.Button(selectedRune)
|
||||
|
||||
// TODO: shift isnt working. follow
|
||||
// https://tronche.com/gui/x/xlib/input/keyboard-encoding.html
|
||||
|
||||
println("--")
|
||||
println(keycode)
|
||||
println(selectedKeysym)
|
||||
println(selectedRune)
|
||||
println(button)
|
||||
// if it wasn't found,
|
||||
if !isControl {
|
||||
button = stone.Button(selectedRune)
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user