File gnome-packagekit-bnc437977-help.patch of Package gnome-packagekit
Index: gnome-packagekit-0.3.11/src/gpk-gnome.c
===================================================================
--- gnome-packagekit-0.3.11.orig/src/gpk-gnome.c
+++ gnome-packagekit-0.3.11/src/gpk-gnome.c
@@ -55,32 +55,17 @@ gboolean
gpk_gnome_help (const gchar *link_id)
{
GError *error = NULL;
- gchar *command;
- const gchar *lang;
- gchar *uri = NULL;
- GdkScreen *gscreen;
- gint i;
- gboolean ret = TRUE;
- const gchar *const *langs = g_get_language_names ();
+ gchar * uri;
+ gboolean ret;
- for (i = 0; langs[i]; i++) {
- lang = langs[i];
- if (strchr (lang, '.'))
- continue;
- uri = g_build_filename (DATADIR, "/gnome/help/gnome-packagekit/",
- lang, "/gnome-packagekit.xml", NULL);
- if (g_file_test (uri, G_FILE_TEST_EXISTS))
- break;
- g_free (uri);
- }
if (link_id)
- command = g_strconcat ("gnome-open ghelp://", uri, "?", link_id, NULL);
+ uri = g_strconcat ("ghelp:gnome-packagekit", "?", link_id, NULL);
else
- command = g_strconcat ("gnome-open ghelp://", uri, NULL);
- egg_debug ("using command %s", command);
+ uri = g_strconcat ("ghelp:gnome-packagekit", NULL);
- gscreen = gdk_screen_get_default ();
- gdk_spawn_command_line_on_screen (gscreen, command, &error);
+ //TODO: it would be nice to pass in the screen and timestamp from all callers of this method
+ ret = gtk_show_uri (NULL, uri, gtk_get_current_event_time (), &error);
+ g_free (uri);
if (error != NULL) {
GtkWidget *d;
d = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
@@ -91,8 +76,6 @@ gpk_gnome_help (const gchar *link_id)
ret = FALSE;
}
- g_free (command);
- g_free (uri);
return ret;
}