From d1c4d0e2690ac5d5bcee20900d2167ff6c0b629c Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 8 May 2007 06:57:32 +0000 Subject: [PATCH] fix problem with the application-file handler when all windows are minized (PR 8640) svn: r6175 --- collects/mred/private/mrtop.ss | 4 +++- collects/mred/private/wxtop.ss | 10 ++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/collects/mred/private/mrtop.ss b/collects/mred/private/mrtop.ss index f61c67f780..9b3fe5c61c 100644 --- a/collects/mred/private/mrtop.ss +++ b/collects/mred/private/mrtop.ss @@ -239,7 +239,9 @@ label parent)))))) (define root-menu-frame #f) - (define (set-root-menu-frame! f) (set! root-menu-frame f)) + (define (set-root-menu-frame! f) + (set! root-menu-frame f) + (set-root-menu-wx-frame! (mred->wx f))) (define (get-top-level-windows) (remq root-menu-frame (map wx->mred (wx:get-top-level-windows)))) diff --git a/collects/mred/private/wxtop.ss b/collects/mred/private/wxtop.ss index d8bace448a..9929e1cf7d 100644 --- a/collects/mred/private/wxtop.ss +++ b/collects/mred/private/wxtop.ss @@ -13,7 +13,8 @@ "wxwindow.ss" "wxcontainer.ss") - (provide (protect active-main-frame) + (provide (protect active-main-frame + set-root-menu-wx-frame!) get-display-size get-display-left-top-inset (protect make-top-container% @@ -23,6 +24,10 @@ ;; Weak boxed: (define active-main-frame (make-weak-box #f)) + + (define root-menu-wx-frame #f) + (define (set-root-menu-wx-frame! f) + (set! root-menu-wx-frame f)) (define get-display-size (opt-lambda ([full-screen? #f]) @@ -583,7 +588,8 @@ (when on? (set! act-date/seconds (current-seconds)) (set! act-date/milliseconds (current-milliseconds)) - (when (wx:main-eventspace? (get-eventspace)) + (when (and (wx:main-eventspace? (get-eventspace)) + (not (eq? this root-menu-wx-frame))) (set! active-main-frame (make-weak-box this)))) ;; Send refresh to subwindows that need it (set! activate-refresh-wins (filter weak-box-value activate-refresh-wins))