Tue, 14 Feb 2006 05:43:43 +0000
[gaim-migrate @ 15646]
Always show a vertical scrollbar on conversations imhtmls. This will solve the shrinking conversation window bug. I chose this approach instead of saving the size of the window (as I had previous talked about), as this prevents the contents of the scrollback from rewrapping when the scrollbars appear or disappear. It also just seems to feel like the right thing to do, but maybe that's me being lazy.
| 6520 | 1 | #ifndef _GAIM_PERL_HANDLERS_H_ |
| 2 | #define _GAIM_PERL_HANDLERS_H_ | |
| 3 | ||
| 12882 | 4 | #include "cmds.h" |
| 6520 | 5 | #include "plugin.h" |
| 11123 | 6 | #include "prefs.h" |
| 7 | #include "pluginpref.h" | |
| 11170 | 8 | #include "gtkplugin.h" |
| 9 | #include "gtkutils.h" | |
| 10 | ||
| 6520 | 11 | typedef struct |
| 12 | { | |
| 12882 | 13 | GaimCmdId id; |
| 14 | SV *callback; | |
| 15 | SV *data; | |
| 16 | char *prpl_id; | |
| 17 | char *cmd; | |
| 18 | GaimPlugin *plugin; | |
| 19 | } GaimPerlCmdHandler; | |
| 20 | ||
| 21 | typedef struct | |
| 22 | { | |
|
6568
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
23 | SV *callback; |
|
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
24 | SV *data; |
| 6520 | 25 | GaimPlugin *plugin; |
| 26 | int iotag; | |
| 27 | ||
| 28 | } GaimPerlTimeoutHandler; | |
| 29 | ||
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
30 | typedef struct |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
31 | { |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
32 | char *signal; |
|
6567
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
33 | SV *callback; |
|
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
34 | SV *data; |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
35 | void *instance; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
36 | GaimPlugin *plugin; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
37 | |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
38 | } GaimPerlSignalHandler; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
39 | |
| 11170 | 40 | void gaim_perl_plugin_action_cb(GaimPluginAction * gpa); |
| 12988 | 41 | GList *gaim_perl_plugin_actions(GaimPlugin *plugin, gpointer context); |
| 11170 | 42 | |
| 11123 | 43 | GaimPluginPrefFrame *gaim_perl_get_plugin_frame(GaimPlugin *plugin); |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
44 | |
| 11170 | 45 | GtkWidget *gaim_perl_gtk_get_plugin_frame(GaimPlugin *plugin); |
| 46 | ||
|
6568
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
47 | void gaim_perl_timeout_add(GaimPlugin *plugin, int seconds, SV *callback, |
| 12882 | 48 | SV *data); |
| 6520 | 49 | void gaim_perl_timeout_clear_for_plugin(GaimPlugin *plugin); |
| 50 | void gaim_perl_timeout_clear(void); | |
| 51 | ||
|
6550
1f3edf39ef51
[gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents:
6549
diff
changeset
|
52 | void gaim_perl_signal_connect(GaimPlugin *plugin, void *instance, |
| 12882 | 53 | const char *signal, SV *callback, |
| 13191 | 54 | SV *data, int priority); |
|
6550
1f3edf39ef51
[gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents:
6549
diff
changeset
|
55 | void gaim_perl_signal_disconnect(GaimPlugin *plugin, void *instance, |
| 12882 | 56 | const char *signal); |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
57 | void gaim_perl_signal_clear_for_plugin(GaimPlugin *plugin); |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
58 | void gaim_perl_signal_clear(void); |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
59 | |
| 12882 | 60 | GaimCmdId gaim_perl_cmd_register(GaimPlugin *plugin, const gchar *cmd, |
| 61 | const gchar *args, GaimCmdPriority priority, | |
| 62 | GaimCmdFlag flag, const gchar *prpl_id, | |
| 63 | SV *callback, const gchar *helpstr, SV *data); | |
| 64 | void gaim_perl_cmd_unregister(GaimCmdId id); | |
| 65 | void gaim_perl_cmd_clear_for_plugin(GaimPlugin *plugin); | |
| 66 | ||
| 6520 | 67 | #endif /* _GAIM_PERL_HANDLERS_H_ */ |