emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs-27 b42b894: Fix fit-frame-to-buffer for multi-monitor setup


From: Martin Rudalics
Subject: emacs-27 b42b894: Fix fit-frame-to-buffer for multi-monitor setup
Date: Sun, 1 Mar 2020 13:52:59 -0500 (EST)

branch: emacs-27
commit b42b894d1def7180ab715615116fe6af65b76bd8
Author: Sergey Trofimov <address@hidden>
Commit: Martin Rudalics <address@hidden>

    Fix fit-frame-to-buffer for multi-monitor setup
    
    * lisp/window.el (fit-frame-to-buffer): Call
    'frame-monitor-attributes' instead of
    'display-monitor-attributes-list'.  Fix geometry calculations for
    multiple monitors.
    
    Copyright-paperwork-exempt: yes
---
 lisp/window.el | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/lisp/window.el b/lisp/window.el
index 40c4bf5..ceab43f 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -8794,8 +8794,7 @@ parameters of FRAME."
            (parent (frame-parent frame))
            (monitor-attributes
             (unless parent
-              (car (display-monitor-attributes-list
-                    (frame-parameter frame 'display)))))
+              (frame-monitor-attributes frame)))
            ;; FRAME'S parent or display sizes.  Used in connection
            ;; with margins.
            (geometry
@@ -8804,11 +8803,11 @@ parameters of FRAME."
            (parent-or-display-width
             (if parent
                 (frame-native-width parent)
-              (- (nth 2 geometry) (nth 0 geometry))))
+              (nth 2 geometry)))
            (parent-or-display-height
             (if parent
                 (frame-native-height parent)
-              (- (nth 3 geometry) (nth 1 geometry))))
+              (nth 3 geometry)))
            ;; FRAME's parent or workarea sizes.  Used when no margins
            ;; are specified.
            (parent-or-workarea
@@ -8870,13 +8869,15 @@ parameters of FRAME."
                                 (window--sanitize-margin
                                  (nth 2 margins) left-margin
                                  parent-or-display-width))
-                           (nth 2 parent-or-workarea)))
+                           (+ (nth 0 parent-or-workarea)
+                              (nth 2 parent-or-workarea))))
            (bottom-margin (if (nth 3 margins)
                               (- parent-or-display-height
                                  (window--sanitize-margin
                                   (nth 3 margins) top-margin
                                   parent-or-display-height))
-                            (nth 3 parent-or-workarea)))
+                            (+ (nth 1 parent-or-workarea)
+                               (nth 3 parent-or-workarea))))
            ;; Minimum and maximum sizes specified for FRAME.
            (sizes (or (frame-parameter frame 'fit-frame-to-buffer-sizes)
                       fit-frame-to-buffer-sizes))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]