]> git.eshelyaron.com Git - emacs.git/commit
Delete original speedbar frame in erc-nickbar-mode
authorF. Jason Park <jp@neverwas.me>
Tue, 21 May 2024 12:37:39 +0000 (05:37 -0700)
committerEshel Yaron <me@eshelyaron.com>
Wed, 29 May 2024 10:11:47 +0000 (12:11 +0200)
commitb2b4733f67009626c18c0f062044b558ced672dc
tree1278fcabc2e1fe5c36c42f7c3d668a61b6bb2f98
parentb1f91df9a228b2fb035a5b5815dfc8b7a15b8535
Delete original speedbar frame in erc-nickbar-mode

* lisp/erc/erc-speedbar.el (erc-speedbar-buttons): Disable
`erc-nickbar-mode' when it's not displayed in a window.
(erc-speedbar--highlight-self-and-ops): Check `status' slot of
`erc-channel-user' object instead of calling accessors.
(erc-speedbar--hidden-speedbar-frame)
(erc-speedbar--emulate-speedbar): Add doc string.
(erc-speedbar--handle-delete-frame): New function.
(erc-speedbar--toggle-nicknames-sidebar): Remove function because its
conditional logic was needlessly complicated and is no longer needed.
(erc-speedbar--ensure): Create `speedbar-buffer' when needed, and
delete the original frame, but still keep a reference to it in
`erc-speedbar--hidden-speedbar-frame'.  Set
`dframe-delete-frame-function' to own handler.
(erc-speedbar--shutting-down-p): Remove unused variable.
(erc-speedbar--run-timer-on-post-insert)
(erc-speedbar--prod-dframe-timer): Rename former to latter.  Return
nil, and accept any number of args.
(erc-nickbar-mode, erc-nickbar-disable): Tear down completely when
disabling, regardless of universal argument.  This changes user-facing
behavior that was originally introduced with this module as part of
bug#63595.  Run `erc-speedbar--prod-dframe-timer' on
`erc-server-PONG-functions' as well as `erc-insert-post-hook' so that
the panel will eventually update if no messages are being received.
(erc-speedbar--dframe-controlled): Don't make frame visible because
it's been deleted and was never made invisible.
* test/lisp/erc/erc-scenarios-status-sidebar.el
(erc-scenarios-status-sidebar--nickbar): Update assertions.

(cherry picked from commit 1b633ea59ad7f27263bf2a74ecc0e7d048b5eab5)
lisp/erc/erc-speedbar.el
test/lisp/erc/erc-scenarios-status-sidebar.el