From 86ff43c6cb6090842ce81ba36b6d24c370d96165 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Tue, 26 Sep 2017 20:36:12 +0200 Subject: [PATCH] Minor refactor of popup rules logistics --- core/autoload/popups.el | 4 ++-- core/core-popups.el | 9 ++++----- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/core/autoload/popups.el b/core/autoload/popups.el index e56083289..ad63829af 100644 --- a/core/autoload/popups.el +++ b/core/autoload/popups.el @@ -170,8 +170,8 @@ without leaving any trace behind (muahaha)." `doom-popup-rules' always takes priority, but this will fall back to the popup window parameter." (cond ((windowp window-or-buffer) - (or (doom-popup-properties (window-buffer window-or-buffer)) - (window-parameter window-or-buffer 'popup))) + (or (window-parameter window-or-buffer 'popup) + (doom-popup-properties (window-buffer window-or-buffer)))) ((bufferp window-or-buffer) (buffer-local-value 'doom-popup-rules window-or-buffer)))) diff --git a/core/core-popups.el b/core/core-popups.el index 22dd28f99..0e9b98fd2 100644 --- a/core/core-popups.el +++ b/core/core-popups.el @@ -32,7 +32,8 @@ "A list of open popup windows.") (defvar-local doom-popup-rules nil - "The shackle rule that caused this buffer to be recognized as a popup.") + "The shackle rule that caused this buffer to be recognized as a popup. Don't +edit this directly.") (defvar doom-popup-window-parameters '(:noesc :modeline :autokill :autoclose :autofit :static) @@ -157,9 +158,7 @@ for :align t on every rule." :keymap doom-popup-mode-map (let ((window (selected-window))) ;; If `doom-popup-rules' isn't set for some reason, try to set it - (when-let (plist (and (not doom-popup-rules) - (window-parameter window 'popup))) - (setq-local doom-popup-rules (window-parameter window 'popup))) + (setq-local doom-popup-rules (doom-popup-properties window)) ;; Ensure that buffer-opening functions/commands (like ;; `switch-to-buffer-other-window' won't use this window). (set-window-parameter window 'no-other-window doom-popup-mode) @@ -533,7 +532,7 @@ that `doom*popup-save' won't break it." (defun doom*persp-mode-restore-popups (&rest _) "Restore popup windows when loading a perspective from file." (dolist (window (window-list)) - (when-let (plist (window-parameter window 'popup)) + (when-let (plist (doom-popup-properties window)) (with-selected-window window (unless doom-popup-mode (setq-local doom-popup-rules plist)