Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37857689
en ru br
ALT Linux repos
S:3.50.0-alt1
5.0: 2.26.1-alt1
4.1: 2.22.2-alt0.M41.2
4.0: 2.16.2-alt1
3.0: 2.10.2-alt1

Other repositories
Upstream:2.22.0

Group :: Graphical desktop/GNOME
RPM: gnome-panel

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

Patch: gnome-panel-2.16.1-search.patch
Download


--- gnome-panel-2.16.1/gnome-panel/panel-action-button.c.use-beagle	2006-08-07 17:07:46.000000000 -0400
+++ gnome-panel-2.16.1/gnome-panel/panel-action-button.c	2006-11-21 08:46:10.000000000 -0500
@@ -189,16 +189,31 @@
 {
 	GdkScreen *screen;
 	GError    *error = NULL;
+	const gchar *prog;
 
 	screen = gtk_widget_get_screen (widget);
-	panel_launch_desktop_file ("gnome-search-tool.desktop",
-				   "gnome-search-tool",
-				   screen,
-				   &error);
+	if (panel_has_desktop_file ("gnome-beagle-search.desktop")) {
+		prog = "beagle-search";
+		panel_launch_desktop_file ("gnome-beagle-search.desktop",
+					   "beagle-search",
+					   screen,
+					   &error);
+	} else if (panel_has_desktop_file ("tracker-search-tool.desktop")) {
+		prog = "tracker-search-tool";
+		panel_launch_desktop_file ("tracker-search-tool.desktop",
+					   "tracker-search-tool",
+					   screen,
+					   &error);
+	} else {
+		prog = "gnome-search-tool";
+		panel_launch_desktop_file ("gnome-search-tool.desktop",
+					   "gnome-search-tool",
+					   screen,
+					   &error);
+	}
 	if (error) {
 		char *primary;
-		primary = g_strdup_printf (_("Could not execute '%s'"),
-					   "gnome-search-tool");
+		primary = g_strdup_printf (_("Could not execute '%s'"), prog);
 		panel_error_dialog (NULL, screen,
 				    "cannot_exec_gnome-search-tool", TRUE,
 				    primary, error->message);
--- gnome-panel-2.16.1/gnome-panel/panel-menu-items.c.use-beagle	2006-11-21 08:36:27.000000000 -0500
+++ gnome-panel-2.16.1/gnome-panel/panel-menu-items.c	2006-11-21 08:43:40.000000000 -0500
@@ -627,9 +627,20 @@
 
 	add_menu_separator (places_menu);
 
-	panel_menu_items_append_from_desktop (places_menu,
-					      "gnome-search-tool.desktop",
-					      NULL);
+        if (panel_has_desktop_file ("gnome-beagle-search.desktop")) {
+              panel_menu_items_append_from_desktop (places_menu,
+                                                    "gnome-beagle-search.desktop",
+                                                    NULL);
+	} else if (panel_has_desktop_file ("tracker-search-tool.desktop")) {
+              panel_menu_items_append_from_desktop (places_menu,
+                                                    "tracker-search-tool.desktop",
+                                                    NULL);
+        } else {
+              panel_menu_items_append_from_desktop (places_menu,
+                                                    "gnome-search-tool.desktop",
+                                                    NULL);
+        }
+
 
 	panel_recent_append_documents_menu (places_menu,
 					    place_item->priv->recent_manager);
--- gnome-panel-2.16.1/gnome-panel/panel-util.h.use-beagle	2006-11-21 08:46:52.000000000 -0500
+++ gnome-panel-2.16.1/gnome-panel/panel-util.h	2006-11-21 08:47:28.000000000 -0500
@@ -16,6 +16,7 @@
 						 GList                   *file_list,
 						 GdkScreen               *screen,
 						 GError                 **error);
+gboolean        panel_has_desktop_file     (const char                   *desktop_file);
 void            panel_launch_desktop_file  (const char                   *desktop_file,
 					    const char                   *fallback_exec,
 					    GdkScreen                    *screen,
--- gnome-panel-2.16.1/gnome-panel/panel-util.c.use-beagle	2006-11-21 08:46:59.000000000 -0500
+++ gnome-panel-2.16.1/gnome-panel/panel-util.c	2006-11-21 08:47:54.000000000 -0500
@@ -96,6 +96,23 @@
 	gnome_desktop_item_unref (ditem);
 }
 
+gboolean
+panel_has_desktop_file (const char  *desktop_file)
+{
+	GnomeDesktopItem *ditem;
+
+	if (g_path_is_absolute (desktop_file))
+		ditem = gnome_desktop_item_new_from_file (desktop_file, 0, NULL);
+	else
+		ditem = gnome_desktop_item_new_from_basename (desktop_file, 0, NULL);
+	if (ditem != NULL) {
+		gnome_desktop_item_unref (ditem);
+		return TRUE;
+	}
+
+	return FALSE;	
+}
+
 void
 panel_launch_desktop_file (const char  *desktop_file,
 			   const char  *fallback_exec,
 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin