Subject: Re: bug#30074: 26.0; Add function(s) for current monitor info

From: Lars Ingebrigtsen <[email-masked]>
Date: Sun, 14 Jul 2019 19:46:42 +0200

Drew Adams <[email-masked]> writes:

> Please consider adding a function that returns the info describing the
> monitor that dominates a frame (default: selected frame).  In
> particular, the size of the monitor.  This can be useful, for example,
> for positioning a frame when there are multiple monitors.
>
> I've been using this, but you might have a better implementation in
> mind:
>
> (defun current-monitor (&optional frame)
>   "Attributes of monitor that dominates FRAME (default: `selected-frame')."
>   (catch 'current-monitor
>     (dolist (atts  (display-monitor-attributes-list frame))
>       (when (member (or frame  (selected-frame)) (cdr (assq 'frames atts)))
>         (throw 'current-monitor atts)))
>     nil))                              ; Should never happen (?)

I guess it's possible for a frame to be on several monitors?  (Half on
one and half on another.)  What would this function return in that case?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no