mirror of
https://github.com/profanity-im/profanity.git
synced 2025-02-02 15:08:15 -05:00
Removed active and composing static functions
This commit is contained in:
parent
e75b8dcfb3
commit
254179e128
@ -65,10 +65,32 @@ typedef struct chat_session_t {
|
|||||||
|
|
||||||
static GHashTable *sessions;
|
static GHashTable *sessions;
|
||||||
|
|
||||||
static ChatSession* _chat_session_new(const char * const barejid, gboolean supported);
|
static ChatSession*
|
||||||
static void _chat_session_set_composing(const char * const barejid);
|
_chat_session_new(const char * const barejid, gboolean supported)
|
||||||
static void _chat_session_set_active(const char * const barejid);
|
{
|
||||||
static void _chat_session_free(ChatSession *session);
|
ChatSession *new_session = malloc(sizeof(struct chat_session_t));
|
||||||
|
new_session->barejid = strdup(barejid);
|
||||||
|
new_session->resource = NULL;
|
||||||
|
new_session->supported = supported;
|
||||||
|
new_session->state = CHAT_STATE_STARTED;
|
||||||
|
new_session->active_timer = g_timer_new();
|
||||||
|
new_session->sent = FALSE;
|
||||||
|
|
||||||
|
return new_session;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_chat_session_free(ChatSession *session)
|
||||||
|
{
|
||||||
|
if (session != NULL) {
|
||||||
|
free(session->barejid);
|
||||||
|
if (session->active_timer != NULL) {
|
||||||
|
g_timer_destroy(session->active_timer);
|
||||||
|
session->active_timer = NULL;
|
||||||
|
}
|
||||||
|
free(session);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
chat_sessions_init(void)
|
chat_sessions_init(void)
|
||||||
@ -84,46 +106,6 @@ chat_sessions_clear(void)
|
|||||||
g_hash_table_remove_all(sessions);
|
g_hash_table_remove_all(sessions);
|
||||||
}
|
}
|
||||||
|
|
||||||
ChatSession*
|
|
||||||
_chat_session_new(const char * const barejid, gboolean supported)
|
|
||||||
{
|
|
||||||
ChatSession *new_session = malloc(sizeof(struct chat_session_t));
|
|
||||||
new_session->barejid = strdup(barejid);
|
|
||||||
new_session->resource = NULL;
|
|
||||||
new_session->supported = supported;
|
|
||||||
new_session->state = CHAT_STATE_STARTED;
|
|
||||||
new_session->active_timer = g_timer_new();
|
|
||||||
new_session->sent = FALSE;
|
|
||||||
|
|
||||||
return new_session;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_chat_session_set_composing(const char * const barejid)
|
|
||||||
{
|
|
||||||
ChatSession *session = g_hash_table_lookup(sessions, barejid);
|
|
||||||
|
|
||||||
if (session != NULL) {
|
|
||||||
if (session->state != CHAT_STATE_COMPOSING) {
|
|
||||||
session->sent = FALSE;
|
|
||||||
}
|
|
||||||
session->state = CHAT_STATE_COMPOSING;
|
|
||||||
g_timer_start(session->active_timer);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_chat_session_set_active(const char * const barejid)
|
|
||||||
{
|
|
||||||
ChatSession *session = g_hash_table_lookup(sessions, barejid);
|
|
||||||
|
|
||||||
if (session != NULL) {
|
|
||||||
session->state = CHAT_STATE_ACTIVE;
|
|
||||||
g_timer_start(session->active_timer);
|
|
||||||
session->sent = TRUE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
gboolean
|
gboolean
|
||||||
chat_session_on_message_send(const char * const barejid)
|
chat_session_on_message_send(const char * const barejid)
|
||||||
{
|
{
|
||||||
@ -136,7 +118,9 @@ chat_session_on_message_send(const char * const barejid)
|
|||||||
|
|
||||||
}
|
}
|
||||||
if (session->supported) {
|
if (session->supported) {
|
||||||
_chat_session_set_active(barejid);
|
session->state = CHAT_STATE_ACTIVE;
|
||||||
|
g_timer_start(session->active_timer);
|
||||||
|
session->sent = TRUE;
|
||||||
send_state = TRUE;
|
send_state = TRUE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -200,7 +184,13 @@ chat_session_on_activity(const char * const barejid)
|
|||||||
ChatSession *session = g_hash_table_lookup(sessions, barejid);
|
ChatSession *session = g_hash_table_lookup(sessions, barejid);
|
||||||
if (session) {
|
if (session) {
|
||||||
if (session->supported) {
|
if (session->supported) {
|
||||||
_chat_session_set_composing(barejid);
|
if (session->state != CHAT_STATE_COMPOSING) {
|
||||||
|
session->sent = FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
session->state = CHAT_STATE_COMPOSING;
|
||||||
|
g_timer_start(session->active_timer);
|
||||||
|
|
||||||
if (!session->sent || session->state == CHAT_STATE_PAUSED) {
|
if (!session->sent || session->state == CHAT_STATE_PAUSED) {
|
||||||
message_send_composing(barejid);
|
message_send_composing(barejid);
|
||||||
session->sent = TRUE;
|
session->sent = TRUE;
|
||||||
@ -251,16 +241,3 @@ chat_session_on_inactivity(const char * const barejid)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
_chat_session_free(ChatSession *session)
|
|
||||||
{
|
|
||||||
if (session != NULL) {
|
|
||||||
free(session->barejid);
|
|
||||||
if (session->active_timer != NULL) {
|
|
||||||
g_timer_destroy(session->active_timer);
|
|
||||||
session->active_timer = NULL;
|
|
||||||
}
|
|
||||||
free(session);
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user