Force using visible buffers in `other-buffer'

* exwm-floating.el (exwm-floating--set-floating):
* exwm-workspace.el (exwm-workspace-move-window):
Buffers visible on other frames should be treated as invisible.  One
side effect is visible buffers on the current frame is also taken into
account.
This commit is contained in:
Chris Feng 2016-08-31 19:18:42 +08:00
parent 9105f23121
commit b4517fbfa0
2 changed files with 4 additions and 3 deletions

View file

@ -82,8 +82,9 @@ context of the corresponding buffer.")
(defun exwm-floating--set-floating (id)
"Make window ID floating."
(let ((window (get-buffer-window (exwm--id->buffer id))))
(when window ;window in non-floating state
(set-window-buffer window (other-buffer)))) ;hide it first
(when window
;; Hide the non-floating X window first.
(set-window-buffer window (other-buffer nil t))))
(let* ((original-frame exwm-workspace--current)
;; Create new frame
(frame (with-current-buffer