Mercurial > pidgin.yaz
view doc/gtkblist-signals.dox @ 12618:204bd8fac61f
[gaim-migrate @ 14954]
SF Patch #1355796 from Sadrul
This fixes the custom smiley bug where your text gets smilies from the other party in the conversation.
This is a bit of a hack, but it fix things until such time as the smiley tree stuff can be reworked.
" From the kwiki:
If someone uses an MSN smiley, it shows up when I type
the textual representation of it. For example, someone
set a smiley (a rainbow flashy question mark) for ? and
it showed up (on my side, I have no idea about theirs)
for every ? I typed. /luke as I understand this report,
the problem is that the custom smiley should be
restricted to exactly one conversation but is in fact
spanning the account/
* (sadrul) It appears what happens is, the custom
smiley is added to the smiley-tree for that
conversation-imhtml. So whenever any new message is
going to be added to the imhtml, it looks up the
smiley-tree first, and since the "?" (or anything else)
matches the smiley, it converts it to the smiley. At
first glance, it seems the fix would be non-trivial. It
will probably be necessary to distinguish between
custom-smileys (and also messages added to the imhtml)
of the sender and the receiver.
==== end ====
What this patch does is, it temporarily replaces the
smiley-tree for the conversation-imhtml with the
smiley-tree of the conversation-entrybox. I think this
will work because the smiley-trees of both these
imhtml-s are initially the same. When a custom smiley
is received, it is added the smiley-tree of the
conversation-imhtml. So temporarily restoring the
smiley-tree with the original smiley-tree (that in
conv-entrybox) should fix the problem."
committer: Tailor Script <tailor@pidgin.im>
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Thu, 22 Dec 2005 04:07:21 +0000 |
parents | 5bc3d67ceb24 |
children | d7043c3c793d |
line wrap: on
line source
/** @page gtkblist-signals GtkBlist Signals @signals @signal gtkblist-hiding @signal gtkblist-unhiding @signal gtkblist-created @signal drawing-tooltip @endsignals <hr> @signaldef gtkblist-hiding @signalproto void (*gtkblist-hiding)(GaimBuddyList *blist); @endsignalproto @signaldesc Emitted when the buddy list is about to be hidden. @param blist The buddy list. @endsignaldef @signaldef gtkblist-unhiding @signalproto void (*gtkblist-unhiding)(GaimBuddyList *blist); @endsignalproto @signaldesc Emitted when the buddy list is about to be unhidden. @param blist The buddy list. @endsignaldef @signaldef gtkblist-created @signalproto void (*gtkblist-created)(GaimBuddyList *blist); @endsignalproto @signaldesc Emitted when the buddy list is created. @param blist The buddy list. @endsignaldef @signaldef drawing-tooltip @signalproto void (*drawing-tooltip)(GaimBlistNode *node, GString *text); @endsignalproto @signaldesc Emitted just before a tooltip is displayed. @a text is a standard GString, so the plugin can modify the text that will be displayed. @note Make sure to free @a *text before you replace it! @param node The blist node for the tooltip. @param text A pointer to the text that will be displayed. @endsignaldef */ // vim: syntax=c tw=75 et