shiny/driver/gldriver: add missing modifier key codes on cocoa
key.ControlRight and kVK_RightCommand were found by looking in
HIToolbox/Events.h as well as experimenting with Karabiner-Elements.
Fixes golang/go#32131.
Change-Id: I90c76a3983109cdc2d0a645d7955b631d94ee2ee
Reviewed-on: https://go-review.googlesource.com/c/exp/+/188378
Reviewed-by: Nigel Tao <nigeltao@golang.org>
diff --git a/shiny/driver/gldriver/cocoa.go b/shiny/driver/gldriver/cocoa.go
index ff3c26b..b258bdc 100644
--- a/shiny/driver/gldriver/cocoa.go
+++ b/shiny/driver/gldriver/cocoa.go
@@ -231,11 +231,11 @@
{1<<17 | 0x102, C.kVK_Shift, key.ModShift},
{1<<17 | 0x104, C.kVK_RightShift, key.ModShift},
{1<<18 | 0x101, C.kVK_Control, key.ModControl},
- // TODO key.ControlRight
+ {33<<13 | 0x100, C.kVK_RightControl, key.ModControl},
{1<<19 | 0x120, C.kVK_Option, key.ModAlt},
{1<<19 | 0x140, C.kVK_RightOption, key.ModAlt},
{1<<20 | 0x108, C.kVK_Command, key.ModMeta},
- {1<<20 | 0x110, C.kVK_Command, key.ModMeta}, // TODO: missing kVK_RightCommand
+ {1<<20 | 0x110, 0x36 /* kVK_RightCommand */, key.ModMeta},
}
func cocoaMods(flags uint32) (m key.Modifiers) {