From 2c841b512d417040a9bc08353ddaee609142a248 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Tue, 21 Feb 2017 03:44:02 -0500 Subject: [PATCH] Move modeline hiding to core-popups --- core/core-popups.el | 19 +++++++++++++------ modules/ui/doom-modeline/config.el | 17 ----------------- 2 files changed, 13 insertions(+), 23 deletions(-) diff --git a/core/core-popups.el b/core/core-popups.el index 312db0303..b3102d594 100644 --- a/core/core-popups.el +++ b/core/core-popups.el @@ -106,6 +106,10 @@ for the obvious :align t on every rule." "Minor mode for popup windows." :init-value nil :keymap doom-popup-mode-map + ;; Don't show modeline in popup windows without a :modeline rule. If one + ;; exists and it's a symbol, use `doom-modeline' to grab the format. If + ;; non-nil, show the mode-line as normal. If nil (or omitted), then hide the + ;; modeline entirely. (if (and (not doom-popup-mode) doom-hide-modeline-mode) (doom-hide-modeline-mode -1) @@ -114,14 +118,13 @@ for the obvious :align t on every rule." (not modeline)) (doom-hide-modeline-mode +1)) ((symbolp modeline) - (let ((doom--hidden-modeline-format (+doom-modeline modeline))) - (doom-hide-modeline-mode +1)))))) - (unless doom-popup-mode - (mapc (lambda (cfg) (set-window-parameter nil cfg nil)) - '(popup no-other-window noesc))) - (set-window-dedicated-p nil doom-popup-mode)) + (let ((doom--hidden-modeline-format (doom-modeline modeline))) + (doom-hide-modeline-mode +1))))))) (put 'doom-popup-mode 'permanent-local t) +;; Hide modeline in completion popups +(@add-hook (completion-in-region-mode completion-list-mode) 'doom-hide-modeline-mode) + (defun doom-popup--init (window &optional plist) "Initializes a window as a popup window. Sets custom window parameters and enables `doom-popup-mode'." @@ -171,6 +174,10 @@ properties." (when (doom-popup-p window) (with-selected-window window (doom-popup-mode -1) + (unless doom-popup-mode + (mapc (lambda (cfg) (set-window-parameter window cfg nil)) + '(popup no-other-window noesc autokill))) + (set-window-dedicated-p window nil) (when doom-popup-remember-history (setq doom-popup-history (list (doom--popup-data window)))) (when (window-parameter window 'autokill) diff --git a/modules/ui/doom-modeline/config.el b/modules/ui/doom-modeline/config.el index 155e2e423..b06342e32 100644 --- a/modules/ui/doom-modeline/config.el +++ b/modules/ui/doom-modeline/config.el @@ -48,23 +48,6 @@ (lambda () (set-face-attribute 'mode-line nil :background doom--visual-bell-bg)))) -;; Don't show modeline in popup windows without a :modeline rule. If one exists -;; and it's a symbol, use `doom-modeline' to grab the format. If nil, show the -;; mode-line as normal. If t, then hide the modeline entirely. -(@add-hook doom-popup-mode - (if (and (not doom-popup-mode) - doom-hide-modeline-mode) - (doom-hide-modeline-mode -1) - (let ((modeline (plist-get doom-popup-rules :modeline))) - (cond ((eq modeline 'nil) - (doom-hide-modeline-mode +1)) - ((symbolp modeline) - (let ((doom--hidden-modeline-format (+doom-modeline modeline))) - (doom-hide-modeline-mode +1))))))) - -(@add-hook (completion-in-region-mode completion-list-mode) 'doom-hide-modeline-mode) - - ;; Keep `+doom-modeline-current-window' up-to-date (defvar +doom-modeline-current-window (frame-selected-window)) (defun +doom-modeline|set-selected-window (&rest _)