ui/posframe: refactor +posframe|delete-on-escape

This commit is contained in:
Henrik Lissner 2018-03-13 02:00:20 -04:00
parent 1da1ca1496
commit fa22dcc7a4
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -15,8 +15,13 @@
;;;###autoload ;;;###autoload
(defun +posframe|delete-on-escape () (defun +posframe|delete-on-escape ()
"TODO" "TODO"
(when (cl-loop for frame in (frame-list) (unless (frame-parameter (selected-frame) 'posframe-buffer)
if (and (frame-parameter frame 'posframe-buffer) (cl-loop for frame in (frame-list)
(not (frame-visible-p frame))) if (and (frame-parameter frame 'posframe-buffer)
return t) (not (frame-visible-p frame)))
(posframe-delete-all))) do (delete-frame frame))
(dolist (buffer (buffer-list))
(let ((frame (buffer-local-value 'posframe--frame buffer)))
(when (and frame (or (not (frame-live-p frame))
(not (frame-visible-p frame))))
(posframe--kill-buffer buffer))))))