Skip to content

Commit 3e1e63c

Browse files
committed
Allow notifications of selected window whenever the client is inactive
1 parent e156b17 commit 3e1e63c

File tree

2 files changed

+9
-11
lines changed

2 files changed

+9
-11
lines changed

src/event/server_events.c

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -387,13 +387,6 @@ sv_ev_room_message(ProfMessage* message)
387387
if (triggers) {
388388
mucwin->unread_triggers = TRUE;
389389
}
390-
391-
if (prefs_do_room_notify(is_current, mucwin->roomjid, mynick, message->from_jid->resourcepart, message->plain, mention, triggers != NULL)) {
392-
auto_jid Jid* jidp = jid_create(mucwin->roomjid);
393-
if (jidp) {
394-
notify_room_message(message->from_jid->resourcepart, jidp->localpart, num, message->plain);
395-
}
396-
}
397390
}
398391

399392
// save timestamp of last received muc message
@@ -402,6 +395,12 @@ sv_ev_room_message(ProfMessage* message)
402395
}
403396
mucwin->last_msg_timestamp = g_date_time_new_now_local();
404397

398+
if ((prefs_do_room_notify(is_current, mucwin->roomjid, mynick, message->from_jid->resourcepart, message->plain, mention, triggers != NULL) && !wins_is_current(window)) || ui_get_idle_time() > 1000) {
399+
auto_jid Jid* jidp = jid_create(mucwin->roomjid);
400+
if (jidp) {
401+
notify_room_message(message->from_jid->resourcepart, jidp->localpart, num, message->plain);
402+
}
403+
}
405404

406405
if (triggers) {
407406
g_list_free_full(triggers, free);

src/ui/chatwin.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -382,10 +382,6 @@ chatwin_incoming_msg(ProfChatWin* chatwin, ProfMessage* message, gboolean win_cr
382382
if (show_message) {
383383
win_print_incoming(window, display_name, message);
384384
}
385-
386-
if (notify) {
387-
notify_message(display_name, num, message->plain);
388-
}
389385
}
390386

391387
if (!message->is_mam) {
@@ -397,6 +393,9 @@ chatwin_incoming_msg(ProfChatWin* chatwin, ProfMessage* message, gboolean win_cr
397393
}
398394
}
399395

396+
if ((notify && !wins_is_current(window)) || ui_get_idle_time() > 1000) {
397+
notify_message(display_name, num, message->plain);
398+
}
400399
plugins_post_chat_message_display(message->from_jid->barejid, message->from_jid->resourcepart, message->plain);
401400

402401
message->plain = old_plain;

0 commit comments

Comments
 (0)