pidgin/pidgin

Overhaul the status box

2022-04-04, Gary Kramlich
1695e758b590
Overhaul the status box

* Subclass GtkBox instead of GtkContainer
* Remove message editing
* Use a GtkComboBox instead of our fake GtkComboBox
* Move to item id's rather than indexes
* Moved new status, and saved status to GActions
* Removed the account and token_account properties. we now show primitives and
saved status
* Removed the ability to delete saved status from the widget
* Use a widget template to construct the ui elements
* Removed the connection detection stuff

Testing Done:
Verified status were updated when used in the saved status manager.
Verified that the new status and saved status actions work.
Verified that the primitive status work.
Verified that the saved statuses work.

Bugs closed: PIDGIN-17591

Reviewed at https://reviews.imfreedom.org/r/1312/
##############################################################################
# General Options
option('devenv-config-dir', type : 'string',
description : 'config directory for running a devenv (defaults to a subdirectory of buildroot)')
option('doc', type : 'boolean', value : false,
description : 'build documentation with gtk-doc')
option('extraversion', type : 'string',
description : 'extra version number to be displayed in Help->About and --help (for packagers)')
option('introspection', type : 'boolean', value : true,
description : 'build introspection data')
option('nettle', type : 'feature',
description : 'enable Nettle support')
option('nls', type : 'boolean', value : true,
description : 'enable installation of translation files')
option('pixmaps-install', type : 'boolean', value : true,
description : 'enable installation of pixmap files - Pidgin still needs them!')
##############################################################################
# Libpurple Options
option('gstreamer-video', type : 'feature',
description : 'compile with GStreamer 1.0 Video Overlay support')
option('kwallet', type : 'feature',
description : 'enable KWallet support')
option('libsecret', type : 'feature',
description : 'enable libsecret support')
option('vv', type : 'feature',
description : 'compile with voice and video support')
option('soup3', type : 'boolean', value : false,
description : 'compile against libsoup3')
##############################################################################
# Protocol Plugins
option('avahi', type : 'feature',
description : 'compile with avahi (required for Bonjour support)')
option('cyrus-sasl', type : 'feature',
description : 'enable Cyrus SASL support for XMPP/IRC')
option('dynamic-prpls', type : 'string', value: 'all',
description : 'specify which protocols to build dynamically')
option('krb4', type : 'boolean', value : false,
description : 'compile Zephyr plugin with Kerberos 4 support')
option('libgadu', type : 'feature',
description : 'compile with libgadu (required for GaduGadu support)')
option('meanwhile', type : 'feature',
description : 'compile with meanwhile')
option('silc', type : 'feature',
description : 'compile with SILC plugin')
option('zephyr', type : 'feature',
description : 'compile Zephyr plugin against external libzephyr')
##############################################################################
# Pidgin Options
option('console-logging', type : 'boolean', value : false,
description : 'compile with console logging support')
option('gtkui', type : 'boolean', value : true,
description : 'compile with GTK+ user interface')
option('unity-integration', type : 'feature',
description : 'compile with support for unity integration plugin')
##############################################################################
# Finch Options
option('consoleui', type : 'boolean', value : true,
description : 'compile with console user interface')
option('x', type : 'boolean', value : true)