made drs remember the frame's position and use it for the initial position
svn: r6676
This commit is contained in:
parent
ce0b5fec2f
commit
70b48d535f
|
@ -57,6 +57,12 @@
|
||||||
(finder:default-filters)))
|
(finder:default-filters)))
|
||||||
(application:current-app-name (string-constant drscheme))
|
(application:current-app-name (string-constant drscheme))
|
||||||
|
|
||||||
|
(preferences:set-default 'drscheme:frame:initial-position #f
|
||||||
|
(λ (x) (or (not x)
|
||||||
|
(and (pair? x)
|
||||||
|
(number? (car x))
|
||||||
|
(number? (cdr x))))))
|
||||||
|
|
||||||
(preferences:set-default 'drscheme:limit-memory #f
|
(preferences:set-default 'drscheme:limit-memory #f
|
||||||
(λ (x) (or (boolean? x)
|
(λ (x) (or (boolean? x)
|
||||||
(integer? x)
|
(integer? x)
|
||||||
|
@ -462,8 +468,8 @@
|
||||||
[no-dups (remove-duplicates normalized/filtered)]
|
[no-dups (remove-duplicates normalized/filtered)]
|
||||||
[frames
|
[frames
|
||||||
(map (λ (f) (handler:edit-file
|
(map (λ (f) (handler:edit-file
|
||||||
f
|
f
|
||||||
(λ () (drscheme:unit:open-drscheme-window f))))
|
(λ () (drscheme:unit:open-drscheme-window f))))
|
||||||
no-dups)])
|
no-dups)])
|
||||||
(when (null? (filter (λ (x) x) frames))
|
(when (null? (filter (λ (x) x) frames))
|
||||||
(make-basic))))
|
(make-basic))))
|
||||||
|
|
|
@ -1156,6 +1156,9 @@ module browser threading seems wrong.
|
||||||
file-menu:get-save-as-item
|
file-menu:get-save-as-item
|
||||||
file-menu:get-revert-item
|
file-menu:get-revert-item
|
||||||
file-menu:get-print-item)
|
file-menu:get-print-item)
|
||||||
|
|
||||||
|
(define/override (on-move x y)
|
||||||
|
(preferences:set 'drscheme:frame:initial-position (cons x y)))
|
||||||
|
|
||||||
;; logging : (union #f string[directory-name])
|
;; logging : (union #f string[directory-name])
|
||||||
(field [logging #f]
|
(field [logging #f]
|
||||||
|
@ -3606,10 +3609,16 @@ module browser threading seems wrong.
|
||||||
(create-new-drscheme-frame name)))]
|
(create-new-drscheme-frame name)))]
|
||||||
[else
|
[else
|
||||||
(create-new-drscheme-frame name)])]))
|
(create-new-drscheme-frame name)])]))
|
||||||
|
|
||||||
|
(define first-frame? #t)
|
||||||
(define (create-new-drscheme-frame filename)
|
(define (create-new-drscheme-frame filename)
|
||||||
(let* ([drs-frame% (drscheme:get/extend:get-unit-frame)]
|
(let* ([drs-frame% (drscheme:get/extend:get-unit-frame)]
|
||||||
[frame (new drs-frame% (filename filename))])
|
[frame (new drs-frame% (filename filename))])
|
||||||
(send (send frame get-interactions-text) initialize-console)
|
(send (send frame get-interactions-text) initialize-console)
|
||||||
|
(when first-frame?
|
||||||
|
(let ([pos (preferences:get 'drscheme:frame:initial-position)])
|
||||||
|
(when pos
|
||||||
|
(send frame move (car pos) (cdr pos)))))
|
||||||
|
(set! first-frame? #f)
|
||||||
(send frame show #t)
|
(send frame show #t)
|
||||||
frame))))
|
frame))))
|
||||||
|
|
Loading…
Reference in New Issue
Block a user