--- a/libpurple/protocols/jabber/jabber.c Wed Dec 17 05:39:11 2008 +0000 +++ b/libpurple/protocols/jabber/jabber.c Wed Dec 17 18:01:08 2008 +0000 @@ -1441,8 +1441,14 @@ void jabber_idle_set(PurpleConnection *gc, int idle) { JabberStream *js = gc->proto_data; - + PurpleAccount *account = purple_connection_get_account(gc); + PurpleStatus *status = purple_account_get_active_status(account); + js->idle = idle ? time(NULL) - idle : idle; + + /* send out an updated prescence */ + purple_debug_info("jabber", "sending updated presence for idle\n"); + jabber_presence_send(account, status); } void jabber_add_feature(const char *shortname, const char *namespace, JabberFeatureEnabled cb) {