mirror of
https://github.com/weechat/weechat.git
synced 2026-06-29 22:36:38 +02:00
irc: fix display of items "away" and "lag" in root bars, refresh all irc bar items on signal "buffer_switch" (bug #34466)
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
WeeChat ChangeLog
|
||||
=================
|
||||
Sébastien Helleu <flashcode@flashtux.org>
|
||||
v0.3.6-rc1, 2011-10-03
|
||||
v0.3.6-rc1, 2011-10-04
|
||||
|
||||
|
||||
Version 0.3.6 (under dev!)
|
||||
@@ -87,6 +87,8 @@ Version 0.3.6 (under dev!)
|
||||
description for option when function is called)
|
||||
* scripts: fix crash with scripts not auto-loaded having a buffer opened after
|
||||
/upgrade (input/close callbacks for buffer not set properly)
|
||||
* irc: fix display of items "away" and "lag" in root bars, refresh all irc bar
|
||||
items on signal "buffer_switch" (bug #34466)
|
||||
* irc: fix crash on malformed irc notice received (without message after target)
|
||||
* irc: add missing messages for whois: 223, 264, 343
|
||||
* irc: use high priority queue for sending modes and wallchops messages
|
||||
|
||||
@@ -54,6 +54,9 @@ irc_bar_item_away (void *data, struct t_gui_bar_item *item,
|
||||
|
||||
buf = NULL;
|
||||
|
||||
if (!window)
|
||||
window = weechat_current_window ();
|
||||
|
||||
buffer = weechat_window_get_pointer (window, "buffer");
|
||||
|
||||
if (buffer)
|
||||
@@ -387,6 +390,9 @@ irc_bar_item_lag (void *data, struct t_gui_bar_item *item,
|
||||
(void) data;
|
||||
(void) item;
|
||||
|
||||
if (!window)
|
||||
window = weechat_current_window ();
|
||||
|
||||
buffer = weechat_window_get_pointer (window, "buffer");
|
||||
|
||||
if (buffer)
|
||||
@@ -538,6 +544,31 @@ irc_bar_item_focus_buffer_nicklist (void *data,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* irc_bar_item_buffer_switch: called on "buffer_switch" signal: refresh irc
|
||||
* bar items (for root bars)
|
||||
*/
|
||||
|
||||
int
|
||||
irc_bar_item_buffer_switch (void *data, const char *signal,
|
||||
const char *type_data, void *signal_data)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) signal;
|
||||
(void) type_data;
|
||||
(void) signal_data;
|
||||
|
||||
weechat_bar_item_update ("away");
|
||||
weechat_bar_item_update ("buffer_title");
|
||||
weechat_bar_item_update ("buffer_name");
|
||||
weechat_bar_item_update ("irc_channel");
|
||||
weechat_bar_item_update ("lag");
|
||||
weechat_bar_item_update ("input_prompt");
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* irc_bar_item_init: initialize IRC bar items
|
||||
*/
|
||||
@@ -554,4 +585,6 @@ irc_bar_item_init ()
|
||||
weechat_bar_item_new ("input_prompt", &irc_bar_item_input_prompt, NULL);
|
||||
weechat_hook_focus ("buffer_nicklist",
|
||||
&irc_bar_item_focus_buffer_nicklist, NULL);
|
||||
weechat_hook_signal ("buffer_switch",
|
||||
&irc_bar_item_buffer_switch, NULL);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user