diff --git a/pkgs/drracket-pkgs/drracket/drracket/private/frame.rkt b/pkgs/drracket-pkgs/drracket/drracket/private/frame.rkt index 76ce3087b9..71e7daa726 100644 --- a/pkgs/drracket-pkgs/drracket/drracket/private/frame.rkt +++ b/pkgs/drracket-pkgs/drracket/drracket/private/frame.rkt @@ -231,8 +231,7 @@ (send receiver get-editor) receiver) event)) - ;; (printf "user-key? ~s\n" user-key?) returns #t - ;; for key release events -- is this a problem? (we'll find out!) + ;; (printf "user-key? ~s\n" user-key?) (or user-key? (super on-subwindow-char receiver event))) diff --git a/pkgs/gui-pkgs/gui-lib/mred/private/wxme/keymap.rkt b/pkgs/gui-pkgs/gui-lib/mred/private/wxme/keymap.rkt index 462a29aa1d..426f23b9d2 100644 --- a/pkgs/gui-pkgs/gui-lib/mred/private/wxme/keymap.rkt +++ b/pkgs/gui-pkgs/gui-lib/mred/private/wxme/keymap.rkt @@ -457,11 +457,12 @@ (def/public (handle-key-event [any? obj] [key-event% event]) (let ([code (send event get-key-code)]) - (or (eq? code 'shift) - (eq? code 'rshift) - (eq? code 'control) - (eq? code 'rcontrol) - (eq? code 'release) + (if (or (eq? code 'shift) + (eq? code 'rshift) + (eq? code 'control) + (eq? code 'rcontrol) + (eq? code 'release)) + prefixed? (let ([score (get-best-score code (send event get-other-shift-key-code)