emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/exwm 74555b2: Simplify `exwm-workspace--display-buffer'


From: Chris Feng
Subject: [elpa] externals/exwm 74555b2: Simplify `exwm-workspace--display-buffer'
Date: Sun, 28 Feb 2016 12:07:18 +0000

branch: externals/exwm
commit 74555b25c2dccacd550762d339175494d3d78562
Author: Chris Feng <address@hidden>
Commit: Chris Feng <address@hidden>

    Simplify `exwm-workspace--display-buffer'
    
    * exwm-workspace.el (exwm-workspace--display-buffer): Make it simpler and
    more reliable.
---
 exwm-workspace.el |   21 +++++----------------
 1 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/exwm-workspace.el b/exwm-workspace.el
index 283b384..89bb694 100644
--- a/exwm-workspace.el
+++ b/exwm-workspace.el
@@ -495,23 +495,12 @@ The optional FORCE option is for internal use only."
         (xcb:flush exwm--connection)))))
 
 (defun exwm-workspace--display-buffer (buffer alist)
-  "Display buffer in the current workspace frame.
-
-This functions is modified from `display-buffer-reuse-window' and
-`display-buffer-pop-up-window'."
+  "Display BUFFER as if the current workspace is selected."
+  ;; Only when the floating minibuffer frame is selected.
+  ;; This also protect this functions from being recursively called.
   (when (eq (selected-frame) exwm-workspace--minibuffer)
-    (setq buffer (get-buffer buffer))   ;convert string to buffer.
-    (let (window)
-      (if (setq window (get-buffer-window buffer exwm-workspace--current))
-          (window--display-buffer buffer window 'reuse alist)
-        (when (setq window (or (window--try-to-split-window
-                                (get-largest-window exwm-workspace--current t)
-                                alist)
-                               (window--try-to-split-window
-                                (get-lru-window exwm-workspace--current t)
-                                alist)))
-          (window--display-buffer
-           buffer window 'window alist display-buffer-mark-dedicated))))))
+    (with-selected-frame exwm-workspace--current
+      (display-buffer buffer alist))))
 
 (defun exwm-workspace--show-minibuffer ()
   "Show the minibuffer frame."



reply via email to

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