annotate plugins/mailchk.c @ 8658:4133c85d76f7

[gaim-migrate @ 9410] Fix the problem mentioned on gaim-devel: "Crash when 'Log your own signons/idleness/awayness' is on and a connection is cancelled while connecting" There is a flaw in Gaim here. "You have signed on" can be written to the system log before "You have signed off." This happens when you disconnect an account while it is connected. It's an extremely minor problem and I don't feel like fixing it. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Wed, 14 Apr 2004 04:04:42 +0000
parents 58e02f309485
children d7b8eb1f0a18
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
1 #include "internal.h"
6677
cce494e69d68 [gaim-migrate @ 7202]
Luke Schierer <lschiere@pidgin.im>
parents: 6485
diff changeset
2 #include "gtkinternal.h"
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
3
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
4 #include "blist.h"
6677
cce494e69d68 [gaim-migrate @ 7202]
Luke Schierer <lschiere@pidgin.im>
parents: 6485
diff changeset
5 #include "conversation.h"
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
6 #include "debug.h"
6677
cce494e69d68 [gaim-migrate @ 7202]
Luke Schierer <lschiere@pidgin.im>
parents: 6485
diff changeset
7 #include "signals.h"
4576
c7569367ed87 [gaim-migrate @ 4857]
Luke Schierer <lschiere@pidgin.im>
parents: 4575
diff changeset
8 #include "sound.h"
6677
cce494e69d68 [gaim-migrate @ 7202]
Luke Schierer <lschiere@pidgin.im>
parents: 6485
diff changeset
9
cce494e69d68 [gaim-migrate @ 7202]
Luke Schierer <lschiere@pidgin.im>
parents: 6485
diff changeset
10 #include "gtkblist.h"
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
11 #include "gtkplugin.h"
8598
58e02f309485 [gaim-migrate @ 9349]
Luke Schierer <lschiere@pidgin.im>
parents: 6677
diff changeset
12 #include "gtksound.h"
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
13
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
14 #define MAILCHK_PLUGIN_ID "gtk-mailchk"
5205
fefad67de2c7 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 4655
diff changeset
15
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
16 #define ANY_MAIL 0x01
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
17 #define UNREAD_MAIL 0x02
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
18 #define NEW_MAIL 0x04
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
19
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
20 static guint32 timer = 0;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
21 static GtkWidget *mail = NULL;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
22
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
23 static gint check_mail()
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
24 {
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
25 static off_t oldsize = 0;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
26 gchar *filename;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
27 off_t newsize;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
28 struct stat s;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
29 gint ret = 0;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
30
4655
fac4c73dd5ad [gaim-migrate @ 4966]
Nathan Walp <nwalp@pidgin.im>
parents: 4576
diff changeset
31 filename = g_strdup(g_getenv("MAIL"));
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
32 if (!filename)
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
33 filename = g_strconcat("/var/spool/mail/", g_get_user_name(), NULL);
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
34
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
35 if (stat(filename, &s) < 0) {
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
36 g_free(filename);
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
37 return -1;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
38 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
39
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
40 newsize = s.st_size;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
41 if (newsize) ret |= ANY_MAIL;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
42 if (s.st_mtime > s.st_atime && newsize) ret |= UNREAD_MAIL;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
43 if (newsize != oldsize && (ret & UNREAD_MAIL)) ret |= NEW_MAIL;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
44 oldsize = newsize;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
45
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
46 g_free(filename);
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
47
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
48 return ret;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
49 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
50
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
51 static void destroy_cb()
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
52 {
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
53 mail = NULL;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
54 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
55
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
56 static gboolean check_timeout(gpointer data)
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
57 {
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
58 gint count = check_mail();
8598
58e02f309485 [gaim-migrate @ 9349]
Luke Schierer <lschiere@pidgin.im>
parents: 6677
diff changeset
59 GaimBuddyList *list = gaim_get_blist();
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
60
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
61 if (count == -1)
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
62 return FALSE;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
63
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
64 if (!list || !GAIM_IS_GTK_BLIST(list) || !(GAIM_GTK_BLIST(list)->vbox))
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
65 return TRUE;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
66
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
67 if (!mail) {
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
68 /* guess we better build it then :P */
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
69 GtkWidget *vbox = GAIM_GTK_BLIST(list)->vbox;
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
70
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
71 mail = gtk_label_new("No mail messages.");
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
72 gtk_box_pack_start(GTK_BOX(vbox), mail, FALSE, FALSE, 0);
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
73 gtk_box_reorder_child(GTK_BOX(vbox), mail, 1);
5314
1f901484599d [gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents: 5255
diff changeset
74 g_signal_connect(G_OBJECT(mail), "destroy", G_CALLBACK(destroy_cb), NULL);
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
75 gtk_widget_show(mail);
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
76 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
77
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
78 if (count & NEW_MAIL)
4576
c7569367ed87 [gaim-migrate @ 4857]
Luke Schierer <lschiere@pidgin.im>
parents: 4575
diff changeset
79 gaim_sound_play_event(GAIM_SOUND_POUNCE_DEFAULT);
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
80
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
81 if (count & UNREAD_MAIL)
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
82 gtk_label_set_text(GTK_LABEL(mail), "You have new mail!");
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
83 else if (count & ANY_MAIL)
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
84 gtk_label_set_text(GTK_LABEL(mail), "You have mail.");
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
85 else
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
86 gtk_label_set_text(GTK_LABEL(mail), "No mail messages.");
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
87
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
88 return TRUE;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
89 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
90
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
91 static void signon_cb(GaimConnection *gc)
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
92 {
8598
58e02f309485 [gaim-migrate @ 9349]
Luke Schierer <lschiere@pidgin.im>
parents: 6677
diff changeset
93 GaimBuddyList *list = gaim_get_blist();
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
94 if (list && GAIM_IS_GTK_BLIST(list) && !timer) {
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
95 check_timeout(NULL); /* we want the box to be drawn immediately */
4168
ebfb80bbe1ed [gaim-migrate @ 4397]
Luke Schierer <lschiere@pidgin.im>
parents: 4165
diff changeset
96 timer = g_timeout_add(2000, check_timeout, NULL);
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
97 }
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
98 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
99
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
100 static void signoff_cb(GaimConnection *gc)
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
101 {
8598
58e02f309485 [gaim-migrate @ 9349]
Luke Schierer <lschiere@pidgin.im>
parents: 6677
diff changeset
102 GaimBuddyList *list = gaim_get_blist();
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
103 if ((!list || !GAIM_IS_GTK_BLIST(list) || !GAIM_GTK_BLIST(list)->vbox) && timer) {
4168
ebfb80bbe1ed [gaim-migrate @ 4397]
Luke Schierer <lschiere@pidgin.im>
parents: 4165
diff changeset
104 g_source_remove(timer);
2259
866bf3ced1bc [gaim-migrate @ 2269]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1804
diff changeset
105 timer = 0;
866bf3ced1bc [gaim-migrate @ 2269]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1804
diff changeset
106 }
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
107 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
108
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
109 /*
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
110 * EXPORTED FUNCTIONS
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
111 */
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
112
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
113 static gboolean
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
114 plugin_load(GaimPlugin *plugin)
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
115 {
8598
58e02f309485 [gaim-migrate @ 9349]
Luke Schierer <lschiere@pidgin.im>
parents: 6677
diff changeset
116 GaimBuddyList *list = gaim_get_blist();
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
117 void *conn_handle = gaim_connections_get_handle();
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
118
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
119 if (!check_timeout(NULL)) {
8598
58e02f309485 [gaim-migrate @ 9349]
Luke Schierer <lschiere@pidgin.im>
parents: 6677
diff changeset
120 gaim_debug_warning("mailchk", "Could not read $MAIL or /var/spool/mail/$USER");
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
121 return FALSE;
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
122 }
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
123
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
124 if (list && GAIM_IS_GTK_BLIST(list) && GAIM_GTK_BLIST(list)->vbox)
4168
ebfb80bbe1ed [gaim-migrate @ 4397]
Luke Schierer <lschiere@pidgin.im>
parents: 4165
diff changeset
125 timer = g_timeout_add(2000, check_timeout, NULL);
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
126
6485
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
127 gaim_signal_connect(conn_handle, "signed-on",
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
128 plugin, GAIM_CALLBACK(signon_cb), NULL);
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
129 gaim_signal_connect(conn_handle, "signed-off",
70d5122bc3ff [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
130 plugin, GAIM_CALLBACK(signoff_cb), NULL);
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
131
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
132 return TRUE;
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
133 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
134
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
135 static gboolean
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
136 plugin_unload(GaimPlugin *plugin)
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
137 {
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
138 if (timer)
4168
ebfb80bbe1ed [gaim-migrate @ 4397]
Luke Schierer <lschiere@pidgin.im>
parents: 4165
diff changeset
139 g_source_remove(timer);
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
140 timer = 0;
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
141 if (mail)
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
142 gtk_widget_destroy(mail);
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
143 mail = NULL;
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
144
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
145 return TRUE;
1803
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
146 }
d36f759df56d [gaim-migrate @ 1813]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
147
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
148 static GaimPluginInfo info =
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
149 {
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
150 2,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
151 GAIM_PLUGIN_STANDARD,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
152 GAIM_GTK_PLUGIN_TYPE,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
153 0,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
154 NULL,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
155 GAIM_PRIORITY_DEFAULT,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
156 MAILCHK_PLUGIN_ID,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
157 N_("Mail Checker"),
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
158 VERSION,
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
159 N_("Checks for new local mail."),
8598
58e02f309485 [gaim-migrate @ 9349]
Luke Schierer <lschiere@pidgin.im>
parents: 6677
diff changeset
160 N_("Adds a small box to the buddy list that"
58e02f309485 [gaim-migrate @ 9349]
Luke Schierer <lschiere@pidgin.im>
parents: 6677
diff changeset
161 " shows if you have new mail."),
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
162 "Eric Warmenhoven <eric@warmenhoven.org>",
6371
8f94cce8faa5 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 6287
diff changeset
163 GAIM_WEBSITE,
6287
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
164 plugin_load,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
165 plugin_unload,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
166 NULL,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
167 NULL,
bb811465c82d [gaim-migrate @ 6786]
Luke Schierer <lschiere@pidgin.im>
parents: 6063
diff changeset
168 NULL
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
169 };
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
170
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
171 static void
5920
7d385de2f9cd [gaim-migrate @ 6360]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
172 init_plugin(GaimPlugin *plugin)
5255
c0baa01cdeda [gaim-migrate @ 5627]
Luke Schierer <lschiere@pidgin.im>
parents: 5205
diff changeset
173 {
3551
cd938f18f3f8 [gaim-migrate @ 3626]
Sean Egan <seanegan@gmail.com>
parents: 3060
diff changeset
174 }
cd938f18f3f8 [gaim-migrate @ 3626]
Sean Egan <seanegan@gmail.com>
parents: 3060
diff changeset
175
6063
5239a3b4ab33 [gaim-migrate @ 6513]
Nathan Walp <nwalp@pidgin.im>
parents: 5920
diff changeset
176 GAIM_INIT_PLUGIN(mailchk, init_plugin, info)