diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | doc/en/weechat_plugin_api.en.txt | 14 | ||||
-rw-r--r-- | doc/fr/weechat_plugin_api.fr.txt | 14 | ||||
-rw-r--r-- | src/plugins/irc/irc-protocol.c | 8 |
4 files changed, 34 insertions, 7 deletions
@@ -1,7 +1,7 @@ WeeChat ChangeLog ================= FlashCode <flashcode@flashtux.org> -v0.3.2-dev, 2010-03-20 +v0.3.2-dev, 2010-03-21 Version 0.3.2 (under dev!) @@ -53,7 +53,8 @@ Version 0.3.2 (under dev!) * irc: fix bug with /away -all: set or unset future away for disconnected servers (bug #29022) * irc: bug with prefix "!" for mode "a" (channel admin) (bug #29109) -* irc: do not send signals "irc_in" and "irc_in2" when messages are ignored +* irc: do not send signals "irc_in" and "irc_in2" when messages are ignored, + add new signals "irc_raw_in" and "irc_raw_in2" * irc: add option irc.network.connection_timeout (timeout between TCP connection to server and reception of message 001) * irc: add options irc.look.smart_filter_join and irc.look.smart_filter_quit diff --git a/doc/en/weechat_plugin_api.en.txt b/doc/en/weechat_plugin_api.en.txt index 651ca0ec9..f82292b0e 100644 --- a/doc/en/weechat_plugin_api.en.txt +++ b/doc/en/weechat_plugin_api.en.txt @@ -5600,10 +5600,20 @@ Arguments: | Plugin | Signal | Arguments | Description | irc | xxx,irc_in_yyy ^(1)^ | string: message | - irc message from server (before irc plugin uses it) + irc message from server (before irc plugin uses it, + signal sent only if message is *not* ignored) | irc | xxx,irc_in2_yyy ^(1)^ | string: message | - irc message from server (after irc plugin uses it) + irc message from server (after irc plugin uses it, + signal sent only if message is *not* ignored) + +| irc | xxx,irc_raw_in_yyy ^(1)^ | string: message | + irc message from server (before irc plugin uses it, + signal sent even if message is ignored) + +| irc | xxx,irc_raw_in2_yyy ^(1)^ | string: message | + irc message from server (after irc plugin uses it, + signal sent even if message is ignored) | irc | xxx,irc_out_yyy ^(1)^ | string: message | irc message sent to server diff --git a/doc/fr/weechat_plugin_api.fr.txt b/doc/fr/weechat_plugin_api.fr.txt index 435551aa5..28ff9c5b0 100644 --- a/doc/fr/weechat_plugin_api.fr.txt +++ b/doc/fr/weechat_plugin_api.fr.txt @@ -5674,10 +5674,20 @@ Paramètres : | Extension | Signal | Paramètres | Description | irc | xxx,irc_in_yyy ^(1)^ | chaîne : message | - message irc du serveur (avant utilisation par l'extension irc) + message irc du serveur (avant utilisation par l'extension irc, + signal envoyé uniquement si le message n'est *pas* ignoré) | irc | xxx,irc_in2_yyy ^(1)^ | chaîne : message | - message irc du serveur (après utilisation par l'extension irc) + message irc du serveur (après utilisation par l'extension irc, + signal envoyé uniquement si le message n'est *pas* ignoré) + +| irc | xxx,irc_raw_in_yyy ^(1)^ | chaîne : message | + message irc du serveur (avant utilisation par l'extension irc, + signal envoyé même si le message est ignoré) + +| irc | xxx,irc_raw_in2_yyy ^(1)^ | chaîne : message | + message irc du serveur (après utilisation par l'extension irc, + signal envoyé même si le message est ignoré) | irc | xxx,irc_out_yyy ^(1)^ | chaîne : message | message irc envoyé au serveur diff --git a/src/plugins/irc/irc-protocol.c b/src/plugins/irc/irc-protocol.c index d14b8c593..dc1b55db3 100644 --- a/src/plugins/irc/irc-protocol.c +++ b/src/plugins/irc/irc-protocol.c @@ -3974,7 +3974,10 @@ irc_protocol_recv_command (struct t_irc_server *server, ptr_channel = irc_channel_search (server, msg_channel); message_ignored = irc_ignore_check (server, ptr_channel, nick, host); - /* send signal with received command (if message is not ignored) */ + /* send signal with received command, even if command is ignored */ + irc_server_send_signal (server, "irc_raw_in", msg_command, irc_message); + + /* send signal with received command, only if message is not ignored */ if (!message_ignored) irc_server_send_signal (server, "irc_in", msg_command, irc_message); @@ -4055,6 +4058,9 @@ irc_protocol_recv_command (struct t_irc_server *server, irc_server_send_signal (server, "irc_in2", msg_command, irc_message); } + /* send signal with received command, even if command is ignored */ + irc_server_send_signal (server, "irc_raw_in2", msg_command, irc_message); + end: if (nick) free (nick); |