feature/popup: replace alist param with popup

This commit is contained in:
Henrik Lissner 2018-01-06 04:56:12 -05:00
parent 4df471e53a
commit a9a731c1eb
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
2 changed files with 7 additions and 7 deletions

View file

@ -14,7 +14,6 @@
(setq +popup--last
(cl-loop for w in windows
collect (list (window-buffer w)
(window-parameter w 'alist)
(window-state-get w)))))
(defun +popup--kill-buffer (buffer ttl)
@ -37,9 +36,9 @@ the buffer is visible, then set another timer and try again later."
default window parameters for popup windows, clears leftover transient timers
and enables `+popup-buffer-mode'."
(with-selected-window window
(set-window-parameter window 'popup t)
(set-window-parameter window 'no-other-window t)
(set-window-parameter window 'delete-window #'+popup--destroy)
(set-window-parameter window 'alist alist)
(window-preserve-size
window (memq (window-parameter window 'window-side) '(left right)) t)
(+popup--cancel-buffer-timer)
@ -277,9 +276,9 @@ the message buffer in a popup window."
(interactive)
(unless +popup--last
(error "No popups to restore"))
(cl-loop for (buffer alist state) in +popup--last
(cl-loop for (buffer . state) in +popup--last
if (and (buffer-live-p buffer)
(+popup-buffer buffer alist))
(+popup-buffer buffer))
do (window-state-put state it))
(setq +popup--last nil))

View file

@ -1,7 +1,7 @@
;;; config.el -*- lexical-binding: t; -*-
(defconst +popup-window-parameters
'(transient quit select modeline alist)
'(transient quit select modeline popup)
"A list of custom parameters to be added to `window-persistent-parameters'.
Modifying this has no effect, unless done before feature/popup loads.
@ -32,8 +32,9 @@ Modifying this has no effect, unless done before feature/popup loads.
CDR can be t (show the default modeline), a symbol representing the name of a
modeline defined with `def-modeline!', or nil (show no modeline).
(alist . CDR)
This is an internal parameter and should not be set or modified.
(popup . BOOL)
If CDR is non-nil, this window is identified as a popup window. For internal
use! Do not change this.
Since I can't find this information anywhere but the Emacs manual, I'll include
a brief description of some native window parameters that Emacs uses: