diff --git a/collects/mred/private/wx/cocoa/canvas.rkt b/collects/mred/private/wx/cocoa/canvas.rkt index 551eed0d..7e3d0cdb 100644 --- a/collects/mred/private/wx/cocoa/canvas.rkt +++ b/collects/mred/private/wx/cocoa/canvas.rkt @@ -612,6 +612,7 @@ 1)])) (define/override (enable-window on?) + ;; in atomic mode (let ([on? (and on? (is-window-enabled?))]) (let ([w (tell content-cocoa window)]) (when (ptr-equal? content-cocoa (tell w firstResponder)) diff --git a/collects/mred/private/wx/cocoa/window.rkt b/collects/mred/private/wx/cocoa/window.rkt index 0c37a04e..dbe29c72 100644 --- a/collects/mred/private/wx/cocoa/window.rkt +++ b/collects/mred/private/wx/cocoa/window.rkt @@ -520,9 +520,11 @@ (define/public (is-window-enabled?) enabled?) (define/public (enable on?) - (set! enabled? on?) - (enable-window on?)) + (atomically + (set! enabled? on?) + (enable-window on?))) (define/public (enable-window on?) + ;; in atomic mode (void)) (define block-all-mouse-events? #f)