summary refs log tree commit diff stats
path: root/src/fe-gtk
diff options
context:
space:
mode:
authorBerke Viktor <bviktor@hexchat.org>2012-10-15 13:46:23 +0200
committerBerke Viktor <bviktor@hexchat.org>2012-10-15 13:46:23 +0200
commit831794e150d890a64fc889887334accec4dd822a (patch)
tree7893c2a6e8ee937ec86df5af8c687c57bd3f16e6 /src/fe-gtk
parente8f7653cf0f315fcb75c434c4a46af28d80f2ec2 (diff)
Only omit alerts when we're actually away
Diffstat (limited to 'src/fe-gtk')
-rw-r--r--src/fe-gtk/fe-gtk.c2
-rw-r--r--src/fe-gtk/plugin-tray.c18
2 files changed, 10 insertions, 10 deletions
diff --git a/src/fe-gtk/fe-gtk.c b/src/fe-gtk/fe-gtk.c
index f7264f73..a523d63b 100644
--- a/src/fe-gtk/fe-gtk.c
+++ b/src/fe-gtk/fe-gtk.c
@@ -587,7 +587,7 @@ fe_set_hilight (struct session *sess)
 	if (sess->gui->is_tab)
 		fe_set_tab_color (sess, 3);	/* set tab to blue */
 
-	if (prefs.input_flash_hilight && !prefs.away_omit_alerts)
+	if (prefs.input_flash_hilight && (!prefs.away_omit_alerts || !sess->server->is_away))
 		fe_flash_window (sess); /* taskbar flash */
 }
 
diff --git a/src/fe-gtk/plugin-tray.c b/src/fe-gtk/plugin-tray.c
index 0897f423..0437cd41 100644
--- a/src/fe-gtk/plugin-tray.c
+++ b/src/fe-gtk/plugin-tray.c
@@ -578,7 +578,7 @@ tray_hilight_cb (char *word[], void *userdata)
 	/*if (tray_status == TS_HIGHLIGHT)
 		return XCHAT_EAT_NONE;*/
 
-	if (prefs.input_tray_hilight && !prefs.away_omit_alerts)
+	if (prefs.input_tray_hilight && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 	{
 		tray_set_flash (ICON_HILIGHT);
 
@@ -592,7 +592,7 @@ tray_hilight_cb (char *word[], void *userdata)
 								tray_hilight_count, word[1], xchat_get_info (ph, "channel"));
 	}
 
-	if (prefs.input_balloon_hilight && !prefs.away_omit_alerts)
+	if (prefs.input_balloon_hilight && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 		tray_set_balloonf (word[2], _(DISPLAY_NAME": Highlighted message from: %s (%s)"),
 								 word[1], xchat_get_info (ph, "channel"));
 
@@ -605,7 +605,7 @@ tray_message_cb (char *word[], void *userdata)
 	if (/*tray_status == TS_MESSAGE ||*/ tray_status == TS_HIGHLIGHT)
 		return XCHAT_EAT_NONE;
 
-	if (prefs.input_tray_chans && !prefs.away_omit_alerts)
+	if (prefs.input_tray_chans && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 	{
 		tray_set_flash (ICON_MSG);
 
@@ -617,7 +617,7 @@ tray_message_cb (char *word[], void *userdata)
 			tray_set_tipf (_(DISPLAY_NAME": %u new public messages."), tray_pub_count);
 	}
 
-	if (prefs.input_balloon_chans && !prefs.away_omit_alerts)
+	if (prefs.input_balloon_chans && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 		tray_set_balloonf (word[2], _(DISPLAY_NAME": New public message from: %s (%s)"),
 								 word[1], xchat_get_info (ph, "channel"));
 
@@ -646,7 +646,7 @@ tray_priv (char *from, char *text)
 		tray_set_tipf (_(DISPLAY_NAME": %u private messages, latest from: %s (%s)"),
 							tray_priv_count, from, network);
 
-	if (prefs.input_balloon_priv && !prefs.away_omit_alerts)
+	if (prefs.input_balloon_priv && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 		tray_set_balloonf (text, _(DISPLAY_NAME": Private message from: %s (%s)"),
 								 from, network);
 }
@@ -657,7 +657,7 @@ tray_priv_cb (char *word[], void *userdata)
 	/*if (tray_status == TS_HIGHLIGHT)
 		return XCHAT_EAT_NONE;*/
 
-	if (prefs.input_tray_priv && !prefs.away_omit_alerts)
+	if (prefs.input_tray_priv && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 		tray_priv (word[1], word[2]);
 
 	return XCHAT_EAT_NONE;
@@ -669,7 +669,7 @@ tray_invited_cb (char *word[], void *userdata)
 	/*if (tray_status == TS_HIGHLIGHT)
 		return XCHAT_EAT_NONE;*/
 
-	if (prefs.input_tray_priv && !prefs.away_omit_alerts)
+	if (prefs.input_tray_priv && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 		tray_priv (word[2], "Invited");
 
 	return XCHAT_EAT_NONE;
@@ -687,7 +687,7 @@ tray_dcc_cb (char *word[], void *userdata)
 	if (!network)
 		network = xchat_get_info (ph, "server");
 
-	if (prefs.input_tray_priv && !prefs.away_omit_alerts)
+	if (prefs.input_tray_priv && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 	{
 		tray_set_flash (ICON_FILE);
 
@@ -700,7 +700,7 @@ tray_dcc_cb (char *word[], void *userdata)
 								tray_file_count, word[1], network);
 	}
 
-	if (prefs.input_balloon_priv && !prefs.away_omit_alerts)
+	if (prefs.input_balloon_priv && (!prefs.away_omit_alerts || tray_find_away_status () != 1))
 		tray_set_balloonf ("", _(DISPLAY_NAME": File offer from: %s (%s)"),
 								word[1], network);