From 3cef44a6ca2093500b092f99dc588fb8bf9c184d Mon Sep 17 00:00:00 2001 From: Chris Feng Date: Wed, 16 Mar 2016 12:34:38 +0800 Subject: Exclude unmanaged floating X windows when refreshing * exwm-layout.el (exwm-layout--refresh): Do not show unmanaged floating X windows. --- exwm-layout.el | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'exwm-layout.el') diff --git a/exwm-layout.el b/exwm-layout.el index 309bfb6fb672..6825cb56d33d 100644 --- a/exwm-layout.el +++ b/exwm-layout.el @@ -258,8 +258,10 @@ (when (eq major-mode 'exwm-mode) (let ((window (frame-first-window frame))) (with-current-buffer (window-buffer window) - (exwm--log "Refresh floating window #x%x" exwm--id) - (exwm-layout--show exwm--id window)))) + ;; It may be a buffer waiting to be killed. + (when (exwm--id->buffer exwm--id) + (exwm--log "Refresh floating window #x%x" exwm--id) + (exwm-layout--show exwm--id window))))) ;; Other frames (e.g. terminal/graphical frame of emacsclient) ;; We shall bury all `exwm-mode' buffers in this case (setq windows (window-list frame 0)) ;exclude minibuffer -- cgit 1.4.1