Subject: Re: bug#17769: 24.4.50; [PATCH] rcirc-omit-mode: `recenter'ing a window that does not display current-buffer.

From: Daimrod <[email-masked]>
Date: Fri, 13 Jun 2014 18:14:09 +0900

Eli Zaretskii <[email-masked]> writes:

>> From: Daimrod <[email-masked]>
>> Date: Fri, 13 Jun 2014 15:59:33 +0900
>> 
>> The attached patch prevents `rcirc-omit-mode' to call `recenter' when
>> `window-buffer' isn't the same as `current-buffer'.
>> 
>> 
>> If `rcirc-omit-mode' is enabled by the user interactively (e.g. with C-c
>> C-o) then it will do the right thing.
>> 
>> If `rcirc-omit-mode' was called from elisp (e.g. from a hook), then we
>> don't need to `recenter' the buffer, because it will be done the next
>> time the user switch to the buffer with `rcirc-next-active-buffer'.
>> 
>> I'm not an RCIRC expert, but I don't think anything else is required.
>> WDYT?
>
> This doesn't sound like the right fix to me.  Instead, the code should
> momentarily switch to the right window, and call recenter there.
> That's surely what the author of this code intended, AFAIU.

But the buffer might not be displayed in any window.

For example, when one invoked `rcirc-connect' with some channels by
default:
: (rcirc-connect "localhost" 6667 nil nil nil '("#bar") nil)

Then a buffer "#bar@localhost" will be created but not displayed.

Regards,

-- 
Daimrod/Greg