diff options
Diffstat (limited to 'src/caja-window-menus.c')
-rw-r--r-- | src/caja-window-menus.c | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/src/caja-window-menus.c b/src/caja-window-menus.c index 82d4c4d6..c511aaac 100644 --- a/src/caja-window-menus.c +++ b/src/caja-window-menus.c @@ -574,20 +574,36 @@ action_caja_manual_callback (GtkAction *action, if (CAJA_IS_DESKTOP_WINDOW (window)) { -#if GTK_CHECK_VERSION(2, 24, 0) +#if GTK_CHECK_VERSION (3, 0, 0) + GdkScreen *screen; + GdkAppLaunchContext *launch_context; + GAppInfo *app_info = NULL; + app_info = g_app_info_create_from_commandline ("mate-help", + NULL, + G_APP_INFO_CREATE_NONE, + &error); + if (error == NULL) + { + screen = gtk_window_get_screen(GTK_WINDOW(window)); + launch_context = gdk_app_launch_context_new (); + gdk_app_launch_context_set_screen (launch_context, screen); + g_app_info_launch (app_info, NULL, G_APP_LAUNCH_CONTEXT (launch_context), &error); + g_object_unref (launch_context); + } + if (app_info != NULL) + g_object_unref (app_info); +#else +#if GTK_CHECK_VERSION (2, 24, 0) gdk_spawn_command_line_on_screen(gtk_window_get_screen(GTK_WINDOW(window)), "mate-help", &error); #else - - - g_spawn_command_line_async("mate-help", &error); #endif - +#endif } else { gtk_show_uri (gtk_window_get_screen (GTK_WINDOW (window)), - "ghelp:user-guide#goscaja-1", + "help:user-guide#goscaja-1", gtk_get_current_event_time (), &error); } |