bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#18657: 24.4.50; positioning frames on multi-monitor displays


From: Drew Adams
Subject: bug#18657: 24.4.50; positioning frames on multi-monitor displays
Date: Tue, 7 Oct 2014 14:18:13 -0700 (PDT)

As an update, the OP who reported the issue to me confirms that he
is using MS Windows (I thought he was not).  And he sent me this
info from his setup:

(frame-parameters):

((tool-bar-position . top) (parent-id) (explicit-name) (display . "w32") 
(visibility . t) (icon-name) (window-id . "459396") (top . 11) (left + -1249) 
(buried-buffer-list) (buffer-list #<buffer *Messages*> #<buffer  *Minibuf-1*> 
#<buffer procedure-codes.org> #<buffer  *Agenda Commands*> #<buffer *Org 
Agenda(w)*> #<buffer work-log.org>) (unsplittable) ...

M-x maximize-frame

(frame-parameters):
((tool-bar-position . top) (parent-id) (explicit-name) (display . "w32") 
(visibility . t) (icon-name) (window-id . "459396") (top . 0) (left . 0) 
(buried-buffer-list) (buffer-list #<buffer *Messages*> #<buffer  *Minibuf-1*> 
#<buffer procedure-codes.org> #<buffer  *Agenda Commands*> #<buffer *Org 
Agenda(w)*> #<buffer work-log.org>) (unsplittable) ...)
M-x restore-frame
((tool-bar-position . top) (parent-id) (explicit-name) (display . "w32") 
(visibility . t) (icon-name) (window-id . "459396") (top . 11) (left + -1249) 
(buried-buffer-list) (buffer-list #<buffer *Messages*> #<buffer  *Minibuf-1*> 
#<buffer procedure-codes.org> #<buffer  *Agenda Commands*> #<buffer *Org 
Agenda(w)*> #<buffer work-log.org>) (unsplittable) ...)

Based on that, I've sent him an updated version of `maximize-frame'
(from `frame-cmds.el'), which differs only in not using (0,0) as the
position coordinates systematically.  Instead, it uses this:

(nth 1 (assq 'workarea (frame-monitor-attributes frame))) ; For left
(nth 2 (assq 'workarea (frame-monitor-attributes frame))) ; For right

Andy, perhaps you could try that?

[I'm assuming that the `workarea' and `geometry' values are, in order:
LEFT TOP, WIDTH HEIGHT.

FWIW, The doc of `display-monitor-attributes-list' refers to them as
X Y WIDTH HEIGHT, and the doc of `frame-monitor-attributes' refers to
the `d-m-a-l' doc.  Not so clear (What are X and Y? What units for
WIDTH and HEIGHT?), but better than nothing.

(BTW, if these essentially follow the `geometry' X Window spec, why
is the order changed from what is used for that?)]





reply via email to

[Prev in Thread] Current Thread [Next in Thread]