[Xfce4-commits] <xfce4-clipman-plugin:master> Use themed icon "clipman" or fallback to edit-paste (bug 6698)
Mike Massonnet
noreply at xfce.org
Sat May 7 21:38:02 CEST 2011
Updating branch refs/heads/master
to 758c09dd805e8c48de44e03cd292111983dbbd68 (commit)
from 08d8e947fb56132edc79b4a36201e6ed6e81c0b2 (commit)
commit 758c09dd805e8c48de44e03cd292111983dbbd68
Author: Mike Massonnet <mmassonnet at xfce.org>
Date: Sat May 7 21:40:03 2011 +0200
Use themed icon "clipman" or fallback to edit-paste (bug 6698)
panel-plugin/main-panel-plugin.c | 11 +++++++++--
panel-plugin/main-status-icon.c | 10 +++++++++-
2 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/panel-plugin/main-panel-plugin.c b/panel-plugin/main-panel-plugin.c
index c57f251..fd46ce6 100644
--- a/panel-plugin/main-panel-plugin.c
+++ b/panel-plugin/main-panel-plugin.c
@@ -60,6 +60,7 @@ static void
panel_plugin_register (XfcePanelPlugin *panel_plugin)
{
MyPlugin *plugin = plugin_register ();
+ GtkIconTheme *icon_theme = gtk_icon_theme_get_default ();
/* Menu Position Func */
plugin->menu_position_func = (GtkMenuPositionFunc)my_plugin_position_menu;
@@ -72,8 +73,14 @@ panel_plugin_register (XfcePanelPlugin *panel_plugin)
/* Panel Button */
plugin->button = xfce_create_panel_toggle_button ();
- /* The image is set through the set_size callback */
- plugin->image = xfce_panel_image_new_from_source (GTK_STOCK_PASTE);
+ if (gtk_icon_theme_has_icon (icon_theme, "clipman"))
+ {
+ plugin->image = xfce_panel_image_new_from_source ("clipman");
+ }
+ else
+ {
+ plugin->image = xfce_panel_image_new_from_source (GTK_STOCK_PASTE);
+ }
gtk_container_add (GTK_CONTAINER (plugin->button), plugin->image);
gtk_container_add (GTK_CONTAINER (panel_plugin), plugin->button);
xfce_panel_plugin_add_action_widget (panel_plugin, plugin->button);
diff --git a/panel-plugin/main-status-icon.c b/panel-plugin/main-status-icon.c
index f80fbe1..268c526 100644
--- a/panel-plugin/main-status-icon.c
+++ b/panel-plugin/main-status-icon.c
@@ -77,12 +77,20 @@ static MyPlugin *
status_icon_register (void)
{
MyPlugin *plugin = plugin_register ();
+ GtkIconTheme *icon_theme = gtk_icon_theme_get_default ();
/* Menu Position Func */
plugin->menu_position_func = (GtkMenuPositionFunc)gtk_status_icon_position_menu;
/* Status Icon */
- plugin->status_icon = gtk_status_icon_new_from_stock (GTK_STOCK_PASTE);
+ if (gtk_icon_theme_has_icon (icon_theme, "clipman"))
+ {
+ plugin->status_icon = gtk_status_icon_new_from_icon_name ("clipman");
+ }
+ else
+ {
+ plugin->status_icon = gtk_status_icon_new_from_stock (GTK_STOCK_PASTE);
+ }
gtk_status_icon_set_tooltip (plugin->status_icon, _("Clipman"));
g_timeout_add_seconds (60, (GSourceFunc)cb_status_icon_is_embedded, plugin->status_icon);
More information about the Xfce4-commits
mailing list