diff --git a/modules/feature/popup/autoload.el b/modules/feature/popup/autoload.el index cdf6b7af8..616526f0f 100644 --- a/modules/feature/popup/autoload.el +++ b/modules/feature/popup/autoload.el @@ -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)) diff --git a/modules/feature/popup/config.el b/modules/feature/popup/config.el index a21b49770..a93f844a9 100644 --- a/modules/feature/popup/config.el +++ b/modules/feature/popup/config.el @@ -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: