Tue, 07 May 2013 05:04:46 -0400
Rewrite debug window filter in JS.
Note, this does cause a couple regressions, but they are probably not
that big a deal. First, the JS regular expression syntax is slightly
different. Second, the JS regex API lacks a way to reliably determine
the location of matched groups, so we can't highlight just the groups
and must highlight the entire expression.
I suspect that none of our users ever had to use any fancy regex in the
debug window, and that most of our developers didn't even know it could
be done. So I doubt these regressions will cause much pain.
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
1 | /* |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
2 | * SendButton - Add a Send button to the conversation window entry area. |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
3 | * Copyright (C) 2008 Etan Reisner <deryni@pidgin.im> |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
4 | * |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
5 | * This program is free software; you can redistribute it and/or |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
6 | * modify it under the terms of the GNU General Public License |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
7 | * as published by the Free Software Foundation; either version 2 |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
8 | * of the License, or (at your option) any later version. |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
9 | * |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
10 | * This program is distributed in the hope that it will be useful, |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
13 | * GNU General Public License for more details. |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
14 | * |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
15 | * You should have received a copy of the GNU General Public License |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
16 | * along with this program; if not, write to the Free Software |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301, USA. |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
18 | */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
19 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
20 | #ifdef HAVE_CONFIG_H |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
21 | #include <config.h> |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
22 | #endif |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
23 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
24 | #include "internal.h" |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
25 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
26 | #include "version.h" |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
27 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
28 | #include "pidgin.h" |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
29 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
30 | #include "gtkconv.h" |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
31 | #include "gtkplugin.h" |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
32 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
33 | static void |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
34 | send_button_cb(GtkButton *button, PidginConversation *gtkconv) |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
35 | { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
36 | g_signal_emit_by_name(gtkconv->entry, "message_send"); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
37 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
38 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
39 | static void |
|
24599
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
40 | input_buffer_changed(GtkTextBuffer *text_buffer, GtkWidget *send_button) |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
41 | { |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
42 | if (gtk_text_buffer_get_char_count(text_buffer) != 0) |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
43 | gtk_widget_set_sensitive(send_button, TRUE); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
44 | else |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
45 | gtk_widget_set_sensitive(send_button, FALSE); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
46 | } |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
47 | |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
48 | static void |
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
49 | create_send_button_pidgin(PidginConversation *gtkconv) |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
50 | { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
51 | GtkWidget *send_button; |
|
24599
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
52 | GtkTextBuffer *buf; |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
53 | guint signal_id; |
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
54 | |
|
24598
dcaf0be8d4e6
Don't add the Send button to a gtkconv->lower_hbox when the data specifying it
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
22828
diff
changeset
|
55 | send_button = g_object_get_data(G_OBJECT(gtkconv->lower_hbox), |
|
dcaf0be8d4e6
Don't add the Send button to a gtkconv->lower_hbox when the data specifying it
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
22828
diff
changeset
|
56 | "send_button"); |
|
dcaf0be8d4e6
Don't add the Send button to a gtkconv->lower_hbox when the data specifying it
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
22828
diff
changeset
|
57 | |
|
dcaf0be8d4e6
Don't add the Send button to a gtkconv->lower_hbox when the data specifying it
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
22828
diff
changeset
|
58 | if (send_button != NULL) |
|
dcaf0be8d4e6
Don't add the Send button to a gtkconv->lower_hbox when the data specifying it
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
22828
diff
changeset
|
59 | return; |
|
dcaf0be8d4e6
Don't add the Send button to a gtkconv->lower_hbox when the data specifying it
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
22828
diff
changeset
|
60 | |
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
61 | send_button = gtk_button_new_with_mnemonic(_("_Send")); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
62 | g_signal_connect(G_OBJECT(send_button), "clicked", |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
63 | G_CALLBACK(send_button_cb), gtkconv); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
64 | gtk_box_pack_end(GTK_BOX(gtkconv->lower_hbox), send_button, FALSE, |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
65 | FALSE, 0); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
66 | gtk_widget_show(send_button); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
67 | |
|
24599
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
68 | buf = gtk_text_view_get_buffer(GTK_TEXT_VIEW(gtkconv->entry)); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
69 | if (buf) { |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
70 | signal_id = g_signal_connect(G_OBJECT(buf), "changed", |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
71 | G_CALLBACK(input_buffer_changed), |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
72 | send_button); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
73 | g_object_set_data(G_OBJECT(send_button), "buffer-signal", |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
74 | GINT_TO_POINTER(signal_id)); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
75 | input_buffer_changed(buf, send_button); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
76 | } |
|
31294
73607ab89c6f
Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents:
27525
diff
changeset
|
77 | |
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
78 | g_object_set_data(G_OBJECT(gtkconv->lower_hbox), "send_button", |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
79 | send_button); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
80 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
81 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
82 | static void |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
83 | remove_send_button_pidgin(PidginConversation *gtkconv) |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
84 | { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
85 | GtkWidget *send_button = NULL; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
86 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
87 | send_button = g_object_get_data(G_OBJECT(gtkconv->lower_hbox), |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
88 | "send_button"); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
89 | if (send_button != NULL) { |
|
24599
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
90 | GtkTextBuffer *buf; |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
91 | guint signal_id; |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
92 | |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
93 | buf = gtk_text_view_get_buffer(GTK_TEXT_VIEW(gtkconv->entry)); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
94 | signal_id = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(send_button), |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
95 | "buffer-signal")); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
96 | if (buf && signal_id) |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
97 | g_signal_handler_disconnect(G_OBJECT(buf), signal_id); |
|
6751ffb09daa
Make the Send button insensitive when there is no text in the input buffer.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24598
diff
changeset
|
98 | |
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
99 | gtk_widget_destroy(send_button); |
|
24598
dcaf0be8d4e6
Don't add the Send button to a gtkconv->lower_hbox when the data specifying it
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
22828
diff
changeset
|
100 | g_object_set_data(G_OBJECT(gtkconv->lower_hbox), |
|
dcaf0be8d4e6
Don't add the Send button to a gtkconv->lower_hbox when the data specifying it
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
22828
diff
changeset
|
101 | "send_button", NULL); |
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
102 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
103 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
104 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
105 | static void |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
106 | conversation_displayed_cb(PidginConversation *gtkconv) |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
107 | { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
108 | GtkWidget *send_button = NULL; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
109 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
110 | send_button = g_object_get_data(G_OBJECT(gtkconv->lower_hbox), |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
111 | "send_button"); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
112 | if (send_button == NULL) { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
113 | create_send_button_pidgin(gtkconv); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
114 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
115 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
116 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
117 | static gboolean |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
118 | plugin_load(PurplePlugin *plugin) |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
119 | { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
120 | GList *convs = purple_get_conversations(); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
121 | void *gtk_conv_handle = pidgin_conversations_get_handle(); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
122 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
123 | purple_signal_connect(gtk_conv_handle, "conversation-displayed", plugin, |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
124 | PURPLE_CALLBACK(conversation_displayed_cb), NULL); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
125 | /* |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
126 | purple_signal_connect(gtk_conv_handle, "conversation-hiding", plugin, |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
127 | PURPLE_CALLBACK(conversation_hiding_cb), NULL); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
128 | */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
129 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
130 | while (convs) { |
|
31294
73607ab89c6f
Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents:
27525
diff
changeset
|
131 | |
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
132 | PurpleConversation *conv = (PurpleConversation *)convs->data; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
133 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
134 | /* Setup Send button */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
135 | if (PIDGIN_IS_PIDGIN_CONVERSATION(conv)) { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
136 | create_send_button_pidgin(PIDGIN_CONVERSATION(conv)); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
137 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
138 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
139 | convs = convs->next; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
140 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
141 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
142 | return TRUE; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
143 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
144 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
145 | static gboolean |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
146 | plugin_unload(PurplePlugin *plugin) |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
147 | { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
148 | GList *convs = purple_get_conversations(); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
149 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
150 | while (convs) { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
151 | PurpleConversation *conv = (PurpleConversation *)convs->data; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
152 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
153 | /* Remove Send button */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
154 | if (PIDGIN_IS_PIDGIN_CONVERSATION(conv)) { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
155 | remove_send_button_pidgin(PIDGIN_CONVERSATION(conv)); |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
156 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
157 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
158 | convs = convs->next; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
159 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
160 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
161 | return TRUE; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
162 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
163 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
164 | static PurplePluginInfo info = |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
165 | { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
166 | PURPLE_PLUGIN_MAGIC, |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
167 | PURPLE_MAJOR_VERSION, /**< major version */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
168 | PURPLE_MINOR_VERSION, /**< minor version */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
169 | PURPLE_PLUGIN_STANDARD, /**< type */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
170 | PIDGIN_PLUGIN_TYPE, /**< ui_requirement */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
171 | 0, /**< flags */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
172 | NULL, /**< dependencies */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
173 | PURPLE_PRIORITY_DEFAULT, /**< priority */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
174 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
175 | "gtksendbutton", /**< id */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
176 | N_("Send Button"), /**< name */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
177 | DISPLAY_VERSION, /**< version */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
178 | N_("Conversation Window Send Button."), /**< summary */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
179 | N_("Adds a Send button to the entry area of " |
|
27525
579b9d64b364
A semi-random collection of English spelling and grammatical changes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24599
diff
changeset
|
180 | "the conversation window. Intended for use " |
|
579b9d64b364
A semi-random collection of English spelling and grammatical changes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24599
diff
changeset
|
181 | "when no physical keyboard is present."), /**< description */ |
|
22828
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
182 | "Etan Reisner <deryni@pidgin.im>", /**< author */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
183 | PURPLE_WEBSITE, /**< homepage */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
184 | plugin_load, /**< load */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
185 | plugin_unload, /**< unload */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
186 | NULL, /**< destroy */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
187 | NULL, /**< ui_info */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
188 | NULL, /**< extra_info */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
189 | NULL, /**< prefs_info */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
190 | NULL, /**< actions */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
191 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
192 | /* padding */ |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
193 | NULL, |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
194 | NULL, |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
195 | NULL, |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
196 | NULL |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
197 | }; |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
198 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
199 | static void |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
200 | init_plugin(PurplePlugin *plugin) |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
201 | { |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
202 | } |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
203 | |
|
6a1885524a97
Add a plugin to add a Send button to the conversation windows, users of tablet
Etan Reisner <deryni@pidgin.im>
parents:
diff
changeset
|
204 | PURPLE_INIT_PLUGIN(sendbutton, init_plugin, info) |