fix frame registration on show' when current-eventspace' is weird

(i.e., not the frame's eventspace)
 Closes PR 11573

original commit: ffd4193e32317f730b9dd064aa00df2ebc1cb75b
This commit is contained in:
Matthew Flatt 2010-12-29 07:45:49 -07:00
parent bb8f88f28d
commit 93a64e3ebf
2 changed files with 6 additions and 5 deletions

View File

@ -122,8 +122,9 @@
;; Make sure we're in the right eventspace:
(let ([wx (->wx wxb)])
(and wx
(eq? (current-eventspace)
(send wx get-eventspace))))
(eq? (current-thread)
(eventspace-handler-thread
(send wx get-eventspace)))))
;; Right event space, so handle the event:
(do-mouse-event wxb event 'motion #f #f #f))]
[-a _void (mouseEntered: [_id event])

View File

@ -453,9 +453,9 @@
(queue-event es cb 'timer-remove)))
(define (register-frame-shown f on?)
(queue-event (current-eventspace) f (if on?
'frame-add
'frame-remove)))
(queue-event (send f get-eventspace) f (if on?
'frame-add
'frame-remove)))
(define (get-top-level-windows [e (current-eventspace)])
;; called in event-pump thread