finch/plugins/gntgf.c

Wed, 13 May 2009 20:29:03 +0000

author
Marcus Lundblad <malu@pidgin.im>
date
Wed, 13 May 2009 20:29:03 +0000
changeset 27110
05ca719b901b
parent 26651
d9f1eeefb89c
child 31294
73607ab89c6f
permissions
-rw-r--r--

Support custom smileys in MUCs (when all participants support BoB and a maximum
of 10 participants are in the chat).
Always announce support for BoB, since disable custom smileys will still turn
off fetching them, and BoB can be used for other purposes further on.

14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
1 /**
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
2 * @file gntgf.c Minimal toaster plugin in Gnt.
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
3 *
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
4 * Copyright (C) 2006 Sadrul Habib Chowdhury <sadrul@users.sourceforge.net>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
5 *
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
6 * This program is free software; you can redistribute it and/or modify
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
7 * it under the terms of the GNU General Public License as published by
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
8 * the Free Software Foundation; either version 2 of the License, or
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
9 * (at your option) any later version.
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
10 *
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
11 * This program is distributed in the hope that it will be useful,
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
14 * GNU General Public License for more details.
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
15 *
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
16 * You should have received a copy of the GNU General Public License
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
17 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 17188
diff changeset
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
19 */
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
20
14285
f8331daf743d [gaim-migrate @ 16904]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14219
diff changeset
21
f8331daf743d [gaim-migrate @ 16904]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14219
diff changeset
22 #include "internal.h"
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
23
25633
feee0c7e503f Fix some more mis-identified plugins, like 3b3526a0...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 22104
diff changeset
24 #define PLUGIN_STATIC_NAME GntGf
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
25
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
26 #define PREFS_PREFIX "/plugins/gnt/gntgf"
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
27 #define PREFS_EVENT PREFS_PREFIX "/events"
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
28 #define PREFS_EVENT_SIGNONF PREFS_EVENT "/signonf"
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
29 #define PREFS_EVENT_IM_MSG PREFS_EVENT "/immsg"
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
30 #define PREFS_EVENT_CHAT_MSG PREFS_EVENT "/chatmsg"
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
31 #define PREFS_EVENT_CHAT_NICK PREFS_EVENT "/chatnick"
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
32 #define PREFS_BEEP PREFS_PREFIX "/beep"
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
33
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
34 #define MAX_COLS 3
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
35
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
36 #ifdef HAVE_X11
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
37 #define PREFS_URGENT PREFS_PREFIX "/urgent"
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
38
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
39 #include <X11/Xlib.h>
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
40 #include <X11/Xutil.h>
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
41 #endif
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
42
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
43 #include <glib.h>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
44
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
45 #include <plugin.h>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
46 #include <version.h>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
47 #include <blist.h>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
48 #include <conversation.h>
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
49 #include <debug.h>
26651
d9f1eeefb89c Save the world.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
50 #include <eventloop.h>
14208
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
51 #include <util.h>
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
52
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
53 #include <gnt.h>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
54 #include <gntbox.h>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
55 #include <gntbutton.h>
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
56 #include <gntcheckbox.h>
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
57 #include <gntlabel.h>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
58 #include <gnttree.h>
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
59
17188
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
60 #include "gntplugin.h"
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
61 #include "gntconv.h"
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
62
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
63 typedef struct
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
64 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
65 GntWidget *window;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
66 int timer;
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
67 int column;
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
68 } GntToast;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
69
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
70 static GList *toasters;
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
71 static int gpsy[MAX_COLS];
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
72 static int gpsw[MAX_COLS];
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
73
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
74 static void
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
75 destroy_toaster(GntToast *toast)
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
76 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
77 toasters = g_list_remove(toasters, toast);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
78 gnt_widget_destroy(toast->window);
26651
d9f1eeefb89c Save the world.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
79 purple_timeout_remove(toast->timer);
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
80 g_free(toast);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
81 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
82
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
83 static gboolean
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
84 remove_toaster(GntToast *toast)
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
85 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
86 GList *iter;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
87 int h;
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
88 int col;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
89 int nwin[MAX_COLS];
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
90
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
91 gnt_widget_get_size(toast->window, NULL, &h);
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
92 gpsy[toast->column] -= h;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
93 col = toast->column;
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
94
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
95 memset(&nwin, 0, sizeof(nwin));
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
96 destroy_toaster(toast);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
97
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
98 for (iter = toasters; iter; iter = iter->next)
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
99 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
100 int x, y;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
101 toast = iter->data;
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
102 nwin[toast->column]++;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
103 if (toast->column != col) continue;
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
104 gnt_widget_get_position(toast->window, &x, &y);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
105 y += h;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
106 gnt_screen_move_widget(toast->window, x, y);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
107 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
108
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
109 if (nwin[col] == 0)
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
110 gpsw[col] = 0;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
111
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
112 return FALSE;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
113 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
114
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
115 #ifdef HAVE_X11
16399
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
116 static int
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
117 error_handler(Display *dpy, XErrorEvent *error)
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
118 {
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
119 char buffer[1024];
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
120 XGetErrorText(dpy, error->error_code, buffer, sizeof(buffer));
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
121 purple_debug_error("gntgf", "Could not set urgent to the window: %s.\n", buffer);
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
122 return 0;
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
123 }
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
124
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
125 static void
22104
56970903b8e9 Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@pidgin.im>
parents: 20288
diff changeset
126 urgent(void)
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
127 {
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
128 /* This is from deryni/tuomov's urgent_test.c */
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
129 Display *dpy;
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
130 Window id;
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
131 const char *ids;
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
132 XWMHints *hints;
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
133
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
134 ids = getenv("WINDOWID");
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
135 if (ids == NULL)
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
136 return;
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
137
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
138 id = atoi(ids);
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
139
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
140 dpy = XOpenDisplay(NULL);
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
141 if (dpy == NULL)
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
142 return;
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
143
16399
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
144 XSetErrorHandler(error_handler);
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
145 hints = XGetWMHints(dpy, id);
16399
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
146 if (hints) {
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
147 hints->flags|=XUrgencyHint;
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
148 XSetWMHints(dpy, id, hints);
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
149 XFree(hints);
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
150 }
8f21225e5e95 Gracefully do nothing if the WINDOWID is invalid. And plug a leak, thanks to deryni.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15924
diff changeset
151 XSetErrorHandler(NULL);
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
152
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
153 XFlush(dpy);
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
154 XCloseDisplay(dpy);
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
155 }
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
156 #endif
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
157
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
158 static void
17188
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
159 notify(PurpleConversation *conv, const char *fmt, ...)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
160 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
161 GntWidget *window;
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
162 GntToast *toast;
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
163 char *str;
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
164 int h, w, i;
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
165 va_list args;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
166
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
167 if (purple_prefs_get_bool(PREFS_BEEP))
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
168 beep();
17188
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
169
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
170 if (conv != NULL) {
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
171 FinchConv *fc = conv->ui_data;
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
172 if (gnt_widget_has_focus(fc->window))
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
173 return;
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
174 }
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
175
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
176 #ifdef HAVE_X11
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
177 if (purple_prefs_get_bool(PREFS_URGENT))
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
178 urgent();
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
179 #endif
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
180
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
181 window = gnt_vbox_new(FALSE);
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
182 GNT_WIDGET_SET_FLAGS(window, GNT_WIDGET_TRANSIENT);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
183 GNT_WIDGET_UNSET_FLAGS(window, GNT_WIDGET_NO_BORDER);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
184
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
185 va_start(args, fmt);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
186 str = g_strdup_vprintf(fmt, args);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
187 va_end(args);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
188
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
189 gnt_box_add_widget(GNT_BOX(window),
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
190 gnt_label_new_with_format(str, GNT_TEXT_FLAG_HIGHLIGHT));
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
191
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
192 g_free(str);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
193 gnt_widget_size_request(window);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
194 gnt_widget_get_size(window, &w, &h);
14367
375eeac825fd [gaim-migrate @ 16995]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14365
diff changeset
195 for (i = 0; i < MAX_COLS && gpsy[i] + h >= getmaxy(stdscr) ; ++i)
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
196 ;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
197 if (i >= MAX_COLS) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
198 purple_debug_warning("GntGf", "Dude, that's way too many popups\n");
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
199 gnt_widget_destroy(window);
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
200 return;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
201 }
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
202
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
203 toast = g_new0(GntToast, 1);
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
204 toast->window = window;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
205 toast->column = i;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
206 gpsy[i] += h;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
207 if (w > gpsw[i]) {
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
208 if (i == 0)
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
209 gpsw[i] = w;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
210 else
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
211 gpsw[i] = gpsw[i - 1] + w + 1;
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
212 }
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
213
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
214 if (i == 0 || (w + gpsw[i - 1] >= getmaxx(stdscr))) {
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
215 /* if it's going to be too far left, overlap. */
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
216 gnt_widget_set_position(window, getmaxx(stdscr) - w - 1,
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
217 getmaxy(stdscr) - gpsy[i] - 1);
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
218 } else {
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
219 gnt_widget_set_position(window, getmaxx(stdscr) - gpsw[i - 1] - w - 1,
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
220 getmaxy(stdscr) - gpsy[i] - 1);
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
221 }
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
222 gnt_widget_draw(window);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
223
26651
d9f1eeefb89c Save the world.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
224 toast->timer = purple_timeout_add_seconds(4, (GSourceFunc)remove_toaster, toast);
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
225 toasters = g_list_prepend(toasters, toast);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
226 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
227
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
228 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
229 buddy_signed_on(PurpleBuddy *buddy, gpointer null)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
230 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
231 if (purple_prefs_get_bool(PREFS_EVENT_SIGNONF))
17188
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
232 notify(NULL, _("%s just signed on"), purple_buddy_get_alias(buddy));
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
233 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
234
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
235 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
236 buddy_signed_off(PurpleBuddy *buddy, gpointer null)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
237 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
238 if (purple_prefs_get_bool(PREFS_EVENT_SIGNONF))
17188
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
239 notify(NULL, _("%s just signed off"), purple_buddy_get_alias(buddy));
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
240 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
241
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
242 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
243 received_im_msg(PurpleAccount *account, const char *sender, const char *msg,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
244 PurpleConversation *conv, PurpleMessageFlags flags, gpointer null)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
245 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
246 if (purple_prefs_get_bool(PREFS_EVENT_IM_MSG))
17188
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
247 notify(conv, _("%s sent you a message"), sender);
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
248 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
249
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
250 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
251 received_chat_msg(PurpleAccount *account, const char *sender, const char *msg,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
252 PurpleConversation *conv, PurpleMessageFlags flags, gpointer null)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
253 {
14208
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
254 const char *nick;
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
255
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
256 if (flags & PURPLE_MESSAGE_WHISPER)
14208
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
257 return;
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
258
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
259 nick = PURPLE_CONV_CHAT(conv)->nick;
14208
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
260
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
261 if (g_utf8_collate(sender, nick) == 0)
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
262 return;
688c4907d9c4 [gaim-migrate @ 16789]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14201
diff changeset
263
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
264 if (purple_prefs_get_bool(PREFS_EVENT_CHAT_NICK) &&
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
265 (purple_utf8_has_word(msg, nick)))
17188
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
266 notify(conv, _("%s said your nick in %s"), sender, purple_conversation_get_name(conv));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
267 else if (purple_prefs_get_bool(PREFS_EVENT_CHAT_MSG))
17188
0847e97c0c45 Do not show the popup for focused conversations.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16748
diff changeset
268 notify(conv, _("%s sent a message in %s"), sender, purple_conversation_get_name(conv));
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
269 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
270
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
271 static gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
272 plugin_load(PurplePlugin *plugin)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
273 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
274 purple_signal_connect(purple_blist_get_handle(), "buddy-signed-on", plugin,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
275 PURPLE_CALLBACK(buddy_signed_on), NULL);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
276 purple_signal_connect(purple_blist_get_handle(), "buddy-signed-off", plugin,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
277 PURPLE_CALLBACK(buddy_signed_off), NULL);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
278 purple_signal_connect(purple_conversations_get_handle(), "received-im-msg", plugin,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
279 PURPLE_CALLBACK(received_im_msg), NULL);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
280 purple_signal_connect(purple_conversations_get_handle(), "received-chat-msg", plugin,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
281 PURPLE_CALLBACK(received_chat_msg), NULL);
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
282
14365
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
283 memset(&gpsy, 0, sizeof(gpsy));
37f0db4923c7 [gaim-migrate @ 16993]
Richard Nelson <wabz@pidgin.im>
parents: 14285
diff changeset
284 memset(&gpsw, 0, sizeof(gpsw));
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
285
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
286 return TRUE;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
287 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
288
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
289 static gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
290 plugin_unload(PurplePlugin *plugin)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
291 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
292 while (toasters)
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
293 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
294 GntToast *toast = toasters->data;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
295 destroy_toaster(toast);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
296 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
297 return TRUE;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
298 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
299
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
300 static struct
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
301 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
302 char *pref;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
303 char *display;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
304 } prefs[] =
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
305 {
14285
f8331daf743d [gaim-migrate @ 16904]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14219
diff changeset
306 {PREFS_EVENT_SIGNONF, N_("Buddy signs on/off")},
f8331daf743d [gaim-migrate @ 16904]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14219
diff changeset
307 {PREFS_EVENT_IM_MSG, N_("You receive an IM")},
f8331daf743d [gaim-migrate @ 16904]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14219
diff changeset
308 {PREFS_EVENT_CHAT_MSG, N_("Someone speaks in a chat")},
f8331daf743d [gaim-migrate @ 16904]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14219
diff changeset
309 {PREFS_EVENT_CHAT_NICK, N_("Someone says your name in a chat")},
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
310 {NULL, NULL}
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
311 };
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
312
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
313 static void
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
314 pref_toggled(GntTree *tree, char *key, gpointer null)
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
315 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
316 purple_prefs_set_bool(key, gnt_tree_get_choice(tree, key));
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
317 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
318
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
319 static void
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
320 toggle_option(GntCheckBox *check, gpointer str)
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
321 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
322 purple_prefs_set_bool(str, gnt_check_box_get_checked(check));
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
323 }
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
324
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
325 static GntWidget *
22104
56970903b8e9 Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@pidgin.im>
parents: 20288
diff changeset
326 config_frame(void)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
327 {
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
328 GntWidget *window, *tree, *check;
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
329 int i;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
330
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
331 window = gnt_vbox_new(FALSE);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
332 gnt_box_set_pad(GNT_BOX(window), 0);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
333 gnt_box_set_alignment(GNT_BOX(window), GNT_ALIGN_MID);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
334 gnt_box_set_fill(GNT_BOX(window), TRUE);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
335
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
336 gnt_box_add_widget(GNT_BOX(window),
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
337 gnt_label_new(_("Notify with a toaster when")));
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
338
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
339 tree = gnt_tree_new();
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
340 gnt_box_add_widget(GNT_BOX(window), tree);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
341
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
342 for (i = 0; prefs[i].pref; i++)
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
343 {
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
344 gnt_tree_add_choice(GNT_TREE(tree), prefs[i].pref,
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
345 gnt_tree_create_row(GNT_TREE(tree), prefs[i].display), NULL, NULL);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
346 gnt_tree_set_choice(GNT_TREE(tree), prefs[i].pref,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
347 purple_prefs_get_bool(prefs[i].pref));
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
348 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
349 gnt_tree_set_col_width(GNT_TREE(tree), 0, 40);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
350 g_signal_connect(G_OBJECT(tree), "toggled", G_CALLBACK(pref_toggled), NULL);
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
351
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
352 check = gnt_check_box_new(_("Beep too!"));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
353 gnt_check_box_set_checked(GNT_CHECK_BOX(check), purple_prefs_get_bool(PREFS_BEEP));
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
354 g_signal_connect(G_OBJECT(check), "toggled", G_CALLBACK(toggle_option), PREFS_BEEP);
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
355 gnt_box_add_widget(GNT_BOX(window), check);
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
356
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
357 #ifdef HAVE_X11
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
358 check = gnt_check_box_new(_("Set URGENT for the terminal window."));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
359 gnt_check_box_set_checked(GNT_CHECK_BOX(check), purple_prefs_get_bool(PREFS_URGENT));
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
360 g_signal_connect(G_OBJECT(check), "toggled", G_CALLBACK(toggle_option), PREFS_URGENT);
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
361 gnt_box_add_widget(GNT_BOX(window), check);
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
362 #endif
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
363
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
364 return window;
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
365 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
366
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
367 static PurplePluginInfo info =
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
368 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
369 PURPLE_PLUGIN_MAGIC,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
370 PURPLE_MAJOR_VERSION,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
371 PURPLE_MINOR_VERSION,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
372 PURPLE_PLUGIN_STANDARD,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
373 FINCH_PLUGIN_TYPE,
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
374 0,
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
375 NULL,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
376 PURPLE_PRIORITY_DEFAULT,
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
377 "gntgf",
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
378 N_("GntGf"),
20288
5ca925a094e2 applied changes from 03b709ec2a153e7e82719df0ba4635108bb1d3c6
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19859
diff changeset
379 DISPLAY_VERSION,
15498
2ee3112b6f24 This should be the last of the string changes
Sean Egan <seanegan@pidgin.im>
parents: 14905
diff changeset
380 N_("Toaster plugin"),
2ee3112b6f24 This should be the last of the string changes
Sean Egan <seanegan@pidgin.im>
parents: 14905
diff changeset
381 N_("Toaster plugin"),
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
382 "Sadrul H Chowdhury <sadrul@users.sourceforge.net>",
15924
1e6022a75ba9 Use PURPLE_WEBSITE instead of listing the website directly (which was wrong because of the sed).
Richard Laager <rlaager@pidgin.im>
parents: 15906
diff changeset
383 PURPLE_WEBSITE,
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
384 plugin_load,
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
385 plugin_unload,
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
386 NULL,
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
387 config_frame,
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
388 NULL,
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
389 NULL,
16748
f8e1573bfde0 And finch is up to date
Gary Kramlich <grim@reaperworld.com>
parents: 16399
diff changeset
390 NULL,
f8e1573bfde0 And finch is up to date
Gary Kramlich <grim@reaperworld.com>
parents: 16399
diff changeset
391
f8e1573bfde0 And finch is up to date
Gary Kramlich <grim@reaperworld.com>
parents: 16399
diff changeset
392 /* padding */
f8e1573bfde0 And finch is up to date
Gary Kramlich <grim@reaperworld.com>
parents: 16399
diff changeset
393 NULL,
f8e1573bfde0 And finch is up to date
Gary Kramlich <grim@reaperworld.com>
parents: 16399
diff changeset
394 NULL,
f8e1573bfde0 And finch is up to date
Gary Kramlich <grim@reaperworld.com>
parents: 16399
diff changeset
395 NULL,
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
396 NULL
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
397 };
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
398
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
399 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
400 init_plugin(PurplePlugin *plugin)
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
401 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
402 purple_prefs_add_none("/plugins");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
403 purple_prefs_add_none("/plugins/gnt");
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
404
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
405 purple_prefs_add_none("/plugins/gnt/gntgf");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
406 purple_prefs_add_none(PREFS_EVENT);
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
407
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
408 purple_prefs_add_bool(PREFS_EVENT_SIGNONF, TRUE);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
409 purple_prefs_add_bool(PREFS_EVENT_IM_MSG, TRUE);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
410 purple_prefs_add_bool(PREFS_EVENT_CHAT_MSG, TRUE);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
411 purple_prefs_add_bool(PREFS_EVENT_CHAT_NICK, TRUE);
14219
65c85a438721 [gaim-migrate @ 16802]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14208
diff changeset
412
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
413 purple_prefs_add_bool(PREFS_BEEP, TRUE);
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
414 #ifdef HAVE_X11
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
415 purple_prefs_add_bool(PREFS_URGENT, FALSE);
14458
b49cf8395bfa [gaim-migrate @ 17104]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14367
diff changeset
416 #endif
14201
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
417 }
d54dc208efe2 [gaim-migrate @ 16781]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff changeset
418
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15878
diff changeset
419 PURPLE_INIT_PLUGIN(PLUGIN_STATIC_NAME, init_plugin, info)

mercurial