pidgin/pidgin

Parents c2a9da21b8c0
Children bdfe2c1acf5d
Add icon-name, icon-search-path, and icon-resource-path to PurpleProtocol

These are now used by pidgin_create_icon_from_protocol which will attempt to
load the icon for the protocol from the default GtkIconTheme if the protocol
has a non NULL value for icon-name.

pidgin_ui_init was also updated to add icon-search-path and icon-resource-path
to the default GtkIconTheme when a protocol is registered. It also scans all of
the protocols that have been already been registered as that happens before the
ui is initialized.

Testing Done:
Removed old local icon and then ran with an inverted icon to make sure pidgin was displaying the icon from the resource.

Reviewed at https://reviews.imfreedom.org/r/790/
--- a/libpurple/protocol.c Thu Sep 02 20:18:36 2021 -0500
+++ b/libpurple/protocol.c Thu Sep 02 21:05:26 2021 -0500
@@ -29,6 +29,9 @@
PROP_ID,
PROP_NAME,
PROP_DESCRIPTION,
+ PROP_ICON_NAME,
+ PROP_ICON_SEARCH_PATH,
+ PROP_ICON_RESOURCE_PATH,
PROP_OPTIONS,
N_PROPERTIES,
};
@@ -39,6 +42,10 @@
gchar *name;
gchar *description;
+ gchar *icon_name;
+ gchar *icon_search_path;
+ gchar *icon_resource_path;
+
PurpleProtocolOptions options;
} PurpleProtocolPrivate;
@@ -82,6 +89,50 @@
}
static void
+purple_protocol_set_icon_name(PurpleProtocol *protocol,
+ const gchar *icon_name)
+{
+ PurpleProtocolPrivate *priv = NULL;
+
+ priv = purple_protocol_get_instance_private(protocol);
+
+ g_free(priv->icon_name);
+ priv->icon_name = g_strdup(icon_name);
+
+ g_object_notify_by_pspec(G_OBJECT(protocol), properties[PROP_ICON_NAME]);
+}
+
+static void
+purple_protocol_set_icon_search_path(PurpleProtocol *protocol,
+ const gchar *path)
+{
+ PurpleProtocolPrivate *priv = NULL;
+
+ priv = purple_protocol_get_instance_private(protocol);
+
+ g_free(priv->icon_search_path);
+ priv->icon_search_path = g_strdup(path);
+
+ g_object_notify_by_pspec(G_OBJECT(protocol),
+ properties[PROP_ICON_SEARCH_PATH]);
+}
+
+static void
+purple_protocol_set_icon_resource_path(PurpleProtocol *protocol,
+ const gchar *path)
+{
+ PurpleProtocolPrivate *priv = NULL;
+
+ priv = purple_protocol_get_instance_private(protocol);
+
+ g_free(priv->icon_resource_path);
+ priv->icon_resource_path = g_strdup(path);
+
+ g_object_notify_by_pspec(G_OBJECT(protocol),
+ properties[PROP_ICON_RESOURCE_PATH]);
+}
+
+static void
purple_protocol_set_options(PurpleProtocol *protocol,
PurpleProtocolOptions options)
{
@@ -110,7 +161,19 @@
g_value_set_string(value, purple_protocol_get_name(protocol));
break;
case PROP_DESCRIPTION:
- g_value_set_string(value, purple_protocol_get_description(protocol));
+ g_value_set_string(value,
+ purple_protocol_get_description(protocol));
+ break;
+ case PROP_ICON_NAME:
+ g_value_set_string(value, purple_protocol_get_icon_name(protocol));
+ break;
+ case PROP_ICON_SEARCH_PATH:
+ g_value_set_string(value,
+ purple_protocol_get_icon_search_path(protocol));
+ break;
+ case PROP_ICON_RESOURCE_PATH:
+ g_value_set_string(value,
+ purple_protocol_get_icon_resource_path(protocol));
break;
case PROP_OPTIONS:
g_value_set_flags(value, purple_protocol_get_options(protocol));
@@ -135,7 +198,19 @@
purple_protocol_set_name(protocol, g_value_get_string(value));
break;
case PROP_DESCRIPTION:
- purple_protocol_set_description(protocol, g_value_get_string(value));
+ purple_protocol_set_description(protocol,
+ g_value_get_string(value));
+ break;
+ case PROP_ICON_NAME:
+ purple_protocol_set_icon_name(protocol, g_value_get_string(value));
+ break;
+ case PROP_ICON_SEARCH_PATH:
+ purple_protocol_set_icon_search_path(protocol,
+ g_value_get_string(value));
+ break;
+ case PROP_ICON_RESOURCE_PATH:
+ purple_protocol_set_icon_resource_path(protocol,
+ g_value_get_string(value));
break;
case PROP_OPTIONS:
purple_protocol_set_options(protocol, g_value_get_flags(value));
@@ -203,6 +278,8 @@
* PurpleProtocol::id:
*
* The identifier for the protocol.
+ *
+ * Since: 3.0.0
*/
properties[PROP_ID] = g_param_spec_string(
"id", "id",
@@ -214,6 +291,8 @@
* PurpleProtocol::name:
*
* The name to show in user interface for the protocol.
+ *
+ * Since: 3.0.0
*/
properties[PROP_NAME] = g_param_spec_string(
"name", "name",
@@ -225,6 +304,8 @@
* PurpleProtocol::description:
*
* The description to show in user interface for the protocol.
+ *
+ * Since: 3.0.0
*/
properties[PROP_DESCRIPTION] = g_param_spec_string(
"description", "description",
@@ -233,9 +314,55 @@
G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS);
/**
+ * PurpleProtocol::icon-name:
+ *
+ * The name of an icon that has been installed to either the path specified
+ * via PurpleProtocol::icon-search-path or
+ * PurpleProtocol::icon-resource-path.
+ *
+ * Since: 3.0.0
+ */
+ properties[PROP_ICON_NAME] = g_param_spec_string(
+ "icon-name", "icon-name",
+ "The name of the XDG icon.",
+ NULL,
+ G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS);
+
+ /**
+ * PurpleProtocol::icon-search-path:
+ *
+ * The path to an XDG Icon Theme directory which contains the icons for the
+ * protocol. See purple_protocol_get_icon_search_path() for more
+ * information.
+ *
+ * Since: 3.0.0
+ */
+ properties[PROP_ICON_SEARCH_PATH] = g_param_spec_string(
+ "icon-search-path", "icon-search-path",
+ "The path to an XDG Icon Theme directory.",
+ NULL,
+ G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS);
+
+ /**
+ * PurpleProtocol::icon-resource-path:
+ *
+ * A #GResource path which contains the icons for the protocol. See
+ * purple_protocol_get_icon_resource_path() for more information.
+ *
+ * Since: 3.0.0
+ */
+ properties[PROP_ICON_RESOURCE_PATH] = g_param_spec_string(
+ "icon-resource-path", "icon-resource-path",
+ "The GResource path to the icons.",
+ NULL,
+ G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS);
+
+ /**
* PurpleProtocol::options:
*
* The #PurpleProtocolOptions for the protocol.
+ *
+ * Since: 3.0.0
*/
properties[PROP_OPTIONS] = g_param_spec_flags(
"options", "options",
@@ -283,6 +410,39 @@
return priv->description;
}
+const gchar *
+purple_protocol_get_icon_name(PurpleProtocol *protocol) {
+ PurpleProtocolPrivate *priv = NULL;
+
+ g_return_val_if_fail(PURPLE_IS_PROTOCOL(protocol), NULL);
+
+ priv = purple_protocol_get_instance_private(protocol);
+
+ return priv->icon_name;
+}
+
+const gchar *
+purple_protocol_get_icon_search_path(PurpleProtocol *protocol) {
+ PurpleProtocolPrivate *priv = NULL;
+
+ g_return_val_if_fail(PURPLE_IS_PROTOCOL(protocol), NULL);
+
+ priv = purple_protocol_get_instance_private(protocol);
+
+ return priv->icon_search_path;
+}
+
+const gchar *
+purple_protocol_get_icon_resource_path(PurpleProtocol *protocol) {
+ PurpleProtocolPrivate *priv = NULL;
+
+ g_return_val_if_fail(PURPLE_IS_PROTOCOL(protocol), NULL);
+
+ priv = purple_protocol_get_instance_private(protocol);
+
+ return priv->icon_resource_path;
+}
+
PurpleProtocolOptions
purple_protocol_get_options(PurpleProtocol *protocol) {
PurpleProtocolPrivate *priv = NULL;
--- a/libpurple/protocol.h Thu Sep 02 20:18:36 2021 -0500
+++ b/libpurple/protocol.h Thu Sep 02 21:05:26 2021 -0500
@@ -132,6 +132,8 @@
* PurpleProtocol:
*
* Represents an instance of a protocol registered with #PurpleProtocolManager.
+ *
+ * Since: 3.0.0
*/
/**
@@ -185,6 +187,8 @@
*
* Returns: %TRUE if a protocol implements a function in an interface,
* %FALSE otherwise.
+ *
+ * Since: 3.0.0
*/
#define PURPLE_PROTOCOL_IMPLEMENTS(protocol, IFACE, func) \
(PURPLE_IS_PROTOCOL_##IFACE(protocol) && \
@@ -343,6 +347,56 @@
*/
const gchar *purple_protocol_get_list_icon(PurpleProtocol *protocol, PurpleAccount *account, PurpleBuddy *buddy);
+/**
+ * purple_protocol_get_icon_name:
+ * @protocol: The #PurpleProtocol instance.
+ *
+ * Gets the name of the icon that the protocol made available via either
+ * purple_protocol_get_icon_search_path() or
+ * purple_protocol_get_resource_path().
+ *
+ * Returns: The name of the icon for @protocol.
+ *
+ * Since: 3.0.0
+ */
+const gchar *purple_protocol_get_icon_name(PurpleProtocol *protocol);
+
+/**
+ * purple_protocol_get_icon_search_path:
+ * @protocol: The #PurpleProtocol instance.
+ *
+ * Gets the icon search path for @protocol. This is used to allow protocol
+ * plugins to install their icons in any XDG icon theme compliant directory.
+ * The returned value should be the path of where the icons are on disk. See
+ * gtk_icon_theme_add_search_path() for additional information.
+ *
+ * User interfaces will look for icons in this path named
+ * %chat-<protocol-name> where protocol-name is the name property of @protocol.
+ *
+ * Returns: The file system path where the icons can be found.
+ *
+ * Since: 3.0.0
+ */
+const gchar *purple_protocol_get_icon_search_path(PurpleProtocol *protocol);
+
+/**
+ * purple_protocol_get_icon_resource_path:
+ * @protocol: The #PurpleProtocol instance.
+ *
+ * Gets the icon resource path for @protocol. This is used to make icons that
+ * have been embedded into a plugin available to libpurple. The returned value
+ * should be the path of where the icons are in the resource. See
+ * gtk_icon_theme_add_resource_path() for additional information.
+ *
+ * User interfaces will look for icons in this path named
+ * %chat-<protocol-name> where protocol-name is the name property of @protocol.
+ *
+ * Returns: The gresource path where the icons can be found.
+ *
+ * Since: 3.0.0
+ */
+const gchar *purple_protocol_get_icon_resource_path(PurpleProtocol *protocol);
+
G_END_DECLS
#endif /* PURPLE_PROTOCOL_H */
--- a/libpurple/protocols/irc/irc.c Thu Sep 02 20:18:36 2021 -0500
+++ b/libpurple/protocols/irc/irc.c Thu Sep 02 21:05:26 2021 -0500
@@ -1164,8 +1164,10 @@
"id", "prpl-irc",
"name", "IRC",
"description", "Internet Relay Chat (IRC) is a text-based chat system",
+ "icon-name", "im-irc",
+ "icon-resource-path", "/im/pidgin/libpurple/irc/icons",
"options", OPT_PROTO_CHAT_TOPIC | OPT_PROTO_PASSWORD_OPTIONAL |
- OPT_PROTO_SLASH_COMMANDS_NATIVE,
+ OPT_PROTO_SLASH_COMMANDS_NATIVE,
NULL));
}
--- a/libpurple/protocols/irc/meson.build Thu Sep 02 20:18:36 2021 -0500
+++ b/libpurple/protocols/irc/meson.build Thu Sep 02 21:05:26 2021 -0500
@@ -8,6 +8,12 @@
]
if DYNAMIC_IRC
+ irc_resources = gnome.compile_resources('ircresource',
+ 'resources/irc.gresource.xml',
+ source_dir : 'resources',
+ c_name : 'irc')
+ IRC_SOURCES += irc_resources
+
irc_prpl = shared_library('irc', IRC_SOURCES,
dependencies : [sasl, libpurple_dep, glib, gio, ws2_32],
install : true, install_dir : PURPLE_PLUGINDIR)
Binary file libpurple/protocols/irc/resources/icons/16x16/apps/im-irc.png has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/protocols/irc/resources/icons/16x16/apps/scalable/im-irc.svg Thu Sep 02 21:05:26 2021 -0500
@@ -0,0 +1,222 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16"
+ height="16"
+ id="svg4345"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docbase="/home/hbons/Desktop"
+ sodipodi:docname="irc.svg"
+ inkscape:export-filename="/home/hbons/Bureaublad/irc.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ version="1.0"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <defs
+ id="defs4347">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient8648">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop8650" />
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1"
+ offset="1"
+ id="stop8652" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient8632">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1"
+ offset="0"
+ id="stop8634" />
+ <stop
+ style="stop-color:#386ca5;stop-opacity:1"
+ offset="1"
+ id="stop8636" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5235">
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1;"
+ offset="0"
+ id="stop5237" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:0;"
+ offset="1"
+ id="stop5239" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3816">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3818" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3820" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3816"
+ id="radialGradient4179"
+ gradientUnits="userSpaceOnUse"
+ cx="31.112698"
+ cy="19.008621"
+ fx="31.112698"
+ fy="19.008621"
+ r="8.6620579" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5235"
+ id="radialGradient5241"
+ cx="23.234518"
+ cy="40.688972"
+ fx="23.234518"
+ fy="40.688972"
+ r="16.956987"
+ gradientTransform="matrix(1,0,0,0.133183,0,35.2699)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient8632"
+ id="linearGradient8638"
+ x1="12.031081"
+ y1="3.9636562"
+ x2="14.700418"
+ y2="10.228306"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient8648"
+ id="linearGradient8654"
+ x1="11.198016"
+ y1="1.0312058"
+ x2="11.198016"
+ y2="14.496081"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient8648"
+ id="linearGradient8660"
+ gradientUnits="userSpaceOnUse"
+ x1="11.198016"
+ y1="1.1643296"
+ x2="11.198016"
+ y2="14.496081"
+ gradientTransform="matrix(-1,0,0,1,16.00001,5)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient8632"
+ id="linearGradient8662"
+ gradientUnits="userSpaceOnUse"
+ x1="9.7651443"
+ y1="4.0303011"
+ x2="9.0022526"
+ y2="9.9950476"
+ gradientTransform="matrix(-1,0,0,1,16.00001,5)" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="15.004829"
+ inkscape:cx="21.840023"
+ inkscape:cy="16.645163"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1440"
+ inkscape:window-height="847"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ width="16px"
+ height="16px"
+ inkscape:snap-bbox="true"
+ inkscape:snap-nodes="false"
+ objecttolerance="10"
+ gridtolerance="10"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid7860"
+ visible="true"
+ enabled="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4350">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ style="opacity:0.66000000000000003;fill:url(#linearGradient8654);fill-opacity:1;stroke:url(#linearGradient8638);stroke-width:0.99999928000000005;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 14.875001,0.49999963 C 15.217688,0.49999963 15.5,0.74481173 15.5,1.049489 L 15.5,3.7114598 L 15.5,4.7860168 L 15.5,7.9687565 C 15.5,8.2734337 15.217688,8.5182463 14.875001,8.5182459 L 13.523824,8.5182459 C 13.523824,8.5182459 13.500261,10.537057 13.500261,10.537057 C 12.189929,10.537057 10.901093,8.5069021 10.901093,8.5069021 L 6.1250097,8.5182459 C 5.7823233,8.5182459 5.5000104,8.2734333 5.5000104,7.9687565 L 5.5000104,4.7860168 L 5.5000104,3.7114598 L 5.5000104,1.049489 C 5.5000104,0.74481189 5.7823228,0.49999967 6.1250097,0.49999963 L 8.8380752,0.49999963 L 12.375003,0.49999963 L 14.875001,0.49999963 z"
+ id="path5540"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999892999999995;stroke-miterlimit:4;stroke-opacity:1;opacity:0.66"
+ d="M 14.326096,1.4999995 C 14.416734,1.4999995 14.500009,1.5636953 14.500009,1.6546223 L 14.500009,3.9018072 L 14.500009,4.8089277 L 14.500009,7.35505 C 14.500009,7.4459764 14.416733,7.5096728 14.326096,7.5096728 L 12.610239,7.5206242 C 12.405479,7.52273 12.449632,8.6309999 12.449632,8.6309999 L 11.44851,7.4434005 L 6.6739127,7.5096728 C 6.5832743,7.5096728 6.4999995,7.4459761 6.4999995,7.35505 L 6.4999995,4.8089277 L 6.4999995,3.9018072 L 6.4999995,1.6546223 C 6.4999995,1.5636954 6.5832739,1.4999995 6.6739127,1.4999995 L 9.0465863,1.4999995 L 12.139758,1.4999995 L 14.326096,1.4999995 z"
+ id="path5542"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.52838428;fill:url(#radialGradient5241);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path4340"
+ sodipodi:cx="23.234518"
+ sodipodi:cy="40.688972"
+ sodipodi:rx="16.956987"
+ sodipodi:ry="2.2583797"
+ d="M 40.191505 40.688972 A 16.956987 2.2583797 0 1 1 6.2775307,40.688972 A 16.956987 2.2583797 0 1 1 40.191505 40.688972 z"
+ transform="matrix(1.208941,0,0,1.980928,-1.589159,5.924394)" />
+ <path
+ transform="matrix(2.539812,0,0,0.410815,-57.0204,65.80212)"
+ sodipodi:type="arc"
+ style="opacity:1;color:black;fill:url(#radialGradient4179);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="path4306"
+ sodipodi:cx="31.112698"
+ sodipodi:cy="19.008621"
+ sodipodi:rx="8.6620579"
+ sodipodi:ry="8.6620579"
+ d="M 39.774755 19.008621 A 8.6620579 8.6620579 0 1 1 22.45064,19.008621 A 8.6620579 8.6620579 0 1 1 39.774755 19.008621 z" />
+ <path
+ style="opacity:1;fill:url(#linearGradient8660);fill-opacity:1;stroke:url(#linearGradient8662);stroke-width:0.99999928000000005;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 1.125011,5.4999996 C 0.78232384,5.4999996 0.50001184,5.7448117 0.50001184,6.049489 L 0.50001184,8.7114598 L 0.50001184,9.7860168 L 0.50001184,12.968757 C 0.50001184,13.273434 0.78232384,13.518247 1.125011,13.518246 L 2.476188,13.518246 C 2.476188,13.518246 2.499751,15.631308 2.499751,15.631308 C 3.810083,15.631308 5.0989186,13.506902 5.0989186,13.506902 L 9.8750026,13.518246 C 10.217687,13.518246 10.5,13.273434 10.5,12.968757 L 10.5,9.7860168 L 10.5,8.7114598 L 10.5,6.049489 C 10.5,5.7448118 10.217688,5.4999996 9.8750026,5.4999996 L 7.1619366,5.4999996 L 3.625009,5.4999996 L 1.125011,5.4999996 z"
+ id="path8656"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ style="opacity:0.375;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999893;stroke-miterlimit:4;stroke-opacity:1"
+ d="M 1.673916,6.4999995 C 1.583278,6.4999995 1.500003,6.5636953 1.500003,6.6546223 L 1.500003,8.9018072 L 1.500003,9.8089277 L 1.500003,12.35505 C 1.500003,12.445977 1.583279,12.509673 1.673916,12.509673 L 3.389773,12.520625 C 3.594533,12.52273 3.5714046,13.578902 3.5032546,14.008003 L 4.551502,12.443401 L 9.3260996,12.509673 C 9.4167376,12.509673 9.5000126,12.445976 9.5000126,12.35505 L 9.5000126,9.8089277 L 9.5000126,8.9018072 L 9.5000126,6.6546223 C 9.5000126,6.5636954 9.4167376,6.4999995 9.3260996,6.4999995 L 6.9534256,6.4999995 L 3.860254,6.4999995 L 1.673916,6.4999995 z"
+ id="path8658"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ </g>
+</svg>
Binary file libpurple/protocols/irc/resources/icons/22x22/apps/im-irc.png has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/protocols/irc/resources/icons/22x22/apps/scalable/im-irc.svg Thu Sep 02 21:05:26 2021 -0500
@@ -0,0 +1,237 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg4345"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docbase="/home/hbons/Desktop"
+ sodipodi:docname="irc.svg"
+ inkscape:export-filename="/home/hbons/Desktop/pidgin.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ version="1.0"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <defs
+ id="defs4347">
+ <linearGradient
+ id="linearGradient2804">
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="0"
+ id="stop2806" />
+ <stop
+ id="stop2812"
+ offset="0.5"
+ style="stop-color:black;stop-opacity:1;" />
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="1"
+ id="stop2808" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2804"
+ id="linearGradient1516"
+ gradientUnits="userSpaceOnUse"
+ x1="21.875"
+ y1="48.000977"
+ x2="21.875"
+ y2="40" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2781"
+ id="radialGradient1514"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2,0,0,0.8,36,8.8)"
+ cx="1"
+ cy="44"
+ fx="1"
+ fy="44"
+ r="5" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient2781">
+ <stop
+ style="stop-color:black;stop-opacity:1;"
+ offset="0"
+ id="stop2783" />
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="1"
+ id="stop2785" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2781"
+ id="radialGradient1512"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2,0,0,0.8,-13,-79.2)"
+ cx="1"
+ cy="44"
+ fx="1"
+ fy="44"
+ r="5" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5235">
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1;"
+ offset="0"
+ id="stop5237" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:0;"
+ offset="1"
+ id="stop5239" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3816">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3818" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3820" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3816"
+ id="radialGradient4179"
+ gradientUnits="userSpaceOnUse"
+ cx="31.112698"
+ cy="19.008621"
+ fx="31.112698"
+ fy="19.008621"
+ r="8.6620579" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5235"
+ id="radialGradient5241"
+ cx="23.234518"
+ cy="40.688972"
+ fx="23.234518"
+ fy="40.688972"
+ r="16.956987"
+ gradientTransform="matrix(1,0,0,0.133183,0,35.2699)"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="28"
+ inkscape:cx="17.768242"
+ inkscape:cy="11.945133"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1274"
+ inkscape:window-height="966"
+ inkscape:window-x="3"
+ inkscape:window-y="25"
+ width="24px"
+ height="24px" />
+ <metadata
+ id="metadata4350">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <g
+ id="g1504"
+ style="opacity:0.12663754"
+ transform="matrix(0.496192,0,0,0.581846,-0.128303,-4.772994)">
+ <rect
+ transform="scale(-1,-1)"
+ y="-48"
+ x="-11"
+ height="8"
+ width="10"
+ id="rect1506"
+ style="opacity:1;color:black;fill:url(#radialGradient1512);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <rect
+ y="40"
+ x="38"
+ height="8"
+ width="10"
+ id="rect1508"
+ style="opacity:1;color:black;fill:url(#radialGradient1514);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <rect
+ y="40"
+ x="11"
+ height="8"
+ width="27"
+ id="rect1510"
+ style="opacity:1;color:black;fill:url(#linearGradient1516);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.52838428;fill:url(#radialGradient5241);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path4340"
+ sodipodi:cx="23.234518"
+ sodipodi:cy="40.688972"
+ sodipodi:rx="16.956987"
+ sodipodi:ry="2.2583797"
+ d="M 40.191505 40.688972 A 16.956987 2.2583797 0 1 1 6.2775307,40.688972 A 16.956987 2.2583797 0 1 1 40.191505 40.688972 z"
+ transform="matrix(1.208941,0,0,1.980928,-0.589159,7.924396)" />
+ <path
+ style="opacity:1;fill:#efefef;fill-opacity:1;stroke:#787878;stroke-width:1.69608581;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 2.875,7.5 C 2.1210885,7.5 1.5,8.1265217 1.5,8.90625 L 1.5,15.71875 L 1.5,18.46875 L 1.5,26.613999 C 1.5,27.393727 2.1210885,28.02025 2.875,28.020249 L 4.9145119,28.020249 L 4.9145119,30.532781 L 8.1141033,27.991218 L 22.125,28.020249 C 22.878911,28.020249 23.5,27.393726 23.5,26.613999 L 23.5,18.46875 L 23.5,15.71875 L 23.5,8.90625 C 23.5,8.1265221 22.878912,7.5000001 22.125,7.5 L 16.15625,7.5 L 8.375,7.5 L 2.875,7.5 z "
+ id="path4334"
+ transform="matrix(-0.590909,0,0,0.588279,23.38636,-1.912091)"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ transform="matrix(-0.546584,0,0,0.546584,22.8323,-1.111803)"
+ style="fill:none;fill-opacity:1;stroke:white;stroke-width:1.82954407;stroke-miterlimit:4;stroke-opacity:1"
+ d="M 2.875,8.4375 C 2.6469872,8.4375 2.4375,8.6305983 2.4375,8.90625 L 2.4375,15.71875 L 2.4375,18.46875 L 2.4375,26.1875 C 2.4375,26.46315 2.6469898,26.65625 2.875,26.65625 L 5.0575572,26.65625 C 5.5726565,26.662634 5.9886729,27.078651 5.9950572,27.59375 L 7.0909095,26.8125 C 7.2621189,26.685027 8.9741324,26.618972 9.1875,26.625 L 22.125,26.65625 C 22.353012,26.65625 22.5625,26.463149 22.5625,26.1875 L 22.5625,18.46875 L 22.5625,15.71875 L 22.5625,8.90625 C 22.5625,8.6305986 22.353013,8.4375 22.125,8.4375 L 16.15625,8.4375 L 8.375,8.4375 L 2.875,8.4375 z "
+ id="path4336"
+ sodipodi:nodetypes="ccccccccccccccccccc" />
+ <path
+ transform="matrix(2.539812,0,0,0.410815,-56.0204,67.80212)"
+ sodipodi:type="arc"
+ style="opacity:1;color:black;fill:url(#radialGradient4179);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="path4306"
+ sodipodi:cx="31.112698"
+ sodipodi:cy="19.008621"
+ sodipodi:rx="8.6620579"
+ sodipodi:ry="8.6620579"
+ d="M 39.774755 19.008621 A 8.6620579 8.6620579 0 1 1 22.45064,19.008621 A 8.6620579 8.6620579 0 1 1 39.774755 19.008621 z" />
+ <path
+ style="opacity:1;fill:#efefef;fill-opacity:1;stroke:#787878;stroke-width:1.69608581;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 2.875,7.5 C 2.1210885,7.5 1.5,8.1265217 1.5,8.90625 L 1.5,15.71875 L 1.5,18.46875 L 1.5,26.613999 C 1.5,27.393727 2.1210885,28.02025 2.875,28.020249 L 4.9145119,28.020249 L 4.9145119,30.532781 L 8.1141033,27.991218 L 22.125,28.020249 C 22.878911,28.020249 23.5,27.393726 23.5,26.613999 L 23.5,18.46875 L 23.5,15.71875 L 23.5,8.90625 C 23.5,8.1265221 22.878912,7.5000001 22.125,7.5 L 16.15625,7.5 L 8.375,7.5 L 2.875,7.5 z "
+ id="path5534"
+ transform="matrix(0.590909,0,0,0.588279,0.613639,3.087907)"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ transform="matrix(0.546584,0,0,0.546584,1.167699,3.888195)"
+ style="fill:none;fill-opacity:1;stroke:white;stroke-width:1.82954407;stroke-miterlimit:4;stroke-opacity:1"
+ d="M 2.875,8.4375 C 2.6469872,8.4375 2.4375,8.6305983 2.4375,8.90625 L 2.4375,15.71875 L 2.4375,18.46875 L 2.4375,26.1875 C 2.4375,26.46315 2.6469898,26.65625 2.875,26.65625 L 5.0575572,26.65625 C 5.5726565,26.662634 5.9886729,27.078651 5.9950572,27.59375 L 7.0909095,26.8125 C 7.2621189,26.685027 8.9741324,26.618972 9.1875,26.625 L 22.125,26.65625 C 22.353012,26.65625 22.5625,26.463149 22.5625,26.1875 L 22.5625,18.46875 L 22.5625,15.71875 L 22.5625,8.90625 C 22.5625,8.6305986 22.353013,8.4375 22.125,8.4375 L 16.15625,8.4375 L 8.375,8.4375 L 2.875,8.4375 z "
+ id="path5536"
+ sodipodi:nodetypes="ccccccccccccccccccc" />
+ </g>
+</svg>
Binary file libpurple/protocols/irc/resources/icons/48x48/apps/im-irc.png has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/protocols/irc/resources/icons/scalable/apps/im-irc.svg Thu Sep 02 21:05:26 2021 -0500
@@ -0,0 +1,238 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="48px"
+ height="48px"
+ id="svg4345"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ sodipodi:docbase="/home/hbons/Desktop"
+ sodipodi:docname="irc.svg"
+ inkscape:export-filename="/home/hbons/Desktop/pidgin.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
+ <defs
+ id="defs4347">
+ <linearGradient
+ id="linearGradient2804">
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="0"
+ id="stop2806" />
+ <stop
+ id="stop2812"
+ offset="0.5"
+ style="stop-color:black;stop-opacity:1;" />
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="1"
+ id="stop2808" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2804"
+ id="linearGradient1516"
+ gradientUnits="userSpaceOnUse"
+ x1="21.875"
+ y1="48.000977"
+ x2="21.875"
+ y2="40" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2781"
+ id="radialGradient1514"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2,0,0,0.8,36,8.8)"
+ cx="1"
+ cy="44"
+ fx="1"
+ fy="44"
+ r="5" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient2781">
+ <stop
+ style="stop-color:black;stop-opacity:1;"
+ offset="0"
+ id="stop2783" />
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="1"
+ id="stop2785" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2781"
+ id="radialGradient1512"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2,0,0,0.8,-13,-79.2)"
+ cx="1"
+ cy="44"
+ fx="1"
+ fy="44"
+ r="5" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5235">
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1;"
+ offset="0"
+ id="stop5237" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:0;"
+ offset="1"
+ id="stop5239" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3816">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3818" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3820" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3816"
+ id="radialGradient4179"
+ gradientUnits="userSpaceOnUse"
+ cx="31.112698"
+ cy="19.008621"
+ fx="31.112698"
+ fy="19.008621"
+ r="8.6620579" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5235"
+ id="radialGradient5241"
+ cx="23.234518"
+ cy="40.688972"
+ fx="23.234518"
+ fy="40.688972"
+ r="16.956987"
+ gradientTransform="matrix(1,0,0,0.133183,0,35.2699)"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="13.062462"
+ inkscape:cx="40.814762"
+ inkscape:cy="25.717712"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1274"
+ inkscape:window-height="966"
+ inkscape:window-x="3"
+ inkscape:window-y="25" />
+ <metadata
+ id="metadata4350">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <g
+ id="g1504"
+ style="opacity:0.12663754"
+ transform="matrix(0.851064,0,0,0.999995,3.148928,-3.9998)">
+ <rect
+ transform="scale(-1,-1)"
+ y="-48"
+ x="-11"
+ height="8"
+ width="10"
+ id="rect1506"
+ style="opacity:1;color:black;fill:url(#radialGradient1512);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <rect
+ y="40"
+ x="38"
+ height="8"
+ width="10"
+ id="rect1508"
+ style="opacity:1;color:black;fill:url(#radialGradient1514);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <rect
+ y="40"
+ x="11"
+ height="8"
+ width="27"
+ id="rect1510"
+ style="opacity:1;color:black;fill:url(#linearGradient1516);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.52838428;fill:url(#radialGradient5241);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path4340"
+ sodipodi:cx="23.234518"
+ sodipodi:cy="40.688972"
+ sodipodi:rx="16.956987"
+ sodipodi:ry="2.2583797"
+ d="M 40.191505 40.688972 A 16.956987 2.2583797 0 1 1 6.2775307,40.688972 A 16.956987 2.2583797 0 1 1 40.191505 40.688972 z"
+ transform="matrix(1.208941,0,0,1.980928,3.410841,15.87176)" />
+ <path
+ style="opacity:1;fill:#efefef;fill-opacity:1;stroke:#787878;stroke-width:0.95516169;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 2.875,7.5 C 2.1210885,7.5 1.5,8.1265217 1.5,8.90625 L 1.5,15.71875 L 1.5,18.46875 L 1.5,26.189031 C 1.5,26.968759 2.1210885,27.595282 2.875,27.595281 L 5.5,27.595281 L 5.5,30.532781 L 9.2020155,27.56625 L 22.125,27.595281 C 22.878911,27.595281 23.5,26.968758 23.5,26.189031 L 23.5,18.46875 L 23.5,15.71875 L 23.5,8.90625 C 23.5,8.1265221 22.878912,7.5000001 22.125,7.5 L 16.15625,7.5 L 8.375,7.5 L 2.875,7.5 z "
+ id="path4334"
+ transform="matrix(-1.045455,0,0,1.048433,44.0682,0.636752)"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ sodipodi:type="inkscape:offset"
+ inkscape:radius="-0.94924349"
+ inkscape:original="M 2.875 7.5 C 2.1210885 7.5 1.5 8.1265217 1.5 8.90625 L 1.5 15.71875 L 1.5 18.46875 L 1.5 26.1875 C 1.5 26.967227 2.1210885 27.593751 2.875 27.59375 L 5.5 27.59375 L 5.5 30.53125 L 9.1875 27.5625 L 22.125 27.59375 C 22.878911 27.593749 23.5 26.967227 23.5 26.1875 L 23.5 18.46875 L 23.5 15.71875 L 23.5 8.90625 C 23.5 8.1265221 22.878912 7.5000001 22.125 7.5 L 16.15625 7.5 L 8.375 7.5 L 2.875 7.5 z "
+ style="opacity:1;fill:none;fill-opacity:1;stroke:white;stroke-width:0.95516169;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path4336"
+ d="M 2.875,8.4375 C 2.6469872,8.4375 2.4375,8.6305983 2.4375,8.90625 L 2.4375,15.71875 L 2.4375,18.46875 L 2.4375,26.1875 C 2.4375,26.46315 2.6469898,26.65625 2.875,26.65625 L 5.5,26.65625 C 6.0150993,26.662634 6.4311157,27.078651 6.4375,27.59375 L 6.4375,28.5625 L 8.59375,26.8125 C 8.7649594,26.685027 8.9741324,26.618972 9.1875,26.625 L 22.125,26.65625 C 22.353012,26.65625 22.5625,26.463149 22.5625,26.1875 L 22.5625,18.46875 L 22.5625,15.71875 L 22.5625,8.90625 C 22.5625,8.6305986 22.353013,8.4375 22.125,8.4375 L 16.15625,8.4375 L 8.375,8.4375 L 2.875,8.4375 z "
+ transform="matrix(-1.045455,0,0,1.048433,44.0682,0.636752)" />
+ <path
+ transform="matrix(2.539812,0,0,0.410815,-52.0204,75.74948)"
+ sodipodi:type="arc"
+ style="opacity:1;color:black;fill:url(#radialGradient4179);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="path4306"
+ sodipodi:cx="31.112698"
+ sodipodi:cy="19.008621"
+ sodipodi:rx="8.6620579"
+ sodipodi:ry="8.6620579"
+ d="M 39.774755 19.008621 A 8.6620579 8.6620579 0 1 1 22.45064,19.008621 A 8.6620579 8.6620579 0 1 1 39.774755 19.008621 z" />
+ <path
+ style="opacity:1;fill:#efefef;fill-opacity:1;stroke:#787878;stroke-width:0.95516169;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 2.875,7.5 C 2.1210885,7.5 1.5,8.1265217 1.5,8.90625 L 1.5,15.71875 L 1.5,18.46875 L 1.5,26.189031 C 1.5,26.968759 2.1210885,27.595282 2.875,27.595281 L 5.5,27.595281 L 5.5,30.532781 L 9.2020155,27.56625 L 22.125,27.595281 C 22.878911,27.595281 23.5,26.968758 23.5,26.189031 L 23.5,18.46875 L 23.5,15.71875 L 23.5,8.90625 C 23.5,8.1265221 22.878912,7.5000001 22.125,7.5 L 16.15625,7.5 L 8.375,7.5 L 2.875,7.5 z "
+ id="rect1326"
+ transform="matrix(1.045455,0,0,1.048433,3.931818,8.785079)"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ sodipodi:type="inkscape:offset"
+ inkscape:radius="-0.94924349"
+ inkscape:original="M 2.875 7.5 C 2.1210885 7.5 1.5 8.1265217 1.5 8.90625 L 1.5 15.71875 L 1.5 18.46875 L 1.5 26.1875 C 1.5 26.967227 2.1210885 27.593751 2.875 27.59375 L 5.5 27.59375 L 5.5 30.53125 L 9.1875 27.5625 L 22.125 27.59375 C 22.878911 27.593749 23.5 26.967227 23.5 26.1875 L 23.5 18.46875 L 23.5 15.71875 L 23.5 8.90625 C 23.5 8.1265221 22.878912 7.5000001 22.125 7.5 L 16.15625 7.5 L 8.375 7.5 L 2.875 7.5 z "
+ style="opacity:1;fill:none;fill-opacity:1;stroke:white;stroke-width:0.95516169;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path5034"
+ d="M 2.875,8.4375 C 2.6469872,8.4375 2.4375,8.6305983 2.4375,8.90625 L 2.4375,15.71875 L 2.4375,18.46875 L 2.4375,26.1875 C 2.4375,26.46315 2.6469898,26.65625 2.875,26.65625 L 5.5,26.65625 C 6.0150993,26.662634 6.4311157,27.078651 6.4375,27.59375 L 6.4375,28.5625 L 8.59375,26.8125 C 8.7649594,26.685027 8.9741324,26.618972 9.1875,26.625 L 22.125,26.65625 C 22.353012,26.65625 22.5625,26.463149 22.5625,26.1875 L 22.5625,18.46875 L 22.5625,15.71875 L 22.5625,8.90625 C 22.5625,8.6305986 22.353013,8.4375 22.125,8.4375 L 16.15625,8.4375 L 8.375,8.4375 L 2.875,8.4375 z "
+ transform="matrix(1.045455,0,0,1.048433,3.931818,8.785079)" />
+ </g>
+</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/protocols/irc/resources/irc.gresource.xml Thu Sep 02 21:05:26 2021 -0500
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<gresources>
+ <gresource prefix="/im/pidgin/libpurple/irc">
+ <file>icons/16x16/apps/im-irc.png</file>
+ <file>icons/16x16/apps/scalable/im-irc.svg</file>
+ <file>icons/22x22/apps/im-irc.png</file>
+ <file>icons/22x22/apps/scalable/im-irc.svg</file>
+ <file>icons/48x48/apps/im-irc.png</file>
+ <file>icons/scalable/apps/im-irc.svg</file>
+ </gresource>
+</gresources>
Binary file pidgin/data/icons/hicolor/16x16/apps/im-irc.png has changed
--- a/pidgin/data/icons/hicolor/16x16/apps/scalable/im-irc.svg Thu Sep 02 20:18:36 2021 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,222 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="16"
- height="16"
- id="svg4345"
- sodipodi:version="0.32"
- inkscape:version="0.46"
- sodipodi:docbase="/home/hbons/Desktop"
- sodipodi:docname="irc.svg"
- inkscape:export-filename="/home/hbons/Bureaublad/irc.png"
- inkscape:export-xdpi="90"
- inkscape:export-ydpi="90"
- version="1.0"
- inkscape:output_extension="org.inkscape.output.svg.inkscape">
- <defs
- id="defs4347">
- <linearGradient
- inkscape:collect="always"
- id="linearGradient8648">
- <stop
- style="stop-color:#ffffff;stop-opacity:1;"
- offset="0"
- id="stop8650" />
- <stop
- style="stop-color:#729fcf;stop-opacity:1"
- offset="1"
- id="stop8652" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient8632">
- <stop
- style="stop-color:#729fcf;stop-opacity:1"
- offset="0"
- id="stop8634" />
- <stop
- style="stop-color:#386ca5;stop-opacity:1"
- offset="1"
- id="stop8636" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5235">
- <stop
- style="stop-color:#2e3436;stop-opacity:1;"
- offset="0"
- id="stop5237" />
- <stop
- style="stop-color:#2e3436;stop-opacity:0;"
- offset="1"
- id="stop5239" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient3816">
- <stop
- style="stop-color:#000000;stop-opacity:1;"
- offset="0"
- id="stop3818" />
- <stop
- style="stop-color:#000000;stop-opacity:0;"
- offset="1"
- id="stop3820" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3816"
- id="radialGradient4179"
- gradientUnits="userSpaceOnUse"
- cx="31.112698"
- cy="19.008621"
- fx="31.112698"
- fy="19.008621"
- r="8.6620579" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5235"
- id="radialGradient5241"
- cx="23.234518"
- cy="40.688972"
- fx="23.234518"
- fy="40.688972"
- r="16.956987"
- gradientTransform="matrix(1,0,0,0.133183,0,35.2699)"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient8632"
- id="linearGradient8638"
- x1="12.031081"
- y1="3.9636562"
- x2="14.700418"
- y2="10.228306"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient8648"
- id="linearGradient8654"
- x1="11.198016"
- y1="1.0312058"
- x2="11.198016"
- y2="14.496081"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient8648"
- id="linearGradient8660"
- gradientUnits="userSpaceOnUse"
- x1="11.198016"
- y1="1.1643296"
- x2="11.198016"
- y2="14.496081"
- gradientTransform="matrix(-1,0,0,1,16.00001,5)" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient8632"
- id="linearGradient8662"
- gradientUnits="userSpaceOnUse"
- x1="9.7651443"
- y1="4.0303011"
- x2="9.0022526"
- y2="9.9950476"
- gradientTransform="matrix(-1,0,0,1,16.00001,5)" />
- </defs>
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="15.004829"
- inkscape:cx="21.840023"
- inkscape:cy="16.645163"
- inkscape:current-layer="layer1"
- showgrid="true"
- inkscape:grid-bbox="true"
- inkscape:document-units="px"
- inkscape:window-width="1440"
- inkscape:window-height="847"
- inkscape:window-x="0"
- inkscape:window-y="0"
- width="16px"
- height="16px"
- inkscape:snap-bbox="true"
- inkscape:snap-nodes="false"
- objecttolerance="10"
- gridtolerance="10"
- showguides="true"
- inkscape:guide-bbox="true">
- <inkscape:grid
- type="xygrid"
- id="grid7860"
- visible="true"
- enabled="true" />
- </sodipodi:namedview>
- <metadata
- id="metadata4350">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- id="layer1"
- inkscape:label="Layer 1"
- inkscape:groupmode="layer">
- <path
- style="opacity:0.66000000000000003;fill:url(#linearGradient8654);fill-opacity:1;stroke:url(#linearGradient8638);stroke-width:0.99999928000000005;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 14.875001,0.49999963 C 15.217688,0.49999963 15.5,0.74481173 15.5,1.049489 L 15.5,3.7114598 L 15.5,4.7860168 L 15.5,7.9687565 C 15.5,8.2734337 15.217688,8.5182463 14.875001,8.5182459 L 13.523824,8.5182459 C 13.523824,8.5182459 13.500261,10.537057 13.500261,10.537057 C 12.189929,10.537057 10.901093,8.5069021 10.901093,8.5069021 L 6.1250097,8.5182459 C 5.7823233,8.5182459 5.5000104,8.2734333 5.5000104,7.9687565 L 5.5000104,4.7860168 L 5.5000104,3.7114598 L 5.5000104,1.049489 C 5.5000104,0.74481189 5.7823228,0.49999967 6.1250097,0.49999963 L 8.8380752,0.49999963 L 12.375003,0.49999963 L 14.875001,0.49999963 z"
- id="path5540"
- sodipodi:nodetypes="cccccccccccccccccc" />
- <path
- style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999892999999995;stroke-miterlimit:4;stroke-opacity:1;opacity:0.66"
- d="M 14.326096,1.4999995 C 14.416734,1.4999995 14.500009,1.5636953 14.500009,1.6546223 L 14.500009,3.9018072 L 14.500009,4.8089277 L 14.500009,7.35505 C 14.500009,7.4459764 14.416733,7.5096728 14.326096,7.5096728 L 12.610239,7.5206242 C 12.405479,7.52273 12.449632,8.6309999 12.449632,8.6309999 L 11.44851,7.4434005 L 6.6739127,7.5096728 C 6.5832743,7.5096728 6.4999995,7.4459761 6.4999995,7.35505 L 6.4999995,4.8089277 L 6.4999995,3.9018072 L 6.4999995,1.6546223 C 6.4999995,1.5636954 6.5832739,1.4999995 6.6739127,1.4999995 L 9.0465863,1.4999995 L 12.139758,1.4999995 L 14.326096,1.4999995 z"
- id="path5542"
- sodipodi:nodetypes="cccccccccccccccccc" />
- <path
- sodipodi:type="arc"
- style="opacity:0.52838428;fill:url(#radialGradient5241);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- id="path4340"
- sodipodi:cx="23.234518"
- sodipodi:cy="40.688972"
- sodipodi:rx="16.956987"
- sodipodi:ry="2.2583797"
- d="M 40.191505 40.688972 A 16.956987 2.2583797 0 1 1 6.2775307,40.688972 A 16.956987 2.2583797 0 1 1 40.191505 40.688972 z"
- transform="matrix(1.208941,0,0,1.980928,-1.589159,5.924394)" />
- <path
- transform="matrix(2.539812,0,0,0.410815,-57.0204,65.80212)"
- sodipodi:type="arc"
- style="opacity:1;color:black;fill:url(#radialGradient4179);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
- id="path4306"
- sodipodi:cx="31.112698"
- sodipodi:cy="19.008621"
- sodipodi:rx="8.6620579"
- sodipodi:ry="8.6620579"
- d="M 39.774755 19.008621 A 8.6620579 8.6620579 0 1 1 22.45064,19.008621 A 8.6620579 8.6620579 0 1 1 39.774755 19.008621 z" />
- <path
- style="opacity:1;fill:url(#linearGradient8660);fill-opacity:1;stroke:url(#linearGradient8662);stroke-width:0.99999928000000005;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 1.125011,5.4999996 C 0.78232384,5.4999996 0.50001184,5.7448117 0.50001184,6.049489 L 0.50001184,8.7114598 L 0.50001184,9.7860168 L 0.50001184,12.968757 C 0.50001184,13.273434 0.78232384,13.518247 1.125011,13.518246 L 2.476188,13.518246 C 2.476188,13.518246 2.499751,15.631308 2.499751,15.631308 C 3.810083,15.631308 5.0989186,13.506902 5.0989186,13.506902 L 9.8750026,13.518246 C 10.217687,13.518246 10.5,13.273434 10.5,12.968757 L 10.5,9.7860168 L 10.5,8.7114598 L 10.5,6.049489 C 10.5,5.7448118 10.217688,5.4999996 9.8750026,5.4999996 L 7.1619366,5.4999996 L 3.625009,5.4999996 L 1.125011,5.4999996 z"
- id="path8656"
- sodipodi:nodetypes="cccccccccccccccccc" />
- <path
- style="opacity:0.375;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:0.99999893;stroke-miterlimit:4;stroke-opacity:1"
- d="M 1.673916,6.4999995 C 1.583278,6.4999995 1.500003,6.5636953 1.500003,6.6546223 L 1.500003,8.9018072 L 1.500003,9.8089277 L 1.500003,12.35505 C 1.500003,12.445977 1.583279,12.509673 1.673916,12.509673 L 3.389773,12.520625 C 3.594533,12.52273 3.5714046,13.578902 3.5032546,14.008003 L 4.551502,12.443401 L 9.3260996,12.509673 C 9.4167376,12.509673 9.5000126,12.445976 9.5000126,12.35505 L 9.5000126,9.8089277 L 9.5000126,8.9018072 L 9.5000126,6.6546223 C 9.5000126,6.5636954 9.4167376,6.4999995 9.3260996,6.4999995 L 6.9534256,6.4999995 L 3.860254,6.4999995 L 1.673916,6.4999995 z"
- id="path8658"
- sodipodi:nodetypes="cccccccccccccccccc" />
- </g>
-</svg>
Binary file pidgin/data/icons/hicolor/22x22/apps/im-irc.png has changed
--- a/pidgin/data/icons/hicolor/22x22/apps/scalable/im-irc.svg Thu Sep 02 20:18:36 2021 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,237 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="24"
- height="24"
- id="svg4345"
- sodipodi:version="0.32"
- inkscape:version="0.46"
- sodipodi:docbase="/home/hbons/Desktop"
- sodipodi:docname="irc.svg"
- inkscape:export-filename="/home/hbons/Desktop/pidgin.png"
- inkscape:export-xdpi="90"
- inkscape:export-ydpi="90"
- version="1.0"
- inkscape:output_extension="org.inkscape.output.svg.inkscape">
- <defs
- id="defs4347">
- <linearGradient
- id="linearGradient2804">
- <stop
- style="stop-color:black;stop-opacity:0;"
- offset="0"
- id="stop2806" />
- <stop
- id="stop2812"
- offset="0.5"
- style="stop-color:black;stop-opacity:1;" />
- <stop
- style="stop-color:black;stop-opacity:0;"
- offset="1"
- id="stop2808" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2804"
- id="linearGradient1516"
- gradientUnits="userSpaceOnUse"
- x1="21.875"
- y1="48.000977"
- x2="21.875"
- y2="40" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2781"
- id="radialGradient1514"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(2,0,0,0.8,36,8.8)"
- cx="1"
- cy="44"
- fx="1"
- fy="44"
- r="5" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient2781">
- <stop
- style="stop-color:black;stop-opacity:1;"
- offset="0"
- id="stop2783" />
- <stop
- style="stop-color:black;stop-opacity:0;"
- offset="1"
- id="stop2785" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2781"
- id="radialGradient1512"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(2,0,0,0.8,-13,-79.2)"
- cx="1"
- cy="44"
- fx="1"
- fy="44"
- r="5" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5235">
- <stop
- style="stop-color:#2e3436;stop-opacity:1;"
- offset="0"
- id="stop5237" />
- <stop
- style="stop-color:#2e3436;stop-opacity:0;"
- offset="1"
- id="stop5239" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient3816">
- <stop
- style="stop-color:#000000;stop-opacity:1;"
- offset="0"
- id="stop3818" />
- <stop
- style="stop-color:#000000;stop-opacity:0;"
- offset="1"
- id="stop3820" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3816"
- id="radialGradient4179"
- gradientUnits="userSpaceOnUse"
- cx="31.112698"
- cy="19.008621"
- fx="31.112698"
- fy="19.008621"
- r="8.6620579" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5235"
- id="radialGradient5241"
- cx="23.234518"
- cy="40.688972"
- fx="23.234518"
- fy="40.688972"
- r="16.956987"
- gradientTransform="matrix(1,0,0,0.133183,0,35.2699)"
- gradientUnits="userSpaceOnUse" />
- </defs>
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="28"
- inkscape:cx="17.768242"
- inkscape:cy="11.945133"
- inkscape:current-layer="layer1"
- showgrid="true"
- inkscape:grid-bbox="true"
- inkscape:document-units="px"
- inkscape:window-width="1274"
- inkscape:window-height="966"
- inkscape:window-x="3"
- inkscape:window-y="25"
- width="24px"
- height="24px" />
- <metadata
- id="metadata4350">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- id="layer1"
- inkscape:label="Layer 1"
- inkscape:groupmode="layer">
- <g
- id="g1504"
- style="opacity:0.12663754"
- transform="matrix(0.496192,0,0,0.581846,-0.128303,-4.772994)">
- <rect
- transform="scale(-1,-1)"
- y="-48"
- x="-11"
- height="8"
- width="10"
- id="rect1506"
- style="opacity:1;color:black;fill:url(#radialGradient1512);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
- <rect
- y="40"
- x="38"
- height="8"
- width="10"
- id="rect1508"
- style="opacity:1;color:black;fill:url(#radialGradient1514);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
- <rect
- y="40"
- x="11"
- height="8"
- width="27"
- id="rect1510"
- style="opacity:1;color:black;fill:url(#linearGradient1516);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
- </g>
- <path
- sodipodi:type="arc"
- style="opacity:0.52838428;fill:url(#radialGradient5241);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- id="path4340"
- sodipodi:cx="23.234518"
- sodipodi:cy="40.688972"
- sodipodi:rx="16.956987"
- sodipodi:ry="2.2583797"
- d="M 40.191505 40.688972 A 16.956987 2.2583797 0 1 1 6.2775307,40.688972 A 16.956987 2.2583797 0 1 1 40.191505 40.688972 z"
- transform="matrix(1.208941,0,0,1.980928,-0.589159,7.924396)" />
- <path
- style="opacity:1;fill:#efefef;fill-opacity:1;stroke:#787878;stroke-width:1.69608581;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 2.875,7.5 C 2.1210885,7.5 1.5,8.1265217 1.5,8.90625 L 1.5,15.71875 L 1.5,18.46875 L 1.5,26.613999 C 1.5,27.393727 2.1210885,28.02025 2.875,28.020249 L 4.9145119,28.020249 L 4.9145119,30.532781 L 8.1141033,27.991218 L 22.125,28.020249 C 22.878911,28.020249 23.5,27.393726 23.5,26.613999 L 23.5,18.46875 L 23.5,15.71875 L 23.5,8.90625 C 23.5,8.1265221 22.878912,7.5000001 22.125,7.5 L 16.15625,7.5 L 8.375,7.5 L 2.875,7.5 z "
- id="path4334"
- transform="matrix(-0.590909,0,0,0.588279,23.38636,-1.912091)"
- sodipodi:nodetypes="cccccccccccccccccc" />
- <path
- transform="matrix(-0.546584,0,0,0.546584,22.8323,-1.111803)"
- style="fill:none;fill-opacity:1;stroke:white;stroke-width:1.82954407;stroke-miterlimit:4;stroke-opacity:1"
- d="M 2.875,8.4375 C 2.6469872,8.4375 2.4375,8.6305983 2.4375,8.90625 L 2.4375,15.71875 L 2.4375,18.46875 L 2.4375,26.1875 C 2.4375,26.46315 2.6469898,26.65625 2.875,26.65625 L 5.0575572,26.65625 C 5.5726565,26.662634 5.9886729,27.078651 5.9950572,27.59375 L 7.0909095,26.8125 C 7.2621189,26.685027 8.9741324,26.618972 9.1875,26.625 L 22.125,26.65625 C 22.353012,26.65625 22.5625,26.463149 22.5625,26.1875 L 22.5625,18.46875 L 22.5625,15.71875 L 22.5625,8.90625 C 22.5625,8.6305986 22.353013,8.4375 22.125,8.4375 L 16.15625,8.4375 L 8.375,8.4375 L 2.875,8.4375 z "
- id="path4336"
- sodipodi:nodetypes="ccccccccccccccccccc" />
- <path
- transform="matrix(2.539812,0,0,0.410815,-56.0204,67.80212)"
- sodipodi:type="arc"
- style="opacity:1;color:black;fill:url(#radialGradient4179);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
- id="path4306"
- sodipodi:cx="31.112698"
- sodipodi:cy="19.008621"
- sodipodi:rx="8.6620579"
- sodipodi:ry="8.6620579"
- d="M 39.774755 19.008621 A 8.6620579 8.6620579 0 1 1 22.45064,19.008621 A 8.6620579 8.6620579 0 1 1 39.774755 19.008621 z" />
- <path
- style="opacity:1;fill:#efefef;fill-opacity:1;stroke:#787878;stroke-width:1.69608581;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 2.875,7.5 C 2.1210885,7.5 1.5,8.1265217 1.5,8.90625 L 1.5,15.71875 L 1.5,18.46875 L 1.5,26.613999 C 1.5,27.393727 2.1210885,28.02025 2.875,28.020249 L 4.9145119,28.020249 L 4.9145119,30.532781 L 8.1141033,27.991218 L 22.125,28.020249 C 22.878911,28.020249 23.5,27.393726 23.5,26.613999 L 23.5,18.46875 L 23.5,15.71875 L 23.5,8.90625 C 23.5,8.1265221 22.878912,7.5000001 22.125,7.5 L 16.15625,7.5 L 8.375,7.5 L 2.875,7.5 z "
- id="path5534"
- transform="matrix(0.590909,0,0,0.588279,0.613639,3.087907)"
- sodipodi:nodetypes="cccccccccccccccccc" />
- <path
- transform="matrix(0.546584,0,0,0.546584,1.167699,3.888195)"
- style="fill:none;fill-opacity:1;stroke:white;stroke-width:1.82954407;stroke-miterlimit:4;stroke-opacity:1"
- d="M 2.875,8.4375 C 2.6469872,8.4375 2.4375,8.6305983 2.4375,8.90625 L 2.4375,15.71875 L 2.4375,18.46875 L 2.4375,26.1875 C 2.4375,26.46315 2.6469898,26.65625 2.875,26.65625 L 5.0575572,26.65625 C 5.5726565,26.662634 5.9886729,27.078651 5.9950572,27.59375 L 7.0909095,26.8125 C 7.2621189,26.685027 8.9741324,26.618972 9.1875,26.625 L 22.125,26.65625 C 22.353012,26.65625 22.5625,26.463149 22.5625,26.1875 L 22.5625,18.46875 L 22.5625,15.71875 L 22.5625,8.90625 C 22.5625,8.6305986 22.353013,8.4375 22.125,8.4375 L 16.15625,8.4375 L 8.375,8.4375 L 2.875,8.4375 z "
- id="path5536"
- sodipodi:nodetypes="ccccccccccccccccccc" />
- </g>
-</svg>
Binary file pidgin/data/icons/hicolor/48x48/apps/im-irc.png has changed
--- a/pidgin/data/icons/hicolor/scalable/apps/im-irc.svg Thu Sep 02 20:18:36 2021 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,238 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="48px"
- height="48px"
- id="svg4345"
- sodipodi:version="0.32"
- inkscape:version="0.46"
- sodipodi:docbase="/home/hbons/Desktop"
- sodipodi:docname="irc.svg"
- inkscape:export-filename="/home/hbons/Desktop/pidgin.png"
- inkscape:export-xdpi="90"
- inkscape:export-ydpi="90"
- inkscape:output_extension="org.inkscape.output.svg.inkscape">
- <defs
- id="defs4347">
- <linearGradient
- id="linearGradient2804">
- <stop
- style="stop-color:black;stop-opacity:0;"
- offset="0"
- id="stop2806" />
- <stop
- id="stop2812"
- offset="0.5"
- style="stop-color:black;stop-opacity:1;" />
- <stop
- style="stop-color:black;stop-opacity:0;"
- offset="1"
- id="stop2808" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2804"
- id="linearGradient1516"
- gradientUnits="userSpaceOnUse"
- x1="21.875"
- y1="48.000977"
- x2="21.875"
- y2="40" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2781"
- id="radialGradient1514"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(2,0,0,0.8,36,8.8)"
- cx="1"
- cy="44"
- fx="1"
- fy="44"
- r="5" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient2781">
- <stop
- style="stop-color:black;stop-opacity:1;"
- offset="0"
- id="stop2783" />
- <stop
- style="stop-color:black;stop-opacity:0;"
- offset="1"
- id="stop2785" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient2781"
- id="radialGradient1512"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(2,0,0,0.8,-13,-79.2)"
- cx="1"
- cy="44"
- fx="1"
- fy="44"
- r="5" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5235">
- <stop
- style="stop-color:#2e3436;stop-opacity:1;"
- offset="0"
- id="stop5237" />
- <stop
- style="stop-color:#2e3436;stop-opacity:0;"
- offset="1"
- id="stop5239" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient3816">
- <stop
- style="stop-color:#000000;stop-opacity:1;"
- offset="0"
- id="stop3818" />
- <stop
- style="stop-color:#000000;stop-opacity:0;"
- offset="1"
- id="stop3820" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3816"
- id="radialGradient4179"
- gradientUnits="userSpaceOnUse"
- cx="31.112698"
- cy="19.008621"
- fx="31.112698"
- fy="19.008621"
- r="8.6620579" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5235"
- id="radialGradient5241"
- cx="23.234518"
- cy="40.688972"
- fx="23.234518"
- fy="40.688972"
- r="16.956987"
- gradientTransform="matrix(1,0,0,0.133183,0,35.2699)"
- gradientUnits="userSpaceOnUse" />
- </defs>
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="13.062462"
- inkscape:cx="40.814762"
- inkscape:cy="25.717712"
- inkscape:current-layer="layer1"
- showgrid="true"
- inkscape:grid-bbox="true"
- inkscape:document-units="px"
- inkscape:window-width="1274"
- inkscape:window-height="966"
- inkscape:window-x="3"
- inkscape:window-y="25" />
- <metadata
- id="metadata4350">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- id="layer1"
- inkscape:label="Layer 1"
- inkscape:groupmode="layer">
- <g
- id="g1504"
- style="opacity:0.12663754"
- transform="matrix(0.851064,0,0,0.999995,3.148928,-3.9998)">
- <rect
- transform="scale(-1,-1)"
- y="-48"
- x="-11"
- height="8"
- width="10"
- id="rect1506"
- style="opacity:1;color:black;fill:url(#radialGradient1512);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
- <rect
- y="40"
- x="38"
- height="8"
- width="10"
- id="rect1508"
- style="opacity:1;color:black;fill:url(#radialGradient1514);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
- <rect
- y="40"
- x="11"
- height="8"
- width="27"
- id="rect1510"
- style="opacity:1;color:black;fill:url(#linearGradient1516);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1.20000057;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
- </g>
- <path
- sodipodi:type="arc"
- style="opacity:0.52838428;fill:url(#radialGradient5241);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- id="path4340"
- sodipodi:cx="23.234518"
- sodipodi:cy="40.688972"
- sodipodi:rx="16.956987"
- sodipodi:ry="2.2583797"
- d="M 40.191505 40.688972 A 16.956987 2.2583797 0 1 1 6.2775307,40.688972 A 16.956987 2.2583797 0 1 1 40.191505 40.688972 z"
- transform="matrix(1.208941,0,0,1.980928,3.410841,15.87176)" />
- <path
- style="opacity:1;fill:#efefef;fill-opacity:1;stroke:#787878;stroke-width:0.95516169;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 2.875,7.5 C 2.1210885,7.5 1.5,8.1265217 1.5,8.90625 L 1.5,15.71875 L 1.5,18.46875 L 1.5,26.189031 C 1.5,26.968759 2.1210885,27.595282 2.875,27.595281 L 5.5,27.595281 L 5.5,30.532781 L 9.2020155,27.56625 L 22.125,27.595281 C 22.878911,27.595281 23.5,26.968758 23.5,26.189031 L 23.5,18.46875 L 23.5,15.71875 L 23.5,8.90625 C 23.5,8.1265221 22.878912,7.5000001 22.125,7.5 L 16.15625,7.5 L 8.375,7.5 L 2.875,7.5 z "
- id="path4334"
- transform="matrix(-1.045455,0,0,1.048433,44.0682,0.636752)"
- sodipodi:nodetypes="cccccccccccccccccc" />
- <path
- sodipodi:type="inkscape:offset"
- inkscape:radius="-0.94924349"
- inkscape:original="M 2.875 7.5 C 2.1210885 7.5 1.5 8.1265217 1.5 8.90625 L 1.5 15.71875 L 1.5 18.46875 L 1.5 26.1875 C 1.5 26.967227 2.1210885 27.593751 2.875 27.59375 L 5.5 27.59375 L 5.5 30.53125 L 9.1875 27.5625 L 22.125 27.59375 C 22.878911 27.593749 23.5 26.967227 23.5 26.1875 L 23.5 18.46875 L 23.5 15.71875 L 23.5 8.90625 C 23.5 8.1265221 22.878912 7.5000001 22.125 7.5 L 16.15625 7.5 L 8.375 7.5 L 2.875 7.5 z "
- style="opacity:1;fill:none;fill-opacity:1;stroke:white;stroke-width:0.95516169;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- id="path4336"
- d="M 2.875,8.4375 C 2.6469872,8.4375 2.4375,8.6305983 2.4375,8.90625 L 2.4375,15.71875 L 2.4375,18.46875 L 2.4375,26.1875 C 2.4375,26.46315 2.6469898,26.65625 2.875,26.65625 L 5.5,26.65625 C 6.0150993,26.662634 6.4311157,27.078651 6.4375,27.59375 L 6.4375,28.5625 L 8.59375,26.8125 C 8.7649594,26.685027 8.9741324,26.618972 9.1875,26.625 L 22.125,26.65625 C 22.353012,26.65625 22.5625,26.463149 22.5625,26.1875 L 22.5625,18.46875 L 22.5625,15.71875 L 22.5625,8.90625 C 22.5625,8.6305986 22.353013,8.4375 22.125,8.4375 L 16.15625,8.4375 L 8.375,8.4375 L 2.875,8.4375 z "
- transform="matrix(-1.045455,0,0,1.048433,44.0682,0.636752)" />
- <path
- transform="matrix(2.539812,0,0,0.410815,-52.0204,75.74948)"
- sodipodi:type="arc"
- style="opacity:1;color:black;fill:url(#radialGradient4179);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
- id="path4306"
- sodipodi:cx="31.112698"
- sodipodi:cy="19.008621"
- sodipodi:rx="8.6620579"
- sodipodi:ry="8.6620579"
- d="M 39.774755 19.008621 A 8.6620579 8.6620579 0 1 1 22.45064,19.008621 A 8.6620579 8.6620579 0 1 1 39.774755 19.008621 z" />
- <path
- style="opacity:1;fill:#efefef;fill-opacity:1;stroke:#787878;stroke-width:0.95516169;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 2.875,7.5 C 2.1210885,7.5 1.5,8.1265217 1.5,8.90625 L 1.5,15.71875 L 1.5,18.46875 L 1.5,26.189031 C 1.5,26.968759 2.1210885,27.595282 2.875,27.595281 L 5.5,27.595281 L 5.5,30.532781 L 9.2020155,27.56625 L 22.125,27.595281 C 22.878911,27.595281 23.5,26.968758 23.5,26.189031 L 23.5,18.46875 L 23.5,15.71875 L 23.5,8.90625 C 23.5,8.1265221 22.878912,7.5000001 22.125,7.5 L 16.15625,7.5 L 8.375,7.5 L 2.875,7.5 z "
- id="rect1326"
- transform="matrix(1.045455,0,0,1.048433,3.931818,8.785079)"
- sodipodi:nodetypes="cccccccccccccccccc" />
- <path
- sodipodi:type="inkscape:offset"
- inkscape:radius="-0.94924349"
- inkscape:original="M 2.875 7.5 C 2.1210885 7.5 1.5 8.1265217 1.5 8.90625 L 1.5 15.71875 L 1.5 18.46875 L 1.5 26.1875 C 1.5 26.967227 2.1210885 27.593751 2.875 27.59375 L 5.5 27.59375 L 5.5 30.53125 L 9.1875 27.5625 L 22.125 27.59375 C 22.878911 27.593749 23.5 26.967227 23.5 26.1875 L 23.5 18.46875 L 23.5 15.71875 L 23.5 8.90625 C 23.5 8.1265221 22.878912 7.5000001 22.125 7.5 L 16.15625 7.5 L 8.375 7.5 L 2.875 7.5 z "
- style="opacity:1;fill:none;fill-opacity:1;stroke:white;stroke-width:0.95516169;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- id="path5034"
- d="M 2.875,8.4375 C 2.6469872,8.4375 2.4375,8.6305983 2.4375,8.90625 L 2.4375,15.71875 L 2.4375,18.46875 L 2.4375,26.1875 C 2.4375,26.46315 2.6469898,26.65625 2.875,26.65625 L 5.5,26.65625 C 6.0150993,26.662634 6.4311157,27.078651 6.4375,27.59375 L 6.4375,28.5625 L 8.59375,26.8125 C 8.7649594,26.685027 8.9741324,26.618972 9.1875,26.625 L 22.125,26.65625 C 22.353012,26.65625 22.5625,26.463149 22.5625,26.1875 L 22.5625,18.46875 L 22.5625,15.71875 L 22.5625,8.90625 C 22.5625,8.6305986 22.353013,8.4375 22.125,8.4375 L 16.15625,8.4375 L 8.375,8.4375 L 2.875,8.4375 z "
- transform="matrix(1.045455,0,0,1.048433,3.931818,8.785079)" />
- </g>
-</svg>
--- a/pidgin/gtkutils.c Thu Sep 02 20:18:36 2021 -0500
+++ b/pidgin/gtkutils.c Thu Sep 02 21:05:26 2021 -0500
@@ -254,12 +254,39 @@
}
GdkPixbuf *
-pidgin_create_icon_from_protocol(PurpleProtocol *protocol, PidginProtocolIconSize size, PurpleAccount *account)
+pidgin_create_icon_from_protocol(PurpleProtocol *protocol,
+ PidginProtocolIconSize size,
+ PurpleAccount *account)
{
+ GInputStream *stream = NULL;
+ GdkPixbuf *pixbuf;
const char *protoname = NULL;
+ const gchar *icon_name = NULL;
char *tmp;
char *filename = NULL;
- GdkPixbuf *pixbuf;
+
+ /* If the protocol specified an icon-name try to load it from the icon
+ * theme.
+ */
+ icon_name = purple_protocol_get_icon_name(protocol);
+ if(icon_name != NULL) {
+ GtkIconTheme *theme = gtk_icon_theme_get_default();
+ gint dimensions = 48;
+
+ if(size == PIDGIN_PROTOCOL_ICON_SMALL) {
+ dimensions = 16;
+ } else if(size == PIDGIN_PROTOCOL_ICON_MEDIUM) {
+ dimensions = 22;
+ }
+
+ pixbuf = gtk_icon_theme_load_icon(theme, icon_name, dimensions,
+ GTK_ICON_LOOKUP_FORCE_SIZE, NULL);
+
+ if(GDK_IS_PIXBUF(pixbuf)) {
+ return pixbuf;
+ }
+
+ }
protoname = purple_protocol_get_list_icon(protocol, account, NULL);
if (protoname == NULL)
--- a/pidgin/libpidgin.c Thu Sep 02 20:18:36 2021 -0500
+++ b/pidgin/libpidgin.c Thu Sep 02 21:05:26 2021 -0500
@@ -155,6 +155,36 @@
#endif /* !_WIN32 */
static void
+purple_ui_add_protocol_theme_paths(PurpleProtocol *protocol) {
+ GtkIconTheme *theme = NULL;
+ const gchar *path = NULL;
+
+ theme = gtk_icon_theme_get_default();
+
+ path = purple_protocol_get_icon_search_path(protocol);
+ if(path != NULL) {
+ gtk_icon_theme_prepend_search_path(theme, path);
+ }
+
+ path = purple_protocol_get_icon_resource_path(protocol);
+ if(path != NULL) {
+ gtk_icon_theme_add_resource_path(theme, path);
+ }
+}
+
+static void
+purple_ui_protocol_foreach_theme_cb(PurpleProtocol *protocol, gpointer data) {
+ purple_ui_add_protocol_theme_paths(protocol);
+}
+
+static void
+purple_ui_protocol_registered_cb(PurpleProtocolManager *manager,
+ PurpleProtocol *protocol)
+{
+ purple_ui_add_protocol_theme_paths(protocol);
+}
+
+static void
debug_init(void)
{
PidginDebugUi *ui = pidgin_debug_ui_new();
@@ -164,6 +194,7 @@
static void
pidgin_ui_init(void)
{
+ PurpleProtocolManager *protocol_manager = NULL;
GtkIconTheme *theme = NULL;
gchar *path;
@@ -173,6 +204,19 @@
gtk_icon_theme_prepend_search_path(theme, path);
g_free(path);
+ /* Add a callback for when a protocol is registered to add its icon paths
+ * if it was found after initial startup.
+ */
+ protocol_manager = purple_protocol_manager_get_default();
+ g_signal_connect(protocol_manager, "registered",
+ G_CALLBACK(purple_ui_protocol_registered_cb), NULL);
+
+ /* Add the icon paths for all the protocols that libpurple found at start
+ * up.
+ */
+ purple_protocol_manager_foreach(protocol_manager,
+ purple_ui_protocol_foreach_theme_cb, NULL);
+
pidgin_stock_init();
/* Set the UI operation structures. */