fix bug in show after maximize
svn: r6062
This commit is contained in:
parent
7632fae64f
commit
138009b8a5
|
@ -173,7 +173,7 @@
|
||||||
[(i) (send wx set-icon i)]
|
[(i) (send wx set-icon i)]
|
||||||
[(i b) (send wx set-icon i b)]
|
[(i b) (send wx set-icon i b)]
|
||||||
[(i b l?) (send wx set-icon i b l?)])]
|
[(i b l?) (send wx set-icon i b l?)])]
|
||||||
[maximize (entry-point (lambda (on?) (send wx maximize on?)))]
|
[maximize (entry-point (lambda (on?) (send wx position-for-initial-show) (send wx maximize on?)))]
|
||||||
[get-menu-bar (entry-point (lambda () (let ([mb (send wx get-the-menu-bar)])
|
[get-menu-bar (entry-point (lambda () (let ([mb (send wx get-the-menu-bar)])
|
||||||
(and mb (wx->mred mb)))))]
|
(and mb (wx->mred mb)))))]
|
||||||
[modified (entry-point
|
[modified (entry-point
|
||||||
|
|
|
@ -335,24 +335,8 @@
|
||||||
;; pass now to superclass's show.
|
;; pass now to superclass's show.
|
||||||
[show
|
[show
|
||||||
(lambda (on?)
|
(lambda (on?)
|
||||||
(when (and on? pending-redraws?)
|
(when on?
|
||||||
(force-redraw))
|
(position-for-initial-show))
|
||||||
(when (and on? use-default-position?)
|
|
||||||
(set! use-default-position? #f)
|
|
||||||
(if dlg?
|
|
||||||
(center 'both)
|
|
||||||
(let*-values ([(w) (get-width)]
|
|
||||||
[(h) (get-height)]
|
|
||||||
[(sw sh) (get-display-size)]
|
|
||||||
[(x x-reset?) (if (< (+ top-x w) sw)
|
|
||||||
(values top-x #f)
|
|
||||||
(values (max 0 (- sw w 10)) #t))]
|
|
||||||
[(y y-reset?) (if (< (+ top-y h) sh)
|
|
||||||
(values top-y #f)
|
|
||||||
(values (max 0 (- sh h 20)) #t))])
|
|
||||||
(move x y)
|
|
||||||
(set! top-x (if x-reset? init-top-x (+ top-x 10)))
|
|
||||||
(set! top-y (if y-reset? init-top-y (+ top-y 20))))))
|
|
||||||
(if on?
|
(if on?
|
||||||
(hash-table-put! top-level-windows this #t)
|
(hash-table-put! top-level-windows this #t)
|
||||||
(hash-table-remove! top-level-windows this))
|
(hash-table-remove! top-level-windows this))
|
||||||
|
@ -390,6 +374,26 @@
|
||||||
(wx:queue-callback (lambda () (resized)) #t))))])
|
(wx:queue-callback (lambda () (resized)) #t))))])
|
||||||
|
|
||||||
(public
|
(public
|
||||||
|
[position-for-initial-show
|
||||||
|
(lambda ()
|
||||||
|
(when pending-redraws?
|
||||||
|
(force-redraw))
|
||||||
|
(when use-default-position?
|
||||||
|
(set! use-default-position? #f)
|
||||||
|
(if dlg?
|
||||||
|
(center 'both)
|
||||||
|
(let*-values ([(w) (get-width)]
|
||||||
|
[(h) (get-height)]
|
||||||
|
[(sw sh) (get-display-size)]
|
||||||
|
[(x x-reset?) (if (< (+ top-x w) sw)
|
||||||
|
(values top-x #f)
|
||||||
|
(values (max 0 (- sw w 10)) #t))]
|
||||||
|
[(y y-reset?) (if (< (+ top-y h) sh)
|
||||||
|
(values top-y #f)
|
||||||
|
(values (max 0 (- sh h 20)) #t))])
|
||||||
|
(move x y)
|
||||||
|
(set! top-x (if x-reset? init-top-x (+ top-x 10)))
|
||||||
|
(set! top-y (if y-reset? init-top-y (+ top-y 20)))))))]
|
||||||
[handle-traverse-key
|
[handle-traverse-key
|
||||||
(lambda (e)
|
(lambda (e)
|
||||||
(and panel
|
(and panel
|
||||||
|
|
Loading…
Reference in New Issue
Block a user