Subject: bug#21348: bug#21469: bug#21348: 25.0.50; Screen scaling factor >=2 causes menus, tooltips to display in the wrong place

From: martin rudalics <[email-masked]>
Date: Tue, 13 Oct 2015 19:21:41 +0200

> TABLE: `(set-frame-parameter nil 'left ,x)
 > _____________________________________________
 > x       | actual frame distance from left screen edge (px)
 > 0       | 20
 > 500   | 520
 > 1600 | 1620
 > 1800 | 1772
 > 2000 | 1772
 >
 > A few observations:
 > 1) offset of 20 pixels
 > I've never noticed this issue because it doesn't affect maximized
 > frames. Maybe that number 20 is significant somehow, or perhaps this
 > is a separate bug. The first time after I start `emacs -Q` and set the
 > left frame edge to 0, the frame flashes momentarily into place flush
 > with the left screen edge, for perhaps a single video frame, and then
 > jumps 20 pixels to the right.

This might be window manager related.  Can you try again with the
‘user-position’ frame parameter non-nil?  Like

(modify-frame-parameters nil '((left . 0) (user-position . t)))

 > Subsequent calls to set the left frame
 > edge to 0 do not trigger this flashing behavior.

You mean on a subsequent attempt the frame is flushed left or still at
position 20.  What happens when you try something similar with the ‘top’
parameter?

 > 2) numbers are proportional, modulo the unexplained offset
 > We do not see doubling behavior here. I have added no scaling code
 > pertaining to frame positioning.

Does that mean the offset of 20 pixels appears with scaling turned off
and on?

 > 3) frame "sticks" to the right screen edge
 > Given the width of the frame I was testing with, when the left frame
 > edge is 1772 pixels from the left screen edge, the right frame edge is
 > flush with the right screen edge. Setting the left frame edge to a
 > greater value does not result in a further movement of the frame.

So the window manager probably constrains frame positioning.  What
happens with a frame larger than the screen size?

And does ‘set-mouse-absolute-pixel-position’ work normally?

martin