mirror of
https://github.com/profanity-im/profanity.git
synced 2024-12-04 14:46:46 -05:00
Show message when other user <gone/>
This commit is contained in:
parent
0ce7b2acb7
commit
e45e6c46b7
@ -443,7 +443,7 @@ _message_handler(xmpp_conn_t * const conn,
|
|||||||
|
|
||||||
// handle <gone/>
|
// handle <gone/>
|
||||||
} else if (xmpp_stanza_get_child_by_name(stanza, "gone") != NULL) {
|
} else if (xmpp_stanza_get_child_by_name(stanza, "gone") != NULL) {
|
||||||
// do something
|
prof_handle_gone(short_from);
|
||||||
|
|
||||||
// handle <active/>
|
// handle <active/>
|
||||||
} else {
|
} else {
|
||||||
|
@ -145,6 +145,13 @@ prof_handle_login_success(const char *jid)
|
|||||||
prefs_add_login(jid);
|
prefs_add_login(jid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
prof_handle_gone(const char * const from)
|
||||||
|
{
|
||||||
|
win_show_gone(from);
|
||||||
|
win_page_off();
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
prof_handle_lost_connection(void)
|
prof_handle_lost_connection(void)
|
||||||
{
|
{
|
||||||
|
@ -34,5 +34,6 @@ void prof_handle_contact_offline(char *contact, char *show, char *status);
|
|||||||
void prof_handle_incoming_message(char *from, char *message);
|
void prof_handle_incoming_message(char *from, char *message);
|
||||||
void prof_handle_error_message(const char *from, const char *err_msg);
|
void prof_handle_error_message(const char *from, const char *err_msg);
|
||||||
void prof_handle_roster(GSList *roster);
|
void prof_handle_roster(GSList *roster);
|
||||||
|
void prof_handle_gone(const char * const from);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
1
src/ui.h
1
src/ui.h
@ -87,6 +87,7 @@ void win_close_win(void);
|
|||||||
int win_in_chat(void);
|
int win_in_chat(void);
|
||||||
char *win_get_recipient(void);
|
char *win_get_recipient(void);
|
||||||
void win_show_typing(const char * const from);
|
void win_show_typing(const char * const from);
|
||||||
|
void win_show_gone(const char * const from);
|
||||||
void win_show_incomming_msg(const char * const from, const char * const message);
|
void win_show_incomming_msg(const char * const from, const char * const message);
|
||||||
void win_show_error_msg(const char * const from, const char *err_msg);
|
void win_show_error_msg(const char * const from, const char *err_msg);
|
||||||
void win_show_outgoing_msg(const char * const from, const char * const to,
|
void win_show_outgoing_msg(const char * const from, const char * const to,
|
||||||
|
@ -337,6 +337,31 @@ win_show_error_msg(const char * const from, const char *err_msg)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
win_show_gone(const char * const from)
|
||||||
|
{
|
||||||
|
int win_index;
|
||||||
|
WINDOW *win;
|
||||||
|
|
||||||
|
if (from == NULL)
|
||||||
|
return;
|
||||||
|
|
||||||
|
win_index = _find_prof_win_index(from);
|
||||||
|
// chat window exists
|
||||||
|
if (win_index < NUM_WINS) {
|
||||||
|
win = _wins[win_index].win;
|
||||||
|
_win_show_time(win);
|
||||||
|
wattron(win, COLOUR_AWAY);
|
||||||
|
wprintw(win, "*%s ", from);
|
||||||
|
wprintw(win, "has left the conversation.");
|
||||||
|
wprintw(win, "\n");
|
||||||
|
wattroff(win, COLOUR_AWAY);
|
||||||
|
if (win_index == _curr_prof_win) {
|
||||||
|
dirty = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef HAVE_LIBNOTIFY
|
#ifdef HAVE_LIBNOTIFY
|
||||||
static void
|
static void
|
||||||
_win_notify(const char * const message, int timeout,
|
_win_notify(const char * const message, int timeout,
|
||||||
|
Loading…
Reference in New Issue
Block a user