mirror of
https://git.jabber.space/devs/cproof.git
synced 2026-07-25 17:56:22 +00:00
Use lastactivity preference for presence updates
This commit is contained in:
@@ -212,7 +212,11 @@ _check_autoaway()
|
|||||||
|
|
||||||
// send away presence with last activity
|
// send away presence with last activity
|
||||||
char *message = prefs_get_string(PREF_AUTOAWAY_MESSAGE);
|
char *message = prefs_get_string(PREF_AUTOAWAY_MESSAGE);
|
||||||
cl_ev_presence_send(RESOURCE_AWAY, message, idle_ms / 1000);
|
if (prefs_get_boolean(PREF_LASTACTIVITY)) {
|
||||||
|
cl_ev_presence_send(RESOURCE_AWAY, message, idle_ms / 1000);
|
||||||
|
} else {
|
||||||
|
cl_ev_presence_send(RESOURCE_AWAY, message, 0);
|
||||||
|
}
|
||||||
|
|
||||||
int pri = accounts_get_priority_for_presence_type(account, RESOURCE_AWAY);
|
int pri = accounts_get_priority_for_presence_type(account, RESOURCE_AWAY);
|
||||||
if (message) {
|
if (message) {
|
||||||
@@ -248,7 +252,11 @@ _check_autoaway()
|
|||||||
|
|
||||||
// send extended away presence with last activity
|
// send extended away presence with last activity
|
||||||
char *message = prefs_get_string(PREF_AUTOXA_MESSAGE);
|
char *message = prefs_get_string(PREF_AUTOXA_MESSAGE);
|
||||||
cl_ev_presence_send(RESOURCE_XA, message, idle_ms / 1000);
|
if (prefs_get_boolean(PREF_LASTACTIVITY)) {
|
||||||
|
cl_ev_presence_send(RESOURCE_XA, message, idle_ms / 1000);
|
||||||
|
} else {
|
||||||
|
cl_ev_presence_send(RESOURCE_XA, message, 0);
|
||||||
|
}
|
||||||
|
|
||||||
int pri = accounts_get_priority_for_presence_type(account, RESOURCE_XA);
|
int pri = accounts_get_priority_for_presence_type(account, RESOURCE_XA);
|
||||||
if (message) {
|
if (message) {
|
||||||
|
|||||||
@@ -53,6 +53,7 @@
|
|||||||
#include "event/server_events.h"
|
#include "event/server_events.h"
|
||||||
#include "event/client_events.h"
|
#include "event/client_events.h"
|
||||||
#include "tools/autocomplete.h"
|
#include "tools/autocomplete.h"
|
||||||
|
#include "config/preferences.h"
|
||||||
#include "xmpp/connection.h"
|
#include "xmpp/connection.h"
|
||||||
#include "xmpp/roster.h"
|
#include "xmpp/roster.h"
|
||||||
#include "roster_list.h"
|
#include "roster_list.h"
|
||||||
@@ -355,7 +356,11 @@ _roster_result_handler(xmpp_conn_t * const conn, xmpp_stanza_t * const stanza, v
|
|||||||
GDateTime *lastdt = g_date_time_new_from_timeval_utc(&lasttv);
|
GDateTime *lastdt = g_date_time_new_from_timeval_utc(&lasttv);
|
||||||
GTimeSpan diff_micros = g_date_time_difference(nowdt, lastdt);
|
GTimeSpan diff_micros = g_date_time_difference(nowdt, lastdt);
|
||||||
int diff_secs = (diff_micros / 1000) / 1000;
|
int diff_secs = (diff_micros / 1000) / 1000;
|
||||||
cl_ev_presence_send(conn_presence, NULL, diff_secs);
|
if (prefs_get_boolean(PREF_LASTACTIVITY)) {
|
||||||
|
cl_ev_presence_send(conn_presence, NULL, diff_secs);
|
||||||
|
} else {
|
||||||
|
cl_ev_presence_send(conn_presence, NULL, 0);
|
||||||
|
}
|
||||||
g_date_time_unref(lastdt);
|
g_date_time_unref(lastdt);
|
||||||
} else {
|
} else {
|
||||||
cl_ev_presence_send(conn_presence, NULL, 0);
|
cl_ev_presence_send(conn_presence, NULL, 0);
|
||||||
|
|||||||
Reference in New Issue
Block a user