diff options
| -rw-r--r-- | area_unix.go | 11 | ||||
| -rw-r--r-- | events_notdarwin.go | 6 |
2 files changed, 12 insertions, 5 deletions
diff --git a/area_unix.go b/area_unix.go index 9e1370d..08dd48d 100644 --- a/area_unix.go +++ b/area_unix.go @@ -281,8 +281,12 @@ var extkeys = map[C.guint]ExtKey{ C.GDK_KEY_F10: F10, C.GDK_KEY_F11: F11, C.GDK_KEY_F12: F12, - // numpad numeric keys are handled in events_notdarwin.go + // numpad numeric keys and . are handled in events_notdarwin.go C.GDK_KEY_KP_Enter: NEnter, + C.GDK_KEY_KP_Add: NAdd, + C.GDK_KEY_KP_Subtract: NSubtract, + C.GDK_KEY_KP_Multiply: NMultiply, + C.GDK_KEY_KP_Divide: NDivide, } // sanity check @@ -292,7 +296,10 @@ func init() { included[v] = true } for i := 1; i < int(_nextkeys); i++ { - if i >= int(_N0) && i <= int(_N9) { // skip numpad numbers + if i >= int(N0) && i <= int(N9) { // skip numpad numbers and . + continue + } + if i == int(NDot) { continue } if !included[i] { diff --git a/events_notdarwin.go b/events_notdarwin.go index 56a8951..dc407e0 100644 --- a/events_notdarwin.go +++ b/events_notdarwin.go @@ -73,8 +73,8 @@ var scancodeKeys = map[uintptr]byte{ 0x39: ' ', } -type scancodeExtKeys = map[uintptr]ExtKey{ -/* 0x47: N7, +var scancodeExtKeys = map[uintptr]ExtKey{ + 0x47: N7, 0x48: N8, 0x49: N9, 0x4B: N4, @@ -85,7 +85,7 @@ type scancodeExtKeys = map[uintptr]ExtKey{ 0x51: N3, 0x52: N0, 0x53: NDot, -*/} +} func fromScancode(scancode uintptr) (ke KeyEvent, ok bool) { if key, ok := scancodeKeys[scancode]; ok { |
