summaryrefslogtreecommitdiff
path: root/mate-panel/panel-action-button.c
diff options
context:
space:
mode:
authorBalló György <[email protected]>2014-10-04 02:49:13 +0200
committerStefano Karapetsas <[email protected]>2014-10-13 09:27:13 +0200
commit469727d8d2f9dea7277b89c20bd4e1da0c2969f7 (patch)
tree55260ef2262dd8711a1d14585e1fd58000b5050a /mate-panel/panel-action-button.c
parent9144c25beaf0fe63cb668c730bbaaa532069c2d3 (diff)
downloadmate-panel-469727d8d2f9dea7277b89c20bd4e1da0c2969f7.tar.bz2
mate-panel-469727d8d2f9dea7277b89c20bd4e1da0c2969f7.tar.xz
Places menu: don't rely on Caja desktop files
This adds better support for other GVFS-compliant file managers (e.g. nautilus, nemo, pcmanfm). Closes https://github.com/mate-desktop/mate-panel/pull/242
Diffstat (limited to 'mate-panel/panel-action-button.c')
-rw-r--r--mate-panel/panel-action-button.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/mate-panel/panel-action-button.c b/mate-panel/panel-action-button.c
index 6596f6be..0a2c9ff2 100644
--- a/mate-panel/panel-action-button.c
+++ b/mate-panel/panel-action-button.c
@@ -293,17 +293,26 @@ static void
panel_action_connect_server (GtkWidget *widget)
{
GdkScreen *screen;
+ char *command;
GError *error;
screen = gtk_widget_get_screen (GTK_WIDGET (widget));
error = NULL;
+ if (panel_is_program_in_path ("caja-connect-server"))
+ command = g_strdup ("caja-connect-server");
+ else if (panel_is_program_in_path ("nautilus-connect-server"))
+ command = g_strdup ("nautilus-connect-server");
+ else
+ command = g_strdup ("nemo-connect-server");
+
#if GTK_CHECK_VERSION (3, 0, 0)
- mate_gdk_spawn_command_line_on_screen (screen, "caja-connect-server",
+ mate_gdk_spawn_command_line_on_screen (screen, command,
#else
- gdk_spawn_command_line_on_screen (screen, "caja-connect-server",
+ gdk_spawn_command_line_on_screen (screen, command,
#endif
&error);
+ g_free (command);
if (error) {
panel_error_dialog (NULL, screen,