void chat_session_no_activity(const char * const recipient) { ChatSession session = g_hash_table_lookup(sessions, recipient); if (session != NULL) { if (session->active_timer != NULL) { gdouble elapsed = g_timer_elapsed(session->active_timer, NULL); if ((prefs_get_gone() != 0) && (elapsed > (prefs_get_gone() * 60.0))) { if (session->state != CHAT_STATE_GONE) { session->sent = FALSE; } session->state = CHAT_STATE_GONE; } else if (elapsed > INACTIVE_TIMOUT) { if (session->state != CHAT_STATE_INACTIVE) { session->sent = FALSE; } session->state = CHAT_STATE_INACTIVE; } else if (elapsed > PAUSED_TIMOUT) { if (session->state == CHAT_STATE_COMPOSING) { session->sent = FALSE; session->state = CHAT_STATE_PAUSED; } } } } }
void cons_gone_setting(void) { gint gone_time = prefs_get_gone(); if (gone_time == 0) { cons_show("Leave conversation (/gone) : OFF"); } else if (gone_time == 1) { cons_show("Leave conversation (/gone) : 1 minute"); } else { cons_show("Leave conversation (/gone) : %d minutes", gone_time); } }