From a62eed0c165d22dd68452d59e5397be7d7a70ec3 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Wed, 10 Oct 2007 20:52:33 +0000 Subject: [PATCH] made a timer with a 1 second delay to avoid writing to the file system too much under linux svn: r7478 --- collects/drscheme/private/unit.ss | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/collects/drscheme/private/unit.ss b/collects/drscheme/private/unit.ss index 806a555f98..dfe8ed5a90 100644 --- a/collects/drscheme/private/unit.ss +++ b/collects/drscheme/private/unit.ss @@ -2077,18 +2077,23 @@ module browser threading seems wrong. (preferences:set 'drscheme:unit-window-max? (is-maximized?)) (super on-size w h)) - (define on-move-callback-waiting #f) + (define on-move-timer-args #f) + (define on-move-timer #f) (define/override (on-move x y) (cond - [on-move-callback-waiting - (set! on-move-callback-waiting (cons x y))] + [on-move-timer + (set! on-move-timer-args (cons x y))] [else - (set! on-move-callback-waiting (cons x y)) - (queue-callback - (λ () - (preferences:set 'drscheme:frame:initial-position on-move-callback-waiting) - (set! on-move-callback-waiting #f)) - #f)])) + (set! on-move-timer-args (cons x y)) + (set! on-move-timer + (new timer% + [notify-callback + (λ () + (set! on-move-timer #f) + (set! on-move-timer-args #f) + (preferences:set 'drscheme:frame:initial-position on-move-timer-args))] + [interval 1000] + [just-once? #t]))])) (define/override (get-editor) definitions-text) (define/override (get-canvas)