diff options
author | jylefort <jylefort@FreeBSD.org> | 2005-06-11 09:04:26 +0800 |
---|---|---|
committer | jylefort <jylefort@FreeBSD.org> | 2005-06-11 09:04:26 +0800 |
commit | 86f40ae46e2058f60e90b51405f27a56621aa53e (patch) | |
tree | 5ad150c8cbc5a296de41bcde2a82a97979bca6e3 /x11 | |
parent | de0881ef019a7ea75c784a2093e579793595a36b (diff) | |
download | freebsd-ports-graphics-86f40ae46e2058f60e90b51405f27a56621aa53e.tar.gz freebsd-ports-graphics-86f40ae46e2058f60e90b51405f27a56621aa53e.tar.zst freebsd-ports-graphics-86f40ae46e2058f60e90b51405f27a56621aa53e.zip |
Load menu icons even if they are installed after their .desktop file
(http://bugzilla.gnome.org/show_bug.cgi?id=306359).
Diffstat (limited to 'x11')
-rw-r--r-- | x11/gnome-panel/Makefile | 2 | ||||
-rw-r--r-- | x11/gnome-panel/files/patch-gnome-panel_menu.c | 42 | ||||
-rw-r--r-- | x11/gnomepanel/Makefile | 2 | ||||
-rw-r--r-- | x11/gnomepanel/files/patch-gnome-panel_menu.c | 42 |
4 files changed, 86 insertions, 2 deletions
diff --git a/x11/gnome-panel/Makefile b/x11/gnome-panel/Makefile index eebf471438d..f04406a3b01 100644 --- a/x11/gnome-panel/Makefile +++ b/x11/gnome-panel/Makefile @@ -7,7 +7,7 @@ PORTNAME= gnomepanel PORTVERSION= 2.10.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= x11 gnome MASTER_SITES= ${MASTER_SITE_GNOME} MASTER_SITE_SUBDIR= sources/gnome-panel/2.10 diff --git a/x11/gnome-panel/files/patch-gnome-panel_menu.c b/x11/gnome-panel/files/patch-gnome-panel_menu.c new file mode 100644 index 00000000000..aa7aeae8c19 --- /dev/null +++ b/x11/gnome-panel/files/patch-gnome-panel_menu.c @@ -0,0 +1,42 @@ +--- gnome-panel/menu.c.orig Sat Mar 26 15:12:10 2005 ++++ gnome-panel/menu.c Fri Jun 3 11:17:45 2005 +@@ -1535,8 +1535,8 @@ + return NULL; + } + +-static void +-image_menu_shown (GtkWidget *image, gpointer data) ++static gboolean ++image_menu_exposed (GtkWidget *image, GdkEventExpose *event, gpointer data) + { + IconToLoad *new_icon; + IconToLoad *icon; +@@ -1545,7 +1545,7 @@ + + /* if we've already handled this */ + if (gtk_image_get_storage_type (GTK_IMAGE (image)) != GTK_IMAGE_EMPTY) +- return; ++ return FALSE; /* propagate event */ + + if (find_in_load_list (image) == NULL) { + new_icon = icon_to_load_copy (icon); +@@ -1554,6 +1554,8 @@ + } + if (load_icons_id == 0) + load_icons_id = g_idle_add (load_icons_handler, NULL); ++ ++ return FALSE; /* propagate event */ + } + + static void +@@ -1601,8 +1603,8 @@ + gtk_image_menu_item_set_image ( + GTK_IMAGE_MENU_ITEM (image_menu_item), image); + +- g_signal_connect_data (image, "map", +- G_CALLBACK (image_menu_shown), icon, ++ g_signal_connect_data (image, "expose-event", ++ G_CALLBACK (image_menu_exposed), icon, + (GClosureNotify) icon_to_load_free, 0); + + g_signal_connect (image, "destroy", diff --git a/x11/gnomepanel/Makefile b/x11/gnomepanel/Makefile index eebf471438d..f04406a3b01 100644 --- a/x11/gnomepanel/Makefile +++ b/x11/gnomepanel/Makefile @@ -7,7 +7,7 @@ PORTNAME= gnomepanel PORTVERSION= 2.10.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= x11 gnome MASTER_SITES= ${MASTER_SITE_GNOME} MASTER_SITE_SUBDIR= sources/gnome-panel/2.10 diff --git a/x11/gnomepanel/files/patch-gnome-panel_menu.c b/x11/gnomepanel/files/patch-gnome-panel_menu.c new file mode 100644 index 00000000000..aa7aeae8c19 --- /dev/null +++ b/x11/gnomepanel/files/patch-gnome-panel_menu.c @@ -0,0 +1,42 @@ +--- gnome-panel/menu.c.orig Sat Mar 26 15:12:10 2005 ++++ gnome-panel/menu.c Fri Jun 3 11:17:45 2005 +@@ -1535,8 +1535,8 @@ + return NULL; + } + +-static void +-image_menu_shown (GtkWidget *image, gpointer data) ++static gboolean ++image_menu_exposed (GtkWidget *image, GdkEventExpose *event, gpointer data) + { + IconToLoad *new_icon; + IconToLoad *icon; +@@ -1545,7 +1545,7 @@ + + /* if we've already handled this */ + if (gtk_image_get_storage_type (GTK_IMAGE (image)) != GTK_IMAGE_EMPTY) +- return; ++ return FALSE; /* propagate event */ + + if (find_in_load_list (image) == NULL) { + new_icon = icon_to_load_copy (icon); +@@ -1554,6 +1554,8 @@ + } + if (load_icons_id == 0) + load_icons_id = g_idle_add (load_icons_handler, NULL); ++ ++ return FALSE; /* propagate event */ + } + + static void +@@ -1601,8 +1603,8 @@ + gtk_image_menu_item_set_image ( + GTK_IMAGE_MENU_ITEM (image_menu_item), image); + +- g_signal_connect_data (image, "map", +- G_CALLBACK (image_menu_shown), icon, ++ g_signal_connect_data (image, "expose-event", ++ G_CALLBACK (image_menu_exposed), icon, + (GClosureNotify) icon_to_load_free, 0); + + g_signal_connect (image, "destroy", |