emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master 162660c: Avoid duplicate calls of window-height in


From: Juri Linkov
Subject: [Emacs-diffs] master 162660c: Avoid duplicate calls of window-height in with-displayed-buffer-window
Date: Sat, 27 Dec 2014 00:55:01 +0000

branch: master
commit 162660c3639a68a7b71439bdd713d54f940274b8
Author: Juri Linkov <address@hidden>
Commit: Juri Linkov <address@hidden>

    Avoid duplicate calls of window-height in with-displayed-buffer-window
    
    * lisp/minibuffer.el (minibuffer-completion-help):
    Use shrink-window-if-larger-than-buffer in window-height
    when temp-buffer-resize-mode is nil.
    
    * lisp/window.el (with-displayed-buffer-window): Remove window-height
    from the action alist in the temp-buffer-window-show call
    when window-height is handled explicitly afterwards.
    
    Fixes: debbugs:19355
---
 lisp/ChangeLog     |   10 ++++++++++
 lisp/minibuffer.el |    5 +++--
 lisp/window.el     |    7 ++++++-
 3 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 0c32173..5a42e50 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,15 @@
 2014-12-27  Juri Linkov  <address@hidden>
 
+       * minibuffer.el (minibuffer-completion-help):
+       Use shrink-window-if-larger-than-buffer in window-height
+       when temp-buffer-resize-mode is nil.
+
+       * window.el (with-displayed-buffer-window): Remove window-height
+       from the action alist in the temp-buffer-window-show call
+       when window-height is handled explicitly afterwards (bug#19355).
+
+2014-12-27  Juri Linkov  <address@hidden>
+
        Support subdirectories when saving places in dired.
        * saveplace.el (toggle-save-place, save-place-to-alist)
        (save-places-to-alist, save-place-dired-hook):
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index e1e6b0e..9198901 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -1818,8 +1818,9 @@ variables.")
              ,(if (eq (selected-window) (minibuffer-window))
                   'display-buffer-at-bottom
                 'display-buffer-below-selected))
-           ,(when temp-buffer-resize-mode
-              '(window-height . resize-temp-buffer-window))
+           ,(if temp-buffer-resize-mode
+                '(window-height . resize-temp-buffer-window)
+              '(window-height . shrink-window-if-larger-than-buffer))
            ,(when temp-buffer-resize-mode
               '(preserve-size . (nil . t))))
           nil
diff --git a/lisp/window.el b/lisp/window.el
index 2b593c3..21bd2c5 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -237,7 +237,12 @@ displays the buffer specified by BUFFER-OR-NAME before 
running BODY."
              (standard-output ,buffer)
              ,window ,value)
         (with-current-buffer ,buffer
-          (setq ,window (temp-buffer-window-show ,buffer ,vaction)))
+          (setq ,window (temp-buffer-window-show
+                         ,buffer
+                         ;; Remove window-height when it's handled below.
+                         (if (functionp (cdr (assq 'window-height (cdr 
,vaction))))
+                             (assq-delete-all 'window-height (copy-sequence 
,vaction))
+                           ,vaction))))
 
         (let ((inhibit-read-only t)
               (inhibit-modification-hooks t))



reply via email to

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