Load menu icons even if they are installed after their .desktop file
(http://bugzilla.gnome.org/show_bug.cgi?id=306359).
This commit is contained in:
parent
7f910f384e
commit
213cd33825
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=137240
4 changed files with 86 additions and 2 deletions
|
@ -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
|
||||
|
|
42
x11/gnome-panel/files/patch-gnome-panel_menu.c
Normal file
42
x11/gnome-panel/files/patch-gnome-panel_menu.c
Normal file
|
@ -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",
|
|
@ -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
|
||||
|
|
42
x11/gnomepanel/files/patch-gnome-panel_menu.c
Normal file
42
x11/gnomepanel/files/patch-gnome-panel_menu.c
Normal file
|
@ -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",
|
Loading…
Reference in a new issue