Namespace

Pidgin – 3.0

Pidgin Universal Chat Client

Version3.0.0-devel
AuthorsPidgin Developers
LicenseGPL-2.0-or-later
Websitehttps://keep.imfreedom.org/pidgin/pidgin/
Sourcehttps://keep.imfreedom.org/pidgin/pidgin/

Build

C headerspidgin.h
pkg-config filespidgin-3

Dependencies

GLib—2.0 General-purpose, portable utility library.
Browse documentation
GObject—2.0 The base type system library
Browse documentation
Gtk—4.0 The GTK toolkit
Browse documentation
GPlugin—1.0 GPlugin Plugin Library
Browse documentation
Purple—3.0 Purple Universal Chat Library
Browse documentation
Talkatu—0.0 Talkatu Gtk Chat Widgets
Browse documentation

Classes

AboutDialog
AccountChooser
AccountEditor

PidginAccountEditor is a dialog that allows you to edit an account.

AccountFilterConnected

PidginAccountFilterConnected is a GtkFilter that will only show accounts that are connected. It’s intended to be used with PidginAccountChooser or a GListModel that contains PurpleAccount.

AccountFilterProtocol

PidginAccountFilterProtocol is a GtkFilter that will only show accounts for the given protocol. It’s intended to be used with PidginAccountChooser or a GListModel that contains PurpleAccount.

AccountManager

A singleton dialog for managing accounts.

AccountsDisabledMenu
AccountsEnabledMenu

A GMenuModel that automatically updates itself based on what accounts are enabled.

ActionGroup

A GSimpleActionGroup containing most of our actions. A lot of this will need to be added to the GtkApplication, but I didn’t want to do that part quite yet, so I created this instead.

AddBuddyDialog

A dialog for adding buddies to your contact list.

AddChatDialog

A dialog for adding chats to your contact list.

Application

PidginApplication is a subclass of GtkApplication that holds all of the application wide actions.

Attachment
Avatar

PidginAvatar is a widget that displays avatars for contacts or conversations.

AwayPrefs

PidginAwayPrefs is a widget for the preferences window to let users choose and configure their away and idle settings.

BuddyList

Like, everything you need to know about the gtk buddy list.

ContactListWindow

PidginContactListWindow is a transitional widget as we slowly migrate it into the conversation window to make a single window application.

ConversationPrefs

PidginConversationPrefs is a widget for the preferences window to let users choose and configure their conversation settings.

CredentialPrefs

PidginCredentialPrefs is a widget for the preferences window to let users choose and configure their credential provider.

CredentialProviderRow

PidginCredentialProviderRow is a widget for the preferences window to let users configure their credential provider.

DebugWindow
DisplayWindow

PidginDisplayWindow is a widget that contains PidginConversations.

Idle

An implementation of PurpleIdleUi for Pidgin.

InfoPane

PidginInfoPane is a widget that displays information above PidginConversations.

InviteDialog

PidginInviteDialog is a simple GtkDialog that presents the user with an interface to invite another user to a conversation. Name completion is automatically setup as well.

Keypad

PidginKeypad is a widget that displays a DTMF keypad, with the digits 0-9, an asterisk, and a number sign.

Message

PidginMessage maps a PurpleMessage to a TalkatuMessage.

NetworkPrefs

PidginNetworkPrefs is a widget for the preferences window to let users choose and configure their network settings.

NotificationAddContact

PidginNotificationAddContact is a widget that displays notifications from PurpleNotificationManager for PurpleAddContactRequest.

NotificationAuthorizationRequest

PidginNotificationAuthorizationRequest is a widget that displays notifications from PurpleNotificationManager for authorization requests.

NotificationConnectionError

PidginNotificationConnectionError is a widget that displays notifications from PurpleNotificationManager.

NotificationList

PidginNotificationList is a widget that displays notifications from PurpleNotificationManager.

PluginInfo

A GPluginPluginInfo subclass that adds some Pidgin specific properties.

PluginsDialog

A dialog that allows the user to configure their plugins.

PluginsMenu

PidginPluginsMenu is a GMenuModel that automatically updates itself when plugins are loaded and unloaded.

PrefsWindow
PresenceIcon

A GtkImage subclass that will automatically update when the given presence changes.

ProtocolChooser
ProxyPrefs

PidginProxyPrefs is a widget for the preferences window to let users choose and configure their proxy settings.

StatusBox
StatusEditor

A dialog for editing statuses.

StatusManager

A dialog for managing statuses.

StatusPrimitiveChooser

A GtkComboBox for presenting PurpleStatusPrimitives to a user.

Ui

Is a subclass of PurpleUi that identifies Pidgin to libpurple.

VVPrefs

PidginVVPrefs is a widget for the preferences window to let users choose and configure their voice and video settings.

XferDialog

A file transfer dialog.

Structs

Enumerations

Callbacks

Functions

accounts_get_ui_ops

Returns the GTK account UI ops.

accounts_init

Initializes the GTK account system.

accounts_uninit

Uninitializes the GTK account system.

add_widget_to_vbox

Add a labelled widget to a GtkBox.

auto_parent_window

Automatically make a window transient to a suitable parent window.

blist_get_default_gtk_blist

Returns the default gtk buddy list.

blist_get_emblem

Returns the blist emblem.

blist_get_handle

Get the handle for the GTK blist system.

blist_get_name_markup

Returns a buddy’s Pango markup appropriate for setting in a GtkCellRenderer.

blist_get_sort_methods

Gets the current list of sort methods.

blist_init

Initializes the GTK blist system.

blist_joinchat_is_showable

Determines if showing the join chat dialog is a valid action.

blist_joinchat_show

Shows the join chat dialog.

blist_node_is_contact_expanded

Returns a boolean indicating if node is part of an expanded contact.

blist_query_tooltip_for_node

Queries and creates a custom tooltip for a buddy list node.

blist_refresh

Refreshes all the nodes of the buddy list. This should only be called when something changes to affect most of the nodes (such as a ui preference changing)

blist_setup_sort_methods

Sets up the programs default sort methods.

blist_uninit

Uninitializes the GTK blist system.

blist_update_sort_methods

Updates the Sorting menu on the GTK buddy list window.

color_calculate_for_text

This function is based heavily on the implementation that gajim uses from python-nbxmpp in nbxmpp.util.text_to_color. However, we don’t have an implementation of HSL let alone HSLuv, so we’re using HSV which is why the value is 1.0 instead of a luminance of 0.5.

conv_attach_to_conversation

Reattach Pidgin UI to a conversation.

conv_switch_active_conversation

Sets the active conversation within a GTK-conversation.

conversations_get_conv_ui_ops

Returns the UI operations structure for GTK conversations.

conversations_get_handle

Returns the gtk conversations subsystem handle.

conversations_init

Initializes the GTK conversations subsystem.

conversations_uninit

Uninitialized the GTK conversation subsystem.

debug_get_handle

Get the handle for the GTK debug system.

debug_init

Perform necessary initializations.

debug_init_handler

Initialize handler for GLib logging system.

debug_set_print_enabled

Set whether the debug logging messages are sent the default GLib logging handler.

debug_uninit

Perform necessary uninitializations.

dialogs_alias_buddy
dialogs_alias_chat
dialogs_im
dialogs_im_with_user
dialogs_info
dialogs_merge_groups
dialogs_remove_buddy
dialogs_remove_chat
dialogs_remove_contact
dialogs_remove_group
get_resource
get_xfer_dialog

Returns pirgin’s main file transfer dialog.

icon_name_from_presence

Gets the icon name that should be used to represent presence falling back to fallback if presence is invalid.

icon_name_from_status

Gets the icon name to use for status if found, otherwise returns fallback.

icon_name_from_status_primitive

Gets the icon name to use for primitive if found, otherwise returns fallback.

icon_name_from_status_type

Gets the icon name to use for type if found, otherwise returns fallback.

make_frame

Creates a HIG preferences frame.

medias_init
mood_dialog_show

Presents a dialog to select the mood for account or the global mood if account is NULL.

mood_get_icon_path

Gets the path to the icon for mood.

notify_get_ui_ops

Returns the UI operations structure for GTK notification functions.

notify_init

Initializes the GTK notifications subsystem.

notify_uninit

Uninitialized the GTK notifications subsystem.

plugin_pref_create_frame

Creates a Gtk Preference frame for a PurplePluginPrefFrame.

prefs_checkbox

Add a new checkbox for a boolean preference.

prefs_dropdown

Add a new dropdown representing a preference of the specified type.

prefs_dropdown_from_list

Add a new dropdown representing a preference of the specified type.

prefs_init

Initializes all UI-specific preferences.

prefs_labeled_spin_button

Add a new spin button representing an int preference.

prefs_show

Shows the preferences dialog.

prefs_update_old

Rename legacy prefs and delete some that no longer exist.

privacy_dialog_hide

Hides the privacy dialog.

privacy_dialog_show

Shows the privacy dialog.

privacy_init

Initializes the GTK privacy subsystem.

request_add_block

Requests confirmation to add a user to the block list for an account, and then adds it.

request_add_permit

Requests confirmation to add a user to the allow list for an account, and then adds it.

request_get_dialog_window

Gets dialog window for specified libpurple request.

request_get_handle

Returns the gtk requests subsystem handle.

request_get_ui_ops

Returns the UI operations structure for GTK request functions.

request_init

Initializes the GTK requests subsystem.

request_uninit

Uninitializes the GTK requests subsystem.

retrieve_user_info

Get information about a user. Show immediate feedback.

retrieve_user_info_in_chat

Get information about a user in a chat. Show immediate feedback.

roomlist_dialog_show

Shows a new roomlist dialog.

roomlist_dialog_show_with_account

Shows a new room list dialog and fetches the list for the specified account.

roomlist_init

Initializes the room list subsystem.

roomlist_is_showable

Determines if showing the room list dialog is a valid action.

screenname_autocomplete_default_filter

The default filter function for username autocomplete.

set_accessible_label

Sets an ATK name for a given widget. Also sets the labelled-by and label-for ATK relationships.

set_xfer_dialog

Sets pidgin’s main file transfer dialog.

setup_screenname_autocomplete

Add autocompletion of screenames to an entry, supporting a filtering function.

start

Start pidgin with the given command line arguments.

status_menu

Creates a dropdown menu of saved statuses and calls a callback when one is selected.

talkatu_buffer_new_for_connection

Creates a new TalkatuBuffer. Depending on pcs PurpleConnectionFlags, it will create a plain, HTML, or markdown buffer.

talkatu_editor_new_for_connection

Creates a new TalkatuEditor appropriate for use with pc.

tree_view_search_equal_func

This is a callback function to be used for Ctrl+F searching in treeviews. Sample Use: gtk_tree_view_set_search_equal_func(treeview, pidgin_tree_view_search_equal_func, search_data, search_data_destroy_cb);

whiteboard_get_ui_ops

Gets the GtkWhiteboard UI Operations.

xfers_get_ui_ops

Returns the UI operations structure for the GTK file transfer UI.

xfers_init

Initializes the GTK file transfer system.

xfers_uninit

Uninitializes the GTK file transfer system.

Constants

ACTION_SORT_METHOD

A constant that represents the sort-method action to change the sorting method of the buddy list.

ALERT_TITLE

The title that should be used for alert dialogs.

PREFS_ROOT