diff --git a/modules/app/irc/autoload/irc.el b/modules/app/irc/autoload/irc.el index b560563fe..2f6434af6 100644 --- a/modules/app/irc/autoload/irc.el +++ b/modules/app/irc/autoload/irc.el @@ -7,12 +7,14 @@ (not inhibit-workspace)) (+workspace-switch +irc--workspace-name 'auto-create)) (let ((buffers (doom-buffers-in-mode 'circe-mode nil t))) - (if buffers - (ignore (switch-to-buffer (car buffers))) - (require 'circe) - (delete-other-windows) - (switch-to-buffer (doom-fallback-buffer)) - t))) + (if (not (member (window-buffer) buffers)) + (if buffers + (ignore (switch-to-buffer (car buffers))) + (require 'circe) + (delete-other-windows) + (switch-to-buffer (doom-fallback-buffer)) + t) + (user-error "IRC buffer is already active and selected")))) ;;;###autoload (defun =irc (&optional inhibit-workspace)