From 7e531cec7a80a3bc6cecb844d66ae5127f7e7a94 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Wed, 28 Jun 2000 17:15:37 +0000 Subject: Automatic command completion and a few other fixes. git-svn-id: http://svn.irssi.org/repos/irssi/trunk@387 dbcabf3a-b0e7-0310-adc4-f8d773084564 --- src/fe-common/irc/dcc/fe-dcc.c | 12 ++++++++++-- src/fe-common/irc/fe-channels.c | 12 +++++------- src/fe-common/irc/fe-ircnet.c | 15 ++++++++------- 3 files changed, 23 insertions(+), 16 deletions(-) (limited to 'src/fe-common/irc') diff --git a/src/fe-common/irc/dcc/fe-dcc.c b/src/fe-common/irc/dcc/fe-dcc.c index ae3cee81..39b26565 100644 --- a/src/fe-common/irc/dcc/fe-dcc.c +++ b/src/fe-common/irc/dcc/fe-dcc.c @@ -416,6 +416,14 @@ static void cmd_dcc_list(const char *data) printformat(NULL, NULL, MSGLEVEL_DCC, IRCTXT_DCC_LIST_FOOTER); } +static void cmd_dcc(const char *data) +{ + if (*data == '\0') { + cmd_dcc_list(data); + signal_stop(); + } +} + static void sig_dcc_send_complete(GList **list, WINDOW_REC *window, const char *word, const char *line, int *want_space) { @@ -459,7 +467,7 @@ void fe_irc_dcc_init(void) command_bind("me", NULL, (SIGNAL_FUNC) cmd_me); command_bind("action", NULL, (SIGNAL_FUNC) cmd_action); command_bind("ctcp", NULL, (SIGNAL_FUNC) cmd_ctcp); - command_bind("dcc ", NULL, (SIGNAL_FUNC) cmd_dcc_list); + command_bind("dcc", NULL, (SIGNAL_FUNC) cmd_dcc); command_bind("dcc list", NULL, (SIGNAL_FUNC) cmd_dcc_list); theme_register(fecommon_irc_dcc_formats); @@ -492,6 +500,6 @@ void fe_irc_dcc_deinit(void) command_unbind("me", (SIGNAL_FUNC) cmd_me); command_unbind("action", (SIGNAL_FUNC) cmd_action); command_unbind("ctcp", (SIGNAL_FUNC) cmd_ctcp); - command_unbind("dcc ", (SIGNAL_FUNC) cmd_dcc_list); + command_unbind("dcc", (SIGNAL_FUNC) cmd_dcc); command_unbind("dcc list", (SIGNAL_FUNC) cmd_dcc_list); } diff --git a/src/fe-common/irc/fe-channels.c b/src/fe-common/irc/fe-channels.c index c17325eb..8eb1ebf9 100644 --- a/src/fe-common/irc/fe-channels.c +++ b/src/fe-common/irc/fe-channels.c @@ -182,12 +182,12 @@ static void cmd_channel_list(void) static void cmd_channel(const char *data, IRC_SERVER_REC *server, WI_ITEM_REC *item) { - if (ischannel(*data)) { + if (*data == '\0') + cmd_channel_list_joined(); + else if (ischannel(*data)) signal_emit("command join", 2, data, server); - return; - } - - command_runsub("channel", data, server, item); + else + command_runsub("channel", data, server, item); } static void cmd_channel_add(const char *data) @@ -260,7 +260,6 @@ void fe_channels_init(void) command_bind("wjoin", NULL, (SIGNAL_FUNC) cmd_wjoin); command_bind("channel", NULL, (SIGNAL_FUNC) cmd_channel); - command_bind("channel ", NULL, (SIGNAL_FUNC) cmd_channel_list_joined); command_bind("channel add", NULL, (SIGNAL_FUNC) cmd_channel_add); command_bind("channel remove", NULL, (SIGNAL_FUNC) cmd_channel_remove); command_bind("channel list", NULL, (SIGNAL_FUNC) cmd_channel_list); @@ -278,7 +277,6 @@ void fe_channels_deinit(void) command_unbind("wjoin", (SIGNAL_FUNC) cmd_wjoin); command_unbind("channel", (SIGNAL_FUNC) cmd_channel); - command_unbind("channel ", (SIGNAL_FUNC) cmd_channel_list_joined); command_unbind("channel add", (SIGNAL_FUNC) cmd_channel_add); command_unbind("channel remove", (SIGNAL_FUNC) cmd_channel_remove); command_unbind("channel list", (SIGNAL_FUNC) cmd_channel_list); diff --git a/src/fe-common/irc/fe-ircnet.c b/src/fe-common/irc/fe-ircnet.c index adc4f03c..9a361bce 100644 --- a/src/fe-common/irc/fe-ircnet.c +++ b/src/fe-common/irc/fe-ircnet.c @@ -28,11 +28,6 @@ #include "irc-server.h" #include "ircnet-setup.h" -static void cmd_ircnet(const char *data, IRC_SERVER_REC *server, WI_ITEM_REC *item) -{ - command_runsub("ircnet", data, server, item); -} - static void cmd_ircnet_list(void) { GString *str; @@ -155,10 +150,17 @@ static void cmd_ircnet_remove(const char *data) } } +static void cmd_ircnet(const char *data, IRC_SERVER_REC *server, WI_ITEM_REC *item) +{ + if (*data == '\0') + cmd_ircnet_list(); + else + command_runsub("ircnet", data, server, item); +} + void fe_ircnet_init(void) { command_bind("ircnet", NULL, (SIGNAL_FUNC) cmd_ircnet); - command_bind("ircnet ", NULL, (SIGNAL_FUNC) cmd_ircnet_list); command_bind("ircnet add", NULL, (SIGNAL_FUNC) cmd_ircnet_add); command_bind("ircnet remove", NULL, (SIGNAL_FUNC) cmd_ircnet_remove); @@ -168,7 +170,6 @@ void fe_ircnet_init(void) void fe_ircnet_deinit(void) { command_unbind("ircnet", (SIGNAL_FUNC) cmd_ircnet); - command_unbind("ircnet ", (SIGNAL_FUNC) cmd_ircnet_list); command_unbind("ircnet add", (SIGNAL_FUNC) cmd_ircnet_add); command_unbind("ircnet remove", (SIGNAL_FUNC) cmd_ircnet_remove); } -- cgit v1.2.3