[racket] Second display monitor issue

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Thu May 24 20:32:06 EDT 2012

I've pretty much no clue how to fix it, but the code you see is in
collects/mred/private/wx/win32/frame.rkt. The display-origin function
(it is called from mred/private/wxtop.rkt).


On Thu, May 24, 2012 at 7:08 PM, Kieron Hardy <kieron.hardy at gmail.com> wrote:
> Hi all,
> On one of my client's laptops (Windows 7), the attached code detects the
> second display monitor (get-display-count returns 2), but prints exactly the
> same values for the location and size of the two displays. i.e. The top-left
> coordinate and size values returned ((0,0)  and 1024 x 768)  are the same
> for both monitors. This effectively maps the second monitor underneath(?)
> the main monitor, making it inaccessible to Racket.
> In this particular case the second monitor is a TV connected through the
> laptop's s-video port. Windows itself sees the two displays and is
> configured to extend the desktop over both of them and 'Identify monitors'
> works as expected. At least one other program can see and use the TV without
> problems.
> Racket has no problems seeing and using a second display monitor on this
> same laptop when that second monitor is a video converter box connected
> through the laptop's VGA port. Also Racket has no problems seeing and using
> a TV as a second display monitor when connected to my (Vista) laptop's HDMI
> port.
> What can I do to troubleshoot this problem? I have searched the source for
> both 'get-display-left-top-inset' and 'monitor' and only find something
> relevant in .html and .js document files. Where in the source should I be
> looking?
> Thanks in advance for any help.
> Cheers,
> Kieron.
> ****
> #lang racket/gui
> (printf "display-count:~a\n" (get-display-count))
> (printf "display-depth:~a\n" (get-display-depth))
> (for ([m (in-range 0 (get-display-count))])
>   (let-values ([(mx my) (get-display-left-top-inset #f #:monitor m)]
>                [(mxwob mywob) (get-display-left-top-inset #t #:monitor m)]
>                [(mw mh) (get-display-size #f #:monitor m)]
>                [(mwfs mhfs) (get-display-size #t #:monitor m)]
>     )
>     (printf "monitor:~a (~a ~a) (~a ~a) (~a ~a) (~a ~a)~n" m mx my mxwob
> mywob mw mh mwfs mhfs)
>     )
>   )
> ____________________
>  Racket Users list:
>  http://lists.racket-lang.org/users

Posted on the users mailing list.