diff options
Diffstat (limited to 'src/ui/core.c')
-rw-r--r-- | src/ui/core.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/ui/core.c b/src/ui/core.c index 8f554f5b..7b3190ed 100644 --- a/src/ui/core.c +++ b/src/ui/core.c @@ -277,14 +277,17 @@ _ui_contact_typing(const char * const barejid) } if (prefs_get_boolean(PREF_NOTIFY_TYPING)) { - PContact contact = roster_get_contact(barejid); - char const *display_usr = NULL; - if (p_contact_name(contact) != NULL) { - display_usr = p_contact_name(contact); - } else { - display_usr = barejid; + gboolean is_current = wins_is_current(window); + if ( !is_current || (is_current && prefs_get_boolean(PREF_NOTIFY_TYPING_CURRENT)) ) { + PContact contact = roster_get_contact(barejid); + char const *display_usr = NULL; + if (p_contact_name(contact) != NULL) { + display_usr = p_contact_name(contact); + } else { + display_usr = barejid; + } + notify_typing(display_usr); } - notify_typing(display_usr); } } |