mirror of
https://github.com/irssi/irssi.git
synced 2026-08-10 20:33:46 +02:00
add chghost capability support
This commit is contained in:
parent
95d695de8c
commit
4dbbbf47a4
8 changed files with 74 additions and 0 deletions
|
|
@ -46,6 +46,13 @@ static void sig_message_join(SERVER_REC *server, const char *channel,
|
|||
signal_stop();
|
||||
}
|
||||
|
||||
static void sig_message_host_changed(SERVER_REC *server, const char *nick,
|
||||
const char *address, const char *old_address)
|
||||
{
|
||||
if (ignore_check(server, nick, address, NULL, NULL, MSGLEVEL_JOINS))
|
||||
signal_stop();
|
||||
}
|
||||
|
||||
static void sig_message_part(SERVER_REC *server, const char *channel,
|
||||
const char *nick, const char *address,
|
||||
const char *reason)
|
||||
|
|
@ -120,6 +127,7 @@ void fe_ignore_messages_init(void)
|
|||
signal_add_first("message public", (SIGNAL_FUNC) sig_message_public);
|
||||
signal_add_first("message private", (SIGNAL_FUNC) sig_message_private);
|
||||
signal_add_first("message join", (SIGNAL_FUNC) sig_message_join);
|
||||
signal_add_first("message host_changed", (SIGNAL_FUNC) sig_message_host_changed);
|
||||
signal_add_first("message part", (SIGNAL_FUNC) sig_message_part);
|
||||
signal_add_first("message quit", (SIGNAL_FUNC) sig_message_quit);
|
||||
signal_add_first("message kick", (SIGNAL_FUNC) sig_message_kick);
|
||||
|
|
@ -135,6 +143,7 @@ void fe_ignore_messages_deinit(void)
|
|||
signal_remove("message public", (SIGNAL_FUNC) sig_message_public);
|
||||
signal_remove("message private", (SIGNAL_FUNC) sig_message_private);
|
||||
signal_remove("message join", (SIGNAL_FUNC) sig_message_join);
|
||||
signal_remove("message host_changed", (SIGNAL_FUNC) sig_message_host_changed);
|
||||
signal_remove("message part", (SIGNAL_FUNC) sig_message_part);
|
||||
signal_remove("message quit", (SIGNAL_FUNC) sig_message_quit);
|
||||
signal_remove("message kick", (SIGNAL_FUNC) sig_message_kick);
|
||||
|
|
|
|||
|
|
@ -451,6 +451,20 @@ static void spread_server_message_to_windows(SERVER_REC *server, gboolean once,
|
|||
g_string_free(chans, TRUE);
|
||||
}
|
||||
|
||||
static void sig_message_host_changed(SERVER_REC *server, const char *nick,
|
||||
const char *address, const char *old_address)
|
||||
{
|
||||
spread_server_message_to_windows(
|
||||
server,
|
||||
settings_get_bool("show_quit_once"),
|
||||
TRUE,
|
||||
MSGLEVEL_JOINS,
|
||||
TXT_HOST_CHANGED, TXT_HOST_CHANGED,
|
||||
nick, address, old_address,
|
||||
NULL
|
||||
);
|
||||
}
|
||||
|
||||
static void sig_message_quit(SERVER_REC *server, const char *nick,
|
||||
const char *address, const char *reason)
|
||||
{
|
||||
|
|
@ -756,6 +770,7 @@ void fe_messages_init(void)
|
|||
signal_add_last("message own_public", (SIGNAL_FUNC) sig_message_own_public);
|
||||
signal_add_last("message own_private", (SIGNAL_FUNC) sig_message_own_private);
|
||||
signal_add_last("message join", (SIGNAL_FUNC) sig_message_join);
|
||||
signal_add_last("message host_changed", (SIGNAL_FUNC) sig_message_host_changed);
|
||||
signal_add_last("message part", (SIGNAL_FUNC) sig_message_part);
|
||||
signal_add_last("message quit", (SIGNAL_FUNC) sig_message_quit);
|
||||
signal_add_last("message kick", (SIGNAL_FUNC) sig_message_kick);
|
||||
|
|
@ -783,6 +798,7 @@ void fe_messages_deinit(void)
|
|||
signal_remove("message own_public", (SIGNAL_FUNC) sig_message_own_public);
|
||||
signal_remove("message own_private", (SIGNAL_FUNC) sig_message_own_private);
|
||||
signal_remove("message join", (SIGNAL_FUNC) sig_message_join);
|
||||
signal_remove("message host_changed", (SIGNAL_FUNC) sig_message_host_changed);
|
||||
signal_remove("message part", (SIGNAL_FUNC) sig_message_part);
|
||||
signal_remove("message quit", (SIGNAL_FUNC) sig_message_quit);
|
||||
signal_remove("message kick", (SIGNAL_FUNC) sig_message_kick);
|
||||
|
|
|
|||
|
|
@ -95,6 +95,7 @@ FORMAT_REC fecommon_core_formats[] = {
|
|||
{ NULL, "Channels", 0 },
|
||||
|
||||
{ "join", "{channick_hilight $0} {chanhost_hilight $1} has joined {channel $2}", 5, { 0, 0, 0, 0, 0 } },
|
||||
{ "host_changed", "{channick_hilight $0} {chanhost_hilight $1} host changed", 4, { 0, 0, 0, 0 } },
|
||||
{ "part", "{channick $0} {chanhost $1} has left {channel $2} {reason $3}", 4, { 0, 0, 0, 0 } },
|
||||
{ "kick", "{channick $0} was kicked from {channel $1} by {nick $2} {reason $3}", 5, { 0, 0, 0, 0, 0 } },
|
||||
{ "quit", "{channick $0} {chanhost $1} has quit {reason $2}", 4, { 0, 0, 0, 0 } },
|
||||
|
|
|
|||
|
|
@ -71,6 +71,7 @@ enum {
|
|||
TXT_FILL_3,
|
||||
|
||||
TXT_JOIN,
|
||||
TXT_HOST_CHANGED,
|
||||
TXT_PART,
|
||||
TXT_KICK,
|
||||
TXT_QUIT,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue