(compute_tip_xy): Use x_display_pixel_width and

x_display_pixel_height.
This commit is contained in:
Chong Yidong 2008-09-22 15:52:24 +00:00
parent 6cb3af4a2b
commit 889bd43841

View file

@ -2417,7 +2417,8 @@ The return value is a list of integers (LEFT TOP WIDTH HEIGHT), which
/* Ensure in bounds. (Note, screen origin = lower left.) */
if (pt.x + XINT (dx) <= 0)
*root_x = 0; /* Can happen for negative dx */
else if (pt.x + XINT (dx) + width <= FRAME_NS_DISPLAY_INFO (f)->width)
else if (pt.x + XINT (dx) + width
<= x_display_pixel_width (FRAME_NS_DISPLAY_INFO (f)))
/* It fits to the right of the pointer. */
*root_x = pt.x + XINT (dx);
else if (width + XINT (dx) <= pt.x)
@ -2430,12 +2431,13 @@ The return value is a list of integers (LEFT TOP WIDTH HEIGHT), which
if (pt.y - XINT (dy) - height >= 0)
/* It fits below the pointer. */
*root_y = pt.y - height - XINT (dy);
else if (pt.y + XINT (dy) + height <= FRAME_NS_DISPLAY_INFO (f)->height)
else if (pt.y + XINT (dy) + height
<= x_display_pixel_height (FRAME_NS_DISPLAY_INFO (f)))
/* It fits above the pointer */
*root_y = pt.y + XINT (dy);
else
/* Put it on the top. */
*root_y = FRAME_NS_DISPLAY_INFO (f)->height - height;
*root_y = x_display_pixel_height (FRAME_NS_DISPLAY_INFO (f)) - height;
}