[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: master 57d2f24: * lisp/frame.el (make-frame-on-monitor): New command
From: |
Juri Linkov |
Subject: |
Re: master 57d2f24: * lisp/frame.el (make-frame-on-monitor): New command. (Bug#34516) |
Date: |
Thu, 28 Feb 2019 22:40:15 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) |
> If Iʼve understood correctly, you want to create a frame that covers
> the entire workarea of the chosen monitor. Would it not work to
> specify the x,y of the top corner plus (fullscreen . maximized) rather
> than specifying the width and height explicitly? That will do the
> toolbar/titlebar/scrollbar subtractions for you (I haven't tested this).
I already have this for personal customization in ~/.emacs:
(add-hook 'after-make-frame-functions 'toggle-frame-maximized)
(advice-add 'make-frame-on-monitor :around
(lambda (orig-fun monitor &optional display parameters)
(funcall orig-fun monitor display '((undecorated . t))))
'((name . make-frame-on-monitor-undecorated)))
But my intention was to implement a general command that would make
a new frame according to the physical monitor attributes returned by
display-monitor-attributes-list.
I have no idea why display-monitor-attributes-list returns
workarea that doesn't fit into the created frame on macOS.
While testing it without customization in GDK on GNU/Linux,
I see that the created frames cover the whole physical monitor,
including toolbar/titlebar/scrollbar.
Maybe there is still an issue in ns-display-monitor-attributes-list?