Sun, 10 Aug 2025 23:44:08 +0800
Add Purple.Conversation.find_message_by_id
The method was added so that a protocol or plugin could easily lookup
for the reference for a message. This will be especially useful when a
protocol received a quoted message but only with an id.
<?xml version="1.0" encoding="UTF-8"?> <!-- Pidgin - Internet Messenger Copyright (C) Pidgin Developers <devel@pidgin.im> This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this library; if not, see <https://www.gnu.org/licenses/>. --> <interface> <requires lib="gtk" version="4.0"/> <template class="PidginConversationMember"> <property name="orientation">horizontal</property> <property name="spacing">6</property> <child> <object class="GtkImage" id="avatar"> <property name="icon-name">image-missing</property> <property name="icon-size">normal</property> <property name="visible">0</property> </object> </child> <child> <object class="PidginPresenceIcon"> <property name="icon-size">normal</property> <binding name="presence"> <lookup name="presence" type="PurpleContactInfo"> <lookup name="contact-info" type="PurpleConversationMember"> <lookup name="conversation-member">PidginConversationMember</lookup> </lookup> </lookup> </binding> </object> </child> <child> <object class="PidginBadges"> <binding name="badges"> <lookup name="badges" type="PurpleConversationMember"> <lookup name="conversation-member">PidginConversationMember</lookup> </lookup> </binding> </object> </child> <child> <object class="GtkLabel"> <binding name="label"> <closure type="gchararray" function="pidgin_conversation_member_get_name_for_display"> <!-- If we don't do this look up the struct member isn't set for some reason. This seems to only happen with closures. --> <lookup name="conversation-member">PidginConversationMember</lookup> </closure> </binding> <binding name="attributes"> <closure type="PangoAttrList" function="pidgin_conversation_member_attributes"> <!-- If we don't do this look up the struct member isn't set for some reason. This seems to only happen with closures. --> <lookup name="conversation-member">PidginConversationMember</lookup> </closure> </binding> </object> </child> </template> </interface>