mirror of
https://github.com/weechat/weechat.git
synced 2026-07-02 15:53:12 +02:00
irc: set short name on buffers only if it was not set by another plugin/script
This commit is contained in:
@@ -209,7 +209,8 @@ irc_channel_new (struct t_irc_server *server, int channel_type,
|
||||
|
||||
if (buffer_created)
|
||||
{
|
||||
weechat_buffer_set (new_buffer, "short_name", channel_name);
|
||||
if (!weechat_buffer_get_string (new_buffer, "short_name"))
|
||||
weechat_buffer_set (new_buffer, "short_name", channel_name);
|
||||
weechat_buffer_set (new_buffer, "localvar_set_type",
|
||||
(channel_type == IRC_CHANNEL_TYPE_CHANNEL) ? "channel" : "private");
|
||||
weechat_buffer_set (new_buffer, "localvar_set_nick", server->nick);
|
||||
@@ -917,6 +918,7 @@ irc_channel_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_irc_channel_speaking *ptr_nick;
|
||||
char option_name[64];
|
||||
int i, index;
|
||||
const char *name, *short_name;
|
||||
|
||||
if (!infolist || !channel)
|
||||
return 0;
|
||||
@@ -927,14 +929,24 @@ irc_channel_add_to_infolist (struct t_infolist *infolist,
|
||||
|
||||
if (!weechat_infolist_new_var_pointer (ptr_item, "buffer", channel->buffer))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_name",
|
||||
(channel->buffer) ?
|
||||
weechat_buffer_get_string (channel->buffer, "name") : ""))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_short_name",
|
||||
(channel->buffer) ?
|
||||
weechat_buffer_get_string (channel->buffer, "short_name") : ""))
|
||||
return 0;
|
||||
if (channel->buffer)
|
||||
{
|
||||
name = weechat_buffer_get_string (channel->buffer, "name");
|
||||
short_name = weechat_buffer_get_string (channel->buffer, "short_name");
|
||||
if (!short_name)
|
||||
short_name = name;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_name", name))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_short_name", short_name))
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_name", ""))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_short_name", ""))
|
||||
return 0;
|
||||
}
|
||||
if (!weechat_infolist_new_var_integer (ptr_item, "type", channel->type))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "name", channel->name))
|
||||
|
||||
@@ -851,7 +851,12 @@ IRC_PROTOCOL_CALLBACK(nick)
|
||||
}
|
||||
buffer_name = irc_buffer_build_name (server->name, ptr_channel->name);
|
||||
weechat_buffer_set (ptr_channel->buffer, "name", buffer_name);
|
||||
weechat_buffer_set (ptr_channel->buffer, "short_name", ptr_channel->name);
|
||||
if (!weechat_buffer_get_string (ptr_channel->buffer,
|
||||
"short_name"))
|
||||
{
|
||||
weechat_buffer_set (ptr_channel->buffer, "short_name",
|
||||
ptr_channel->name);
|
||||
}
|
||||
weechat_buffer_set (ptr_channel->buffer,
|
||||
"localvar_set_channel", ptr_channel->name);
|
||||
}
|
||||
|
||||
@@ -85,7 +85,11 @@ irc_raw_open (int switch_to_buffer)
|
||||
weechat_buffer_set (irc_raw_buffer,
|
||||
"title", _("IRC raw messages"));
|
||||
|
||||
weechat_buffer_set (irc_raw_buffer, "short_name", IRC_RAW_BUFFER_NAME);
|
||||
if (!weechat_buffer_get_string (irc_raw_buffer, "short_name"))
|
||||
{
|
||||
weechat_buffer_set (irc_raw_buffer, "short_name",
|
||||
IRC_RAW_BUFFER_NAME);
|
||||
}
|
||||
weechat_buffer_set (irc_raw_buffer, "localvar_set_type", "debug");
|
||||
weechat_buffer_set (irc_raw_buffer, "localvar_set_server", IRC_RAW_BUFFER_NAME);
|
||||
weechat_buffer_set (irc_raw_buffer, "localvar_set_channel", IRC_RAW_BUFFER_NAME);
|
||||
|
||||
@@ -1299,7 +1299,8 @@ irc_server_rename (struct t_irc_server *server, const char *new_server_name)
|
||||
{
|
||||
buffer_name = irc_buffer_build_name (server->name, NULL);
|
||||
weechat_buffer_set (server->buffer, "name", buffer_name);
|
||||
weechat_buffer_set (server->buffer, "short_name", server->name);
|
||||
if (!weechat_buffer_get_string (server->buffer, "short_name"))
|
||||
weechat_buffer_set (server->buffer, "short_name", server->name);
|
||||
weechat_buffer_set (server->buffer, "localvar_set_server",
|
||||
server->name);
|
||||
weechat_buffer_set (server->buffer, "localvar_set_channel",
|
||||
@@ -2838,8 +2839,9 @@ irc_server_create_buffer (struct t_irc_server *server)
|
||||
&irc_buffer_close_cb, NULL);
|
||||
if (!server->buffer)
|
||||
return NULL;
|
||||
|
||||
weechat_buffer_set (server->buffer, "short_name", server->name);
|
||||
|
||||
if (!weechat_buffer_get_string (server->buffer, "short_name"))
|
||||
weechat_buffer_set (server->buffer, "short_name", server->name);
|
||||
weechat_buffer_set (server->buffer, "localvar_set_type", "server");
|
||||
weechat_buffer_set (server->buffer, "localvar_set_server", server->name);
|
||||
weechat_buffer_set (server->buffer, "localvar_set_channel", server->name);
|
||||
@@ -4038,6 +4040,7 @@ irc_server_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_irc_server *server)
|
||||
{
|
||||
struct t_infolist_item *ptr_item;
|
||||
const char *name, *short_name;
|
||||
|
||||
if (!infolist || !server)
|
||||
return 0;
|
||||
@@ -4050,14 +4053,24 @@ irc_server_add_to_infolist (struct t_infolist *infolist,
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_pointer (ptr_item, "buffer", server->buffer))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_name",
|
||||
(server->buffer) ?
|
||||
weechat_buffer_get_string (server->buffer, "name") : ""))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_short_name",
|
||||
(server->buffer) ?
|
||||
weechat_buffer_get_string (server->buffer, "short_name") : ""))
|
||||
return 0;
|
||||
if (server->buffer)
|
||||
{
|
||||
name = weechat_buffer_get_string (server->buffer, "name");
|
||||
short_name = weechat_buffer_get_string (server->buffer, "short_name");
|
||||
if (!short_name)
|
||||
short_name = name;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_name", name))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_short_name", short_name))
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_name", ""))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_short_name", ""))
|
||||
return 0;
|
||||
}
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "addresses",
|
||||
IRC_SERVER_OPTION_STRING(server, IRC_SERVER_OPTION_ADDRESSES)))
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user