pidgin/pidgin

Add a get_minimum_search_length to PurpleProtocolContacts
default tip
4 days ago, Gary Kramlich
5ebb4beb29b7
Add a get_minimum_search_length to PurpleProtocolContacts

This can be used by user interfaces, to not call
PurpleProtocolContacts.search_async with strings smaller than this length.

Testing Done:
Called in the turtles and ran the protocol_contacts test under valgrind.

Reviewed at https://reviews.imfreedom.org/r/3164/
<?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 program; if not, see <https://www.gnu.org/licenses/>.
-->
<interface>
<requires lib="gtk" version="4.0"/>
<!-- interface-license-type gplv2 -->
<!-- interface-name Pidgin -->
<!-- interface-description Internet Messenger -->
<!-- interface-copyright Pidgin Developers <devel@pidgin.im> -->
<menu id="menubar">
<submenu>
<attribute name="label" translatable="yes">_Pidgin</attribute>
<section>
<item>
<attribute name="label" translatable="yes">Join Channel</attribute>
<attribute name="action">app.join-channel</attribute>
</item>
</section>
<section>
<item>
<attribute name="label" translatable="yes">_Quit</attribute>
<attribute name="action">app.quit</attribute>
</item>
</section>
</submenu>
<submenu>
<attribute name="label" translatable="yes">_Accounts</attribute>
<section>
<item>
<attribute name="label" translatable="yes">Account _Manager</attribute>
<attribute name="action">app.manage-accounts</attribute>
</item>
<submenu>
<attribute name="label" translatable="yes">_Enable Account</attribute>
<section id="disabled-accounts"/>
</submenu>
</section>
<section id="enabled-accounts"/>
</submenu>
<submenu>
<attribute name="label" translatable="yes">_Tools</attribute>
<section>
<item>
<attribute name="label" translatable="yes">Pr_eferences</attribute>
<attribute name="action">app.preferences</attribute>
</item>
</section>
<section>
<item>
<attribute name="label" translatable="yes">_File Transfers</attribute>
<attribute name="action">app.file-transfers</attribute>
</item>
</section>
<section>
<item>
<attribute name="label" translatable="yes">_Debug Window</attribute>
<attribute name="action">app.debug</attribute>
</item>
</section>
</submenu>
<submenu>
<attribute name="label" translatable="yes">_Plugins</attribute>
<section id="plugins-menu"/>
</submenu>
<submenu>
<attribute name="label" translatable="yes">_Help</attribute>
<section>
<item>
<attribute name="label" translatable="yes">Online _Help</attribute>
<attribute name="action">app.online-help</attribute>
</item>
<item>
<attribute name="label" translatable="yes">Keyboard _Shortcuts</attribute>
<attribute name="action">win.show-help-overlay</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Donate</attribute>
<attribute name="action">app.donate</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_About</attribute>
<attribute name="action">app.about</attribute>
</item>
</section>
</submenu>
</menu>
<menu id="enabled-account">
<section>
<item>
<attribute name="label" translatable="yes">_Edit Account</attribute>
<attribute name="action">app.edit-account</attribute>
<attribute name="dynamic-target">account</attribute>
</item>
</section>
<section>
<item>
<attribute name="label" translatable="yes">_Disable</attribute>
<attribute name="action">app.disable-account</attribute>
<attribute name="dynamic-target">account</attribute>
</item>
</section>
</menu>
<menu id="custom-icon">
<section>
<item>
<attribute name="label" translatable="yes">Set Custom Icon</attribute>
<attribute name="action">menu.set-custom-icon</attribute>
</item>
<item>
<attribute name="label" translatable="yes">Remove Custom Icon</attribute>
<attribute name="action">menu.remove-custom-icon</attribute>
</item>
</section>
</menu>
<menu id="group">
<section>
<item>
<attribute name="label" translatable="yes">Add _Buddy...</attribute>
<attribute name="action">menu.add-buddy</attribute>
</item>
<item>
<attribute name="label" translatable="yes">Add C_hat...</attribute>
<attribute name="action">menu.add-chat</attribute>
</item>
</section>
<section>
<item>
<attribute name="label" translatable="yes">_Delete</attribute>
<attribute name="action">menu.remove</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Rename</attribute>
<attribute name="action">menu.alias</attribute>
</item>
</section>
<section id="group-custom-icon"/>
<section id="group-extended"/>
</menu>
<menu id="chat">
<section>
<item>
<attribute name="label" translatable="yes">_Join</attribute>
<attribute name="action">menu.join-chat</attribute>
</item>
<item>
<attribute name="label" translatable="yes">Auto-Join</attribute>
<attribute name="action">menu.auto-join-chat</attribute>
</item>
<item>
<attribute name="label" translatable="yes">Persistent</attribute>
<attribute name="action">menu.persistent-chat</attribute>
</item>
</section>
<section id="chat-proto"/>
<section id="chat-extended"/>
<section>
<item>
<attribute name="label" translatable="yes">_Edit Settings...</attribute>
<attribute name="action">menu.chat-settings</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Alias...</attribute>
<attribute name="action">menu.alias</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Remove</attribute>
<attribute name="action">menu.remove</attribute>
</item>
</section>
<section id="chat-custom-icon"/>
</menu>
<menu id="contact">
<section>
<item>
<attribute name="label" translatable="yes">_Alias...</attribute>
<attribute name="action">menu.alias</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Remove</attribute>
<attribute name="action">menu.remove</attribute>
</item>
</section>
<section id="contact-custom-icon"/>
<section id="contact-extended"/>
</menu>
<menu id="voice-video">
<section>
<item>
<attribute name="label" translatable="yes">_Audio Call</attribute>
<attribute name="action">menu.buddy-audio-call</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Video Call</attribute>
<attribute name="action">menu.buddy-video-call</attribute>
</item>
</section>
</menu>
<menu id="buddy">
<section>
<item>
<attribute name="label" translatable="yes">Get _Info</attribute>
<attribute name="action">menu.buddy-get-info</attribute>
</item>
<item>
<attribute name="label" translatable="yes">I_M</attribute>
<attribute name="action">menu.buddy-im</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Send File...</attribute>
<attribute name="action">menu.buddy-send-file</attribute>
</item>
</section>
<section id="buddy-voice-video"/>
<section id="buddy-proto"/>
<section id="buddy-extended"/>
<section>
<item>
<attribute name="label" translatable="yes">_Block</attribute>
<attribute name="action">menu.buddy-block</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Alias...</attribute>
<attribute name="action">menu.alias</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Remove</attribute>
<attribute name="action">menu.remove</attribute>
</item>
</section>
<section id="buddy-custom-icon"/>
</menu>
</interface>