Subject: bug#76051: 29.4; Incorrect workarea entry in display-monitor-attributes-list on macOS

From: Eli Zaretskii <[email-masked]>
Date: Sat, 08 Feb 2025 13:05:30 +0200

> From: Anders Lindgren <[email-masked]>
> Date: Tue, 4 Feb 2025 14:42:07 +0100
> 
> I think the `display-monitor-attributes-list' function returns an incorrect `workarea' entry on macOS.
> 
> Concretely, I have a laptop with an external monitor connected. The external monitor is placed above to the
> left.
> 
> The `display-monitor-attributes-list' function returns the following (abbreviated):
> 
>     (((geometry 0 0 1728 1117) (workarea 0 38 1728 1079) ...
>      ((geometry -2560 -723 2560 1440) (workarea -2560 -638 2560 1330) ...))
> 
> The first member in the list describes the laptop monitor (the primary monitor), the second the external
> monitor.
> 
> The first two numbers, `X' and `Y', in each entry describe the position of the top left corner of the area,
> relative to the top left corner of the primary monitor.
> 
> The number that I think is incorrect is the `Y' of the workarea of the external monitor, which is "-638". It
> indicates that there is a (723-638 = 85 pixel area on top of the screen which is outside the work area.)
> 
> However, in reality, there is a 25 pixel menu bar which should be outside the work area. The 85 probably
> comes from the macOS dock, which is placed in the lower part of the screen.
> 
> The height field correctly includes both the menu bar and the dock.
> 
> I've tested this on Emacs 29.4 and 30.0.93 on macOS 15.1.

Thanks.  Maybe Po Lu and Alan (CC'ed) could help here.