Mercurial > ~mikael > mcabber > hg
view mcabber/src/events.h @ 1014:99c5278bf6b8
Keep the status and status messages when we're disconnected
Improve the automatic reconnection after a network failure.
- AutoConnection is only set to false when the user disconnects
explicitly (i.e. in do_disconnect()).
- AutoConnection is set to TRUE after the 1st successful connection.
- In jb_setstatus(), update the status message and the "wanted status"
even in offline mode. It helps with auto-away.
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Sun, 12 Nov 2006 22:25:14 +0100 |
parents | 527d6f234924 |
children | ac9c89f6cb51 |
line wrap: on
line source
#ifndef __EVENTS_H__ #define __EVENTS_H__ 1 #include "jabglue.h" #define EVS_DEFAULT_TIMEOUT 90 #define EVS_MAX_TIMEOUT 432000 #define EVS_CONTEXT_TIMEOUT 0U #define EVS_CONTEXT_CANCEL 1U #define EVS_CONTEXT_USER 2U typedef enum { EVS_TYPE_SUBSCRIPTION = 1 } evs_type; /* Common structure for events (evs) and IQ requests (iqs) */ typedef struct { char *id; time_t ts_create; time_t ts_expire; guint8 type; gpointer data; void (*callback)(); xmlnode xmldata; char *desc; } eviqs; eviqs *evs_new(guint8 type, time_t timeout); int evs_del(const char *evid); int evs_callback(const char *evid, guint evcontext); void evs_check_timeout(time_t now_t); void evs_display_list(void); GSList *evs_geteventslist(int forcompl); #endif /* __EVENTS_H__ */ /* vim: set expandtab cindent cinoptions=>2\:2(0: For Vim users... */