diff options
Diffstat (limited to 'src/profanity.c')
-rw-r--r-- | src/profanity.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/profanity.c b/src/profanity.c index e53ac176..b28eae20 100644 --- a/src/profanity.c +++ b/src/profanity.c @@ -46,6 +46,7 @@ #include "profanity.h" #include "chat_session.h" +#include "chat_state.h" #include "config/accounts.h" #include "config/preferences.h" #include "config/theme.h" @@ -75,7 +76,7 @@ prof_run(const int disable_tls, char *log_level, char *account_name) { _init(disable_tls, log_level); log_info("Starting main event loop"); - ui_input_nonblocking(); + ui_input_nonblocking(TRUE); GTimer *timer = g_timer_new(); gboolean cmd_result = TRUE; jabber_conn_status_t conn_status = jabber_get_connection_status(); @@ -142,7 +143,8 @@ prof_handle_idle(void) while (curr != NULL) { char *barejid = curr->data; - chat_session_on_inactivity(barejid); + ProfChatWin *chatwin = wins_get_chat(barejid); + chat_state_handle_idle(chatwin->barejid, chatwin->state); curr = g_slist_next(curr); } @@ -160,7 +162,7 @@ prof_handle_activity(void) if ((status == JABBER_CONNECTED) && (win_type == WIN_CHAT)) { ProfChatWin *chatwin = wins_get_current_chat(); - chat_session_on_activity(chatwin->barejid); + chat_state_handle_typing(chatwin->barejid, chatwin->state); } } @@ -290,7 +292,13 @@ _init(const int disable_tls, char *log_level) static void _shutdown(void) { - ui_clear_win_title(); + if (prefs_get_boolean(PREF_TITLEBAR_SHOW)) { + if (prefs_get_boolean(PREF_TITLEBAR_GOODBYE)) { + ui_goodbye_title(); + } else { + ui_clear_win_title(); + } + } ui_close_all_wins(); jabber_disconnect(); jabber_shutdown(); |