--- a/libpurple/protocols/jabber/jabber.c Sun Nov 16 00:10:02 2008 +0000 +++ b/libpurple/protocols/jabber/jabber.c Sun Nov 16 22:29:00 2008 +0000 @@ -1434,8 +1434,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, TRUE); } void jabber_add_feature(const char *shortname, const char *namespace, JabberFeatureEnabled cb) {