gtk/plugins/mailchk.c

Tue, 17 Oct 2006 08:13:41 +0000

author
Etan Reisner <deryni@pidgin.im>
date
Tue, 17 Oct 2006 08:13:41 +0000
changeset 14801
6554d4d17db8
parent 14253
b63ebf84c42b
child 20470
77693555855f
permissions
-rw-r--r--

[gaim-migrate @ 17495]
This should fix the statusbox issues that were keeping us from releasing beta
4 (and which were just really annoying). Thakn sadrul for most of this, I just
added the if (index == -1) bit. Anyway, the way this works now is that for
saved/popular statuses the primitive underlying that status is where the
dropdown for the statusbox starts. If we don't like that we can change it but
I'm not sure we'll find something better.

Also, this might plug a couple leaks, I'm not really sure but it certainly
looks right.

Up next, the patch to make the docklet use the per-protocol statuses in the
top section.

6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
1 #include "internal.h"
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
2
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
3 #include "debug.h"
4576
99c15f8a04ee [gaim-migrate @ 4857]
Paul Aurich <darkrain42@pidgin.im>
parents: 4575
diff changeset
4 #include "sound.h"
9954
52a14a58a33e [gaim-migrate @ 10851]
Nathan Walp <nwalp@pidgin.im>
parents: 9821
diff changeset
5 #include "version.h"
6677
effa9861ec8e [gaim-migrate @ 7202]
Paul Aurich <darkrain42@pidgin.im>
parents: 6485
diff changeset
6
effa9861ec8e [gaim-migrate @ 7202]
Paul Aurich <darkrain42@pidgin.im>
parents: 6485
diff changeset
7 #include "gtkblist.h"
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
8 #include "gtkplugin.h"
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
9
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
10 #define MAILCHK_PLUGIN_ID "gtk-mailchk"
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 4655
diff changeset
11
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
12 #define ANY_MAIL 0x01
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
13 #define UNREAD_MAIL 0x02
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
14 #define NEW_MAIL 0x04
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
15
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
16 static guint32 timer = 0;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
17 static GtkWidget *mail = NULL;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
18
10218
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
19 static gint
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
20 check_mail()
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
21 {
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
22 static off_t oldsize = 0;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
23 gchar *filename;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
24 off_t newsize;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
25 struct stat s;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
26 gint ret = 0;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
27
4655
232f23f33b0a [gaim-migrate @ 4966]
Nathan Walp <nwalp@pidgin.im>
parents: 4576
diff changeset
28 filename = g_strdup(g_getenv("MAIL"));
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
29 if (!filename)
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
30 filename = g_strconcat("/var/spool/mail/", g_get_user_name(), NULL);
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
31
10589
4e10236e06d4 [gaim-migrate @ 11994]
Daniel Atallah <datallah@pidgin.im>
parents: 10218
diff changeset
32 if (g_stat(filename, &s) < 0) {
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
33 g_free(filename);
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
34 return -1;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
35 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
36
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
37 newsize = s.st_size;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
38 if (newsize) ret |= ANY_MAIL;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
39 if (s.st_mtime > s.st_atime && newsize) ret |= UNREAD_MAIL;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
40 if (newsize != oldsize && (ret & UNREAD_MAIL)) ret |= NEW_MAIL;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
41 oldsize = newsize;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
42
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
43 g_free(filename);
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
44
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
45 return ret;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
46 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
47
10218
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
48 static void
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
49 destroy_cb()
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
50 {
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
51 mail = NULL;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
52 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
53
10218
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
54 static gboolean
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
55 check_timeout(gpointer data)
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
56 {
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
57 gint count = check_mail();
8598
6844e36a130a [gaim-migrate @ 9349]
Paul Aurich <darkrain42@pidgin.im>
parents: 6677
diff changeset
58 GaimBuddyList *list = gaim_get_blist();
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
59
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
60 if (count == -1)
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
61 return FALSE;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
62
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
63 if (!list || !GAIM_IS_GTK_BLIST(list) || !(GAIM_GTK_BLIST(list)->vbox))
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
64 return TRUE;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
65
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
66 if (!mail) {
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
67 /* guess we better build it then :P */
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
68 GtkWidget *vbox = GAIM_GTK_BLIST(list)->vbox;
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
69
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
70 mail = gtk_label_new("No mail messages.");
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
71 gtk_box_pack_start(GTK_BOX(vbox), mail, FALSE, FALSE, 0);
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
72 gtk_box_reorder_child(GTK_BOX(vbox), mail, 1);
5314
56ef6a09fb99 [gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents: 5255
diff changeset
73 g_signal_connect(G_OBJECT(mail), "destroy", G_CALLBACK(destroy_cb), NULL);
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
74 gtk_widget_show(mail);
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
75 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
76
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
77 if (count & NEW_MAIL)
11642
76b60f0bf467 [gaim-migrate @ 13919]
Casey Harkins <charkins@pidgin.im>
parents: 11256
diff changeset
78 gaim_sound_play_event(GAIM_SOUND_POUNCE_DEFAULT, NULL);
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
79
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
80 if (count & UNREAD_MAIL)
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
81 gtk_label_set_text(GTK_LABEL(mail), "You have new mail!");
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
82 else if (count & ANY_MAIL)
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
83 gtk_label_set_text(GTK_LABEL(mail), "You have mail.");
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
84 else
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
85 gtk_label_set_text(GTK_LABEL(mail), "No mail messages.");
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
86
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
87 return TRUE;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
88 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
89
10218
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
90 static void
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
91 signon_cb(GaimConnection *gc)
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
92 {
8598
6844e36a130a [gaim-migrate @ 9349]
Paul Aurich <darkrain42@pidgin.im>
parents: 6677
diff changeset
93 GaimBuddyList *list = gaim_get_blist();
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
94 if (list && GAIM_IS_GTK_BLIST(list) && !timer) {
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
95 check_timeout(NULL); /* we want the box to be drawn immediately */
4168
46523d0de8ab [gaim-migrate @ 4397]
Nathan Walp <nwalp@pidgin.im>
parents: 4165
diff changeset
96 timer = g_timeout_add(2000, check_timeout, NULL);
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
97 }
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
98 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
99
10218
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
100 static void
c93f3fcdb85d [gaim-migrate @ 11346]
Mark Doliner <markdoliner@pidgin.im>
parents: 9954
diff changeset
101 signoff_cb(GaimConnection *gc)
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
102 {
8598
6844e36a130a [gaim-migrate @ 9349]
Paul Aurich <darkrain42@pidgin.im>
parents: 6677
diff changeset
103 GaimBuddyList *list = gaim_get_blist();
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
104 if ((!list || !GAIM_IS_GTK_BLIST(list) || !GAIM_GTK_BLIST(list)->vbox) && timer) {
4168
46523d0de8ab [gaim-migrate @ 4397]
Nathan Walp <nwalp@pidgin.im>
parents: 4165
diff changeset
105 g_source_remove(timer);
2259
125778605342 [gaim-migrate @ 2269]
Daniel J Peng
parents: 1804
diff changeset
106 timer = 0;
125778605342 [gaim-migrate @ 2269]
Daniel J Peng
parents: 1804
diff changeset
107 }
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
108 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
109
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
110 /*
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
111 * EXPORTED FUNCTIONS
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
112 */
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
113
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
114 static gboolean
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
115 plugin_load(GaimPlugin *plugin)
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
116 {
8598
6844e36a130a [gaim-migrate @ 9349]
Paul Aurich <darkrain42@pidgin.im>
parents: 6677
diff changeset
117 GaimBuddyList *list = gaim_get_blist();
6485
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
118 void *conn_handle = gaim_connections_get_handle();
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
119
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
120 if (!check_timeout(NULL)) {
8598
6844e36a130a [gaim-migrate @ 9349]
Paul Aurich <darkrain42@pidgin.im>
parents: 6677
diff changeset
121 gaim_debug_warning("mailchk", "Could not read $MAIL or /var/spool/mail/$USER");
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
122 return FALSE;
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
123 }
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
124
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
125 if (list && GAIM_IS_GTK_BLIST(list) && GAIM_GTK_BLIST(list)->vbox)
4168
46523d0de8ab [gaim-migrate @ 4397]
Nathan Walp <nwalp@pidgin.im>
parents: 4165
diff changeset
126 timer = g_timeout_add(2000, check_timeout, NULL);
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
127
6485
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
128 gaim_signal_connect(conn_handle, "signed-on",
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
129 plugin, GAIM_CALLBACK(signon_cb), NULL);
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
130 gaim_signal_connect(conn_handle, "signed-off",
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
131 plugin, GAIM_CALLBACK(signoff_cb), NULL);
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
132
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
133 return TRUE;
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
134 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
135
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
136 static gboolean
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
137 plugin_unload(GaimPlugin *plugin)
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
138 {
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
139 if (timer)
4168
46523d0de8ab [gaim-migrate @ 4397]
Nathan Walp <nwalp@pidgin.im>
parents: 4165
diff changeset
140 g_source_remove(timer);
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
141 timer = 0;
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
142 if (mail)
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
143 gtk_widget_destroy(mail);
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
144 mail = NULL;
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
145
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
146 return TRUE;
1803
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
147 }
daa06a2e2230 [gaim-migrate @ 1813]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
148
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
149 static GaimPluginInfo info =
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
150 {
9954
52a14a58a33e [gaim-migrate @ 10851]
Nathan Walp <nwalp@pidgin.im>
parents: 9821
diff changeset
151 GAIM_PLUGIN_MAGIC,
52a14a58a33e [gaim-migrate @ 10851]
Nathan Walp <nwalp@pidgin.im>
parents: 9821
diff changeset
152 GAIM_MAJOR_VERSION,
52a14a58a33e [gaim-migrate @ 10851]
Nathan Walp <nwalp@pidgin.im>
parents: 9821
diff changeset
153 GAIM_MINOR_VERSION,
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
154 GAIM_PLUGIN_STANDARD,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
155 GAIM_GTK_PLUGIN_TYPE,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
156 0,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
157 NULL,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
158 GAIM_PRIORITY_DEFAULT,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
159 MAILCHK_PLUGIN_ID,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
160 N_("Mail Checker"),
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
161 VERSION,
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
162 N_("Checks for new local mail."),
8598
6844e36a130a [gaim-migrate @ 9349]
Paul Aurich <darkrain42@pidgin.im>
parents: 6677
diff changeset
163 N_("Adds a small box to the buddy list that"
6844e36a130a [gaim-migrate @ 9349]
Paul Aurich <darkrain42@pidgin.im>
parents: 6677
diff changeset
164 " shows if you have new mail."),
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
165 "Eric Warmenhoven <eric@warmenhoven.org>",
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 6287
diff changeset
166 GAIM_WEBSITE,
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
167 plugin_load,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
168 plugin_unload,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
169 NULL,
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
170 NULL,
8993
41f67bceab41 [gaim-migrate @ 9768]
Luke Schierer <lschiere@pidgin.im>
parents: 8749
diff changeset
171 NULL,
41f67bceab41 [gaim-migrate @ 9768]
Luke Schierer <lschiere@pidgin.im>
parents: 8749
diff changeset
172 NULL,
6287
54a7a34f6e28 [gaim-migrate @ 6786]
Paul Aurich <darkrain42@pidgin.im>
parents: 6063
diff changeset
173 NULL
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
174 };
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
175
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
176 static void
5920
963bfdefee02 [gaim-migrate @ 6360]
Christian Hammond <chipx86@chipx86.com>
parents: 5314
diff changeset
177 init_plugin(GaimPlugin *plugin)
5255
8aa84137a01f [gaim-migrate @ 5627]
Paul Aurich <darkrain42@pidgin.im>
parents: 5205
diff changeset
178 {
3551
acce66c34dbd [gaim-migrate @ 3626]
Sean Egan <seanegan@pidgin.im>
parents: 3060
diff changeset
179 }
acce66c34dbd [gaim-migrate @ 3626]
Sean Egan <seanegan@pidgin.im>
parents: 3060
diff changeset
180
6063
8fbafa2e1846 [gaim-migrate @ 6513]
Nathan Walp <nwalp@pidgin.im>
parents: 5920
diff changeset
181 GAIM_INIT_PLUGIN(mailchk, init_plugin, info)

mercurial