* !empathy_chat_is_room (). */
GRegex *highlight_regex;
- /* TRUE if empathy_chat_is_room() and there are unread highlighted messages.
- * Cleared by empathy_chat_messages_read(). */
+ /* TRUE if empathy_chat_is_room () and there are unread highlighted messages.
+ * Cleared by empathy_chat_messages_read (). */
gboolean highlighted;
};
chat_composing_stop_timeout_cb (EmpathyChat *chat)
{
EmpathyChatPriv *priv;
+ gboolean send_chat_states;
priv = GET_PRIV (chat);
priv->composing_stop_timeout_id = 0;
- set_chat_state (chat, TP_CHANNEL_CHAT_STATE_PAUSED);
+ send_chat_states = g_settings_get_boolean (priv->gsettings_chat,
+ EMPATHY_PREFS_CHAT_SEND_CHAT_STATES);
+ if (!send_chat_states) {
+ set_chat_state (chat, TP_CHANNEL_CHAT_STATE_ACTIVE);
+ } else {
+ set_chat_state (chat, TP_CHANNEL_CHAT_STATE_PAUSED);
+ }
return FALSE;
}
chat_composing_start (EmpathyChat *chat)
{
EmpathyChatPriv *priv;
+ gboolean send_chat_states;
priv = GET_PRIV (chat);
+ send_chat_states = g_settings_get_boolean (priv->gsettings_chat,
+ EMPATHY_PREFS_CHAT_SEND_CHAT_STATES);
+ if (!send_chat_states) {
+ return;
+ }
+
if (priv->composing_stop_timeout_id) {
/* Just restart the timeout */
chat_composing_remove_timeout (chat);
if (contact == NULL)
return NULL;
- individual = empathy_create_individual_from_tp_contact (contact);
+ individual = empathy_ensure_individual_from_tp_contact (contact);
+
if (individual == NULL)
return NULL;