From 225ea79377e547dc85f1058be5db0438d8b8ac0a Mon Sep 17 00:00:00 2001 From: Ryan Culpepper Date: Thu, 22 Oct 2009 05:50:06 +0000 Subject: [PATCH] macro-stepper: eliminated spurious update on initial frame "resize" svn: r16406 original commit: 98ce5f37afee9e6c5f2b6261621cae63a9195211 --- collects/macro-debugger/view/frame.ss | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/collects/macro-debugger/view/frame.ss b/collects/macro-debugger/view/frame.ss index d57308e..9c5eb54 100644 --- a/collects/macro-debugger/view/frame.ss +++ b/collects/macro-debugger/view/frame.ss @@ -33,6 +33,7 @@ (define obsoleted? #f) (inherit get-area-container + get-size set-label get-menu% get-menu-item% @@ -53,10 +54,16 @@ " - Macro stepper") "Macro stepper")) + ;; Grrr... we get a spurious on-size event sometime after the + ;; frame is created, probably when the window-manager gets around + ;; to doing something. Avoid unnecessary updates. + (define-values (w0 h0) (get-size)) (define/override (on-size w h) (send: config config<%> set-width w) (send: config config<%> set-height h) - (send: widget widget<%> update/preserve-view)) + (unless (and (= w0 w) (= h0 h)) + (send: widget widget<%> update/preserve-view)) + (set!-values (w0 h0) (values w h))) (define warning-panel (new horizontal-panel%