branch: externals/window-commander
commit 15e188aa17443534e5fa986904350976f9a0f78f
Author: Daniel Semyonov <cm...@dsemy.com>
Commit: Daniel Semyonov <cm...@dsemy.com>

    Fix some edge cases related to the minibuffer
    
    * swsw.el (swsw-mode): Add hooks to run 'swsw--reset-and-update' when
    entering and exiting the minibuffer.
---
 swsw.el | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/swsw.el b/swsw.el
index a62babf301..d35271f21c 100644
--- a/swsw.el
+++ b/swsw.el
@@ -91,14 +91,18 @@ line update for all windows."
                            'swsw-mode
                            (default-value 'mode-line-format))))
         (force-mode-line-update t)
-        (add-hook 'window-configuration-change-hook #'swsw--reset-and-update))
+        (add-hook 'window-configuration-change-hook #'swsw--reset-and-update)
+        (add-hook 'minibuffer-setup-hook #'swsw--reset-and-update)
+        (add-hook 'minibuffer-exit-hook #'swsw--reset-and-update))
     (setq swsw-window-list nil
           swsw-id-chars swsw-id-chars-base)
     (setq-default mode-line-format
                   (assq-delete-all
                    'swsw-mode
                    (default-value 'mode-line-format)))
-    (remove-hook 'window-configuration-change-hook #'swsw--reset-and-update)))
+    (remove-hook 'window-configuration-change-hook #'swsw--reset-and-update)
+    (remove-hook 'minibuffer-setup-hook #'swsw--reset-and-update)
+    (remove-hook 'minibuffer-exit-hook #'swsw--reset-and-update)))
 
 (defun swsw-select (&optional id)
   "Select window by its ID."

Reply via email to