Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/EionRobb/skype4pidgin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEion Robb <eion@robbmob.com>2017-03-25 12:29:07 +0300
committerEion Robb <eion@robbmob.com>2017-03-25 12:29:07 +0300
commit150bca864946616200cb1d775ce04fbb6bdb51af (patch)
treea2ea21bb3871efc77c23f71e5730dbf2b67500f7
parent432af345350a183817af0a5cfc3893eb5491f842 (diff)
Mark idle users as online but idle instead of offline
Fixes issue #531
-rw-r--r--skypeweb/skypeweb_messages.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/skypeweb/skypeweb_messages.c b/skypeweb/skypeweb_messages.c
index 65f7320..7e5de86 100644
--- a/skypeweb/skypeweb_messages.c
+++ b/skypeweb/skypeweb_messages.c
@@ -57,6 +57,7 @@ process_userpresence_resource(SkypeWebAccount *sa, JsonObject *resource)
// const gchar *capabilities = json_object_get_string_member(resource, "capabilities");
// const gchar *lastSeenAt = json_object_get_string_member(resource, "lastSeenAt");
const gchar *from;
+ gboolean is_idle;
from = skypeweb_contact_url_to_name(selfLink);
g_return_if_fail(from);
@@ -77,8 +78,14 @@ process_userpresence_resource(SkypeWebAccount *sa, JsonObject *resource)
// purple_protocol_got_user_status(sa->account, from, "mobile", NULL);
// }
- purple_protocol_got_user_status(sa->account, from, status, NULL);
- purple_protocol_got_user_idle(sa->account, from, g_str_equal(status, "Idle"), 0);
+ is_idle = purple_strequal(status, SKYPEWEB_STATUS_IDLE);
+ if (!is_idle) {
+ purple_protocol_got_user_status(sa->account, from, status, NULL);
+ } else {
+ purple_protocol_got_user_status(sa->account, from, SKYPEWEB_STATUS_ONLINE, NULL);
+ }
+
+ purple_protocol_got_user_idle(sa->account, from, is_idle, 0);
}
// static gboolean