summaryrefslogtreecommitdiff
path: root/src/fe-common/irc/fe-events.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/fe-common/irc/fe-events.c')
-rw-r--r--src/fe-common/irc/fe-events.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/fe-common/irc/fe-events.c b/src/fe-common/irc/fe-events.c
index 24a1c0c3..e79cf122 100644
--- a/src/fe-common/irc/fe-events.c
+++ b/src/fe-common/irc/fe-events.c
@@ -59,8 +59,8 @@ static void print_channel_msg(IRC_SERVER_REC *server, const char *msg,
{
CHANNEL_REC *chanrec;
NICK_REC *nickrec;
- int for_me;
const char *nickmode;
+ int for_me, print_channel;
char *color;
chanrec = channel_find(server, target);
@@ -71,7 +71,12 @@ static void print_channel_msg(IRC_SERVER_REC *server, const char *msg,
nickmode = (!settings_get_bool("show_nickmode") || nickrec == NULL) ? "" :
(nickrec->op ? "@" : nickrec->voice ? "+" : " ");
- if (window_item_is_active((WI_ITEM_REC *) chanrec)) {
+ print_channel = !window_item_is_active((WI_ITEM_REC *) chanrec);
+ if (!print_channel && settings_get_bool("print_active_channel") &&
+ window_item_window((WI_ITEM_REC *) chanrec)->items->next != NULL)
+ print_channel = TRUE;
+
+ if (!print_channel) {
/* message to active channel in window */
if (color != NULL) {
/* highlighted nick */