Mercurial > pidgin
annotate plugins/mono/BooPlugin.boo @ 12288:3897229ccb33
[gaim-migrate @ 14592]
" This patch fixes two serious bugs in the hidden
conversation/queuing code.
First, it removes the need to explicitly present
conversations created under queuing conditions.
Instead, when an incoming message is received and a
conversation does not exist, a hidden conversation is
created in a received-im-msg signal handler by swapping
out the create_conversation function in the gtkconv
ui_ops. This fixes a bug which could allow
conversations to be created in a hidden state when they
should be visible (i.e. buddy pounce open an im window
action). This required a second search for a
conversation in server.c after the signal is emitted.
Second, it fixes a bug which would cause gaim to crash
when quitting with a queued message. Fixing this
simplified the code a bit by removing the
private_remove_gtkconv function and instead adding a
check in gaim_gtk_conv_window_remove_gtkconv to prevent
the hidden_convwin from being destroyed when the last
conversation is removed." --charkins
committer: Tailor Script <tailor@pidgin.im>
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Fri, 02 Dec 2005 00:40:32 +0000 |
parents | a3302d271199 |
children |
rev | line source |
---|---|
11660 | 1 import Gaim |
2 | |
3 class BooPlugin(GaimPlugin): | |
4 | |
5 def handle(*args as (object)): | |
6 b as Buddy | |
7 b = args[0] | |
8 Debug.debug(Debug.INFO, "booplugin", "Boo Plugin knows that " + b.Alias + " is away\n") | |
9 | |
10 override def Load(): | |
11 Debug.debug(Debug.INFO, "booplugin", "loading...\n") | |
12 BuddyList.OnBuddyAway.connect(self, handle) | |
13 | |
14 override def Unload(): | |
15 Debug.debug(Debug.INFO, "booplugin", "unloading...\n") | |
16 | |
17 override def Destroy(): | |
18 Debug.debug(Debug.INFO, "booplugin", "destroying...\n") | |
19 | |
20 override def Info(): | |
21 return GaimPluginInfo("Boo Plugin", "0.1", "Test Boo Plugin", "Longer Description", "Eoin Coffey", "urled") | |
22 |