* Getting display origin
@ 2005-06-08 11:28 David Reitter
0 siblings, 0 replies; 3+ messages in thread
From: David Reitter @ 2005-06-08 11:28 UTC (permalink / raw)
Hi,
could someone tell me how to get the origin of the display?
I'm asking because on the Mac port (Carbon, not X11), the x-ordinates
can easily become negative.
I've checked for some display-pixel-* function, and I've tried Google.
What I need to know is what the available range of coordinates are
that are visible on the current display. I can get the width with
display-pixel-width, but at least on the Mac, it doesn't always start
at 0. For example, (frame-parameter (selected-frame) 'left) can
return something like (+ -1045) if the frame in question is on the
left screen of a multi-screen setup (with the menu bar = origin on
the right).
Thanks
Dave
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Getting display origin
[not found] <mailman.3839.1118231061.25862.help-gnu-emacs@gnu.org>
@ 2005-06-08 17:44 ` rgb
0 siblings, 0 replies; 3+ messages in thread
From: rgb @ 2005-06-08 17:44 UTC (permalink / raw)
> What I need to know is what the available range of coordinates are
> that are visible on the current display. I can get the width with
> display-pixel-width, but at least on the Mac, it doesn't always start
> at 0. For example, (frame-parameter (selected-frame) 'left) can
> return something like (+ -1045) if the frame in question is on the
> left screen of a multi-screen setup (with the menu bar = origin on
> the right).
>
Well I certainly couldn't find it either but if you do there's
more problems you will need to deal with. Supplying negative
coordinates to set-frame-parameter causes the position to be
relative to the righthand side of both the frame and screen.
That is, (set-frame-parameter (selected-frame) 'left -1) puts
the inside right edge of the frame one pixel from the right edge
of the display. So on my XP machine I had to use this to get
the frame's right edge entirely within the lefthand display.
(set-frame-parameter
(selected-frame) 'left
(- (+ (display-pixel-width x-display-name)
(* 3 (frame-parameter (selected-frame) 'border-width)))))
I'm not sure how generic you want your support to be but there
is nothing that forces additional monitors to have the same size
as the primary and on my machine I can configure the secondary
display anywhere along the border of the primary display.
Meaning above, below, half way down one side... . This, along
with the monitor size being different, it's a real mess!
I also found that if my frame has negative coordinates the mouse
wheel doesn't work. I was eventually forced to rearrange my
work area to have the primary on the left. I reported the problem
as a bug but don't know if it was ever fixed. It's been months
since I've tried it.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Getting display origin
@ 2005-06-10 19:25 David Reitter
0 siblings, 0 replies; 3+ messages in thread
From: David Reitter @ 2005-06-10 19:25 UTC (permalink / raw)
Cc: rbielaws
rgb:
> Supplying negative
> coordinates to set-frame-parameter causes the position to be
> relative to the righthand side of both the frame and screen.
Well that's a good hint already. At least I get stuff to appear on
the left screen that way.
(display-screens) returns 1; I reckon that's correct because we have
two displays (the width is the width of the main display).
But (x-display-list) only gives me a list of one. Now that sounds
like a bug to me. ?
Guess I'll check the code some time.
Mouse wheel works fine everywhere. (but that's on OS X).
thanks so far
- D
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-06-10 19:25 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <mailman.3839.1118231061.25862.help-gnu-emacs@gnu.org>
2005-06-08 17:44 ` Getting display origin rgb
2005-06-10 19:25 David Reitter
-- strict thread matches above, loose matches on Subject: below --
2005-06-08 11:28 David Reitter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).