Updating branch refs/heads/master
         to acd2f122aefbed9558a2d034c1947fbaa3bc8ca1 (commit)
       from 2400de30a0157949f2c393cbccf13028d7551080 (commit)

commit acd2f122aefbed9558a2d034c1947fbaa3bc8ca1
Author: Enrico Tröger <enr...@xfce.org>
Date:   Sat Sep 17 14:23:07 2011 +0200

    Add 'Open in Terminal' command

 src/backendgvfs.c       |   17 ++++
 src/backendgvfs.h       |    2 +
 src/preferencesdialog.c |   17 ++++
 src/settings.c          |   35 +++++++++-
 src/settings.h          |    1 +
 src/window.c            |  188 +++++++++++++++++++++++++++++++++++++----------
 6 files changed, 221 insertions(+), 39 deletions(-)

diff --git a/src/backendgvfs.c b/src/backendgvfs.c
index 303ed9d..0d74d96 100644
--- a/src/backendgvfs.c
+++ b/src/backendgvfs.c
@@ -598,6 +598,23 @@ gchar *gigolo_backend_gvfs_get_volume_identifier(gpointer 
volume)
 }
 
 
+gchar *gigolo_backend_gvfs_get_mount_path(gpointer mount)
+{
+       GFile *file;
+       gchar *path = NULL;
+
+       g_return_val_if_fail(mount != NULL, NULL);
+
+       file = g_mount_get_default_location(G_MOUNT(mount));
+       if (file != NULL)
+       {
+               path = g_file_get_path(file);
+               g_object_unref(file);
+       }
+       return path;
+}
+
+
 static gboolean browse_network_ready_cb(gpointer backend)
 {
        GigoloBackendGVFSPrivate *priv;
diff --git a/src/backendgvfs.h b/src/backendgvfs.h
index ed5b17e..ada2431 100644
--- a/src/backendgvfs.h
+++ b/src/backendgvfs.h
@@ -114,6 +114,8 @@ const gchar *const* 
gigolo_backend_gvfs_get_supported_uri_schemes   (void);
 
 gboolean                       gigolo_backend_gvfs_is_scheme_supported         
        (const gchar *scheme);
 
+gchar*                         gigolo_backend_gvfs_get_mount_path              
                (gpointer mount);
+
 G_END_DECLS
 
 #endif /* __BACKENDGVFS_H__ */
diff --git a/src/preferencesdialog.c b/src/preferencesdialog.c
index e16950d..c9747d9 100644
--- a/src/preferencesdialog.c
+++ b/src/preferencesdialog.c
@@ -352,6 +352,23 @@ static void set_settings(GigoloPreferencesDialog *dialog, 
GigoloSettings *settin
        hbox = gtk_hbox_new(FALSE, 6);
        gtk_box_pack_start(GTK_BOX(frame_vbox), hbox, FALSE, FALSE, 0);
 
+       label1 = gtk_label_new_with_mnemonic(_("_Terminal"));
+       gtk_misc_set_alignment(GTK_MISC(label1), 0.0f, 0.5f);
+       gtk_box_pack_start(GTK_BOX(hbox), label1, FALSE, FALSE, 0);
+
+       image = gtk_image_new();
+       gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, FALSE, 3);
+
+       entry = add_program_entry(settings, "terminal");
+       gtk_widget_set_tooltip_text(entry, _("Enter the name of a program to 
open mount points in a terminal"));
+       g_object_set_data(G_OBJECT(entry), "image", image);
+       gtk_label_set_mnemonic_widget(GTK_LABEL(label1), entry);
+       gtk_box_pack_start(GTK_BOX(hbox), entry, FALSE, FALSE, 0);
+       entry_check_input(GTK_ENTRY(entry));
+
+       hbox = gtk_hbox_new(FALSE, 6);
+       gtk_box_pack_start(GTK_BOX(frame_vbox), hbox, FALSE, FALSE, 0);
+
        label1 = gtk_label_new_with_mnemonic(_("_Bookmark Auto-Connect 
Interval"));
        gtk_misc_set_alignment(GTK_MISC(label1), 0.0f, 0.5f);
        gtk_box_pack_start(GTK_BOX(hbox), label1, FALSE, FALSE, 0);
diff --git a/src/settings.c b/src/settings.c
index 70ab252..91641ee 100644
--- a/src/settings.c
+++ b/src/settings.c
@@ -56,6 +56,7 @@ struct _GigoloSettingsPrivate
        gboolean        show_autoconnect_errors;
 
        gchar           *file_manager;
+       gchar           *terminal;
        gint             autoconnect_interval;
        gint            *geometry; /* window size and position, field 4 is a 
flag for maximized state */
 
@@ -77,6 +78,7 @@ enum
        PROP_0,
 
        PROP_FILE_MANAGER,
+       PROP_TERMINAL,
        PROP_AUTOCONNECT_INTERVAL,
 
        PROP_SAVE_GEOMETRY,
@@ -127,6 +129,10 @@ static void gigolo_settings_set_property(GObject *object, 
guint prop_id, const G
                g_free(priv->file_manager);
                priv->file_manager = g_value_dup_string(value);
                break;
+       case PROP_TERMINAL:
+               g_free(priv->terminal);
+               priv->terminal = g_value_dup_string(value);
+               break;
        case PROP_AUTOCONNECT_INTERVAL:
                priv->autoconnect_interval = g_value_get_int(value);
                break;
@@ -179,6 +185,9 @@ static void gigolo_settings_get_property(GObject *object, 
guint prop_id, GValue
        case PROP_FILE_MANAGER:
                g_value_set_string(value, priv->file_manager);
                break;
+       case PROP_TERMINAL:
+               g_value_set_string(value, priv->terminal);
+               break;
        case PROP_AUTOCONNECT_INTERVAL:
                if (priv->autoconnect_interval < 0)
                        g_object_set(object, "autoconnect-interval", 
DEFAULT_AUTOCONNECT_INTERVAL, NULL);
@@ -273,7 +282,15 @@ static void gigolo_settings_class_init(GigoloSettingsClass 
*klass)
                                                                        
g_param_spec_string(
                                                                        
"file-manager",
                                                                        
"file-manager",
-                                                                       "A 
program for use to open mount points",
+                                                                       "A 
program to use to open mount points",
+                                                                       NULL,
+                                                                       
G_PARAM_READWRITE));
+       g_object_class_install_property(gobject_class,
+                                                                       
PROP_TERMINAL,
+                                                                       
g_param_spec_string(
+                                                                       
"terminal",
+                                                                       
"terminal",
+                                                                       "A 
program to use to open mount points in a terminal",
                                                                        NULL,
                                                                        
G_PARAM_READWRITE));
        g_object_class_install_property(gobject_class,
@@ -446,6 +463,8 @@ static void write_settings_config(GigoloSettings *settings)
 
        if (priv->file_manager != NULL)
                g_key_file_set_string(k, SECTION_GENERAL, "file_manager", 
priv->file_manager);
+       if (priv->terminal != NULL)
+               g_key_file_set_string(k, SECTION_GENERAL, "terminal", 
priv->terminal);
        g_key_file_set_integer(k, SECTION_GENERAL, "autoconnect_interval", 
priv->autoconnect_interval);
 
        if (priv->geometry != NULL)
@@ -554,6 +573,8 @@ static void load_settings_read_config(GigoloSettingsPrivate 
*priv)
        }
 
        priv->file_manager = get_setting_string(k, SECTION_GENERAL, 
"file_manager", "gvfs-open");
+       /* is there a generic way to open a default terminal? */
+       priv->terminal = get_setting_string(k, SECTION_GENERAL, "terminal", 
"xterm");
        priv->autoconnect_interval = get_setting_int(k, SECTION_GENERAL, 
"autoconnect_interval",
                DEFAULT_AUTOCONNECT_INTERVAL);
 
@@ -800,6 +821,18 @@ gboolean gigolo_settings_has_file_manager(GigoloSettings 
*settings)
 }
 
 
+gboolean gigolo_settings_has_terminal(GigoloSettings *settings)
+{
+       GigoloSettingsPrivate *priv;
+
+       g_return_val_if_fail(settings != NULL, FALSE);
+
+       priv = GIGOLO_SETTINGS_GET_PRIVATE(settings);
+
+       return NZV(priv->terminal);
+}
+
+
 GigoloBookmark *gigolo_settings_get_bookmark_by_uri(GigoloSettings *settings, 
const gchar *uri)
 {
        GigoloBookmarkList *bml;
diff --git a/src/settings.h b/src/settings.h
index 8c6878a..0031152 100644
--- a/src/settings.h
+++ b/src/settings.h
@@ -64,6 +64,7 @@ void                          gigolo_settings_set_geometry    
        (GigoloSettings *settings, const gint *geo
 
 GigoloBookmarkList*    gigolo_settings_get_bookmarks           (GigoloSettings 
*settings);
 gboolean                       gigolo_settings_has_file_manager        
(GigoloSettings *settings);
+gboolean                       gigolo_settings_has_terminal            
(GigoloSettings *settings);
 
 gboolean                       gigolo_settings_get_boolean                     
(GigoloSettings *settings, const gchar *property);
 gint                           gigolo_settings_get_integer                     
(GigoloSettings *settings, const gchar *property);
diff --git a/src/window.c b/src/window.c
index 89811ed..bede8f4 100644
--- a/src/window.c
+++ b/src/window.c
@@ -74,6 +74,7 @@ struct _GigoloWindowPrivate
        GtkAction               *action_bookmarks;
        GtkAction               *action_bookmark_create;
        GtkAction               *action_open;
+       GtkAction               *action_open_terminal;
        GtkAction               *action_copyuri;
 
        GtkActionGroup  *action_group;
@@ -522,15 +523,12 @@ static void action_copy_uri_cb(G_GNUC_UNUSED GtkAction 
*action, GigoloWindow *wi
 }
 
 
-static void action_open_cb(G_GNUC_UNUSED GtkAction *action, GigoloWindow 
*window)
+static gpointer get_selected_mount(GigoloWindow *window)
 {
        GigoloWindowPrivate *priv = GIGOLO_WINDOW_GET_PRIVATE(window);
        GtkTreeIter iter;
        GtkTreeModel *model = GTK_TREE_MODEL(priv->store);
 
-       if (! gigolo_settings_has_file_manager(priv->settings))
-               return;
-
        get_selected_iter(window, &iter);
        if (gtk_list_store_iter_is_valid(priv->store, &iter))
        {
@@ -538,38 +536,115 @@ static void action_open_cb(G_GNUC_UNUSED GtkAction 
*action, GigoloWindow *window
                gtk_tree_model_get(model, &iter, GIGOLO_WINDOW_COL_REF, &mnt, 
-1);
                if (gigolo_backend_gvfs_is_mount(mnt))
                {
-                       GError *error = NULL;
-                       gchar *uri;
-                       gchar *file_manager;
-                       gchar *cmd;
-                       GigoloBookmark *b;
+                       return mnt;
+               }
+       }
+       return NULL;
+}
 
-                       file_manager = 
gigolo_settings_get_string(priv->settings, "file-manager");
-                       gigolo_backend_gvfs_get_name_and_uri_from_mount(mnt, 
NULL, &uri);
-                       b = gigolo_settings_get_bookmark_by_uri(priv->settings, 
uri);
-                       if (b != NULL)
-                       {
-                               gchar *folder = 
gigolo_bookmark_get_folder_expanded(b);
-                               setptr(uri, g_build_filename(uri, folder, 
NULL));
-                               g_free(folder);
-                       }
-                       /* escape spaces and similar */
-                       setptr(uri, g_uri_unescape_string(uri, 
G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO));
 
-                       cmd = g_strconcat(file_manager, " \"", uri, "\"", NULL);
-                       if (! g_spawn_command_line_async(cmd, &error))
-                       {
-                               gchar *msg = g_strdup_printf(_("The command 
'%s' failed"), cmd);
-                               gigolo_message_dialog(window, 
GTK_MESSAGE_ERROR, _("Error"), msg, error->message);
-                               verbose("%s: %s", msg, error->message);
-                               g_error_free(error);
-                               g_free(msg);
-                       }
+static void action_open_cb(G_GNUC_UNUSED GtkAction *action, GigoloWindow 
*window)
+{
+       GigoloWindowPrivate *priv = GIGOLO_WINDOW_GET_PRIVATE(window);
+       gpointer mnt;
 
-                       g_free(cmd);
-                       g_free(file_manager);
-                       g_free(uri);
+       if (! gigolo_settings_has_file_manager(priv->settings))
+               return;
+
+       mnt = get_selected_mount(window);
+       if (mnt != NULL)
+       {
+               GError *error = NULL;
+               gchar *uri;
+               gchar *file_manager;
+               gchar *cmd;
+               GigoloBookmark *b;
+
+               file_manager = gigolo_settings_get_string(priv->settings, 
"file-manager");
+               gigolo_backend_gvfs_get_name_and_uri_from_mount(mnt, NULL, 
&uri);
+               b = gigolo_settings_get_bookmark_by_uri(priv->settings, uri);
+               if (b != NULL)
+               {
+                       gchar *folder = gigolo_bookmark_get_folder_expanded(b);
+                       setptr(uri, g_build_filename(uri, folder, NULL));
+                       g_free(folder);
                }
+               /* escape spaces and similar */
+               setptr(uri, g_uri_unescape_string(uri, 
G_URI_RESERVED_CHARS_ALLOWED_IN_USERINFO));
+
+               cmd = g_strconcat(file_manager, " \"", uri, "\"", NULL);
+               verbose("Executing open command \"%s\"", cmd);
+               if (! g_spawn_command_line_async(cmd, &error))
+               {
+                       gchar *msg = g_strdup_printf(_("The command '%s' 
failed"), cmd);
+                       gigolo_message_dialog(window, GTK_MESSAGE_ERROR, 
_("Error"), msg, error->message);
+                       verbose("%s: %s", msg, error->message);
+                       g_error_free(error);
+                       g_free(msg);
+               }
+
+               g_free(cmd);
+               g_free(file_manager);
+               g_free(uri);
+       }
+}
+
+
+static void action_open_terminal_cb(G_GNUC_UNUSED GtkAction *action, 
GigoloWindow *window)
+{
+       GigoloWindowPrivate *priv = GIGOLO_WINDOW_GET_PRIVATE(window);
+       gpointer mnt;
+
+       if (! gigolo_settings_has_terminal(priv->settings))
+               return;
+
+       mnt = get_selected_mount(window);
+       if (mnt != NULL)
+       {
+               GError *error = NULL;
+               gchar **argv;
+               gchar *path;
+               gchar *terminal;
+
+               terminal = gigolo_settings_get_string(priv->settings, 
"terminal");
+               if (! g_shell_parse_argv(terminal, NULL, &argv, &error))
+               {
+                       gigolo_message_dialog(window, GTK_MESSAGE_ERROR,
+                               _("Error"), _("Invalid terminal command"), 
error->message);
+                       verbose("Invalid erminal command: %s", error->message);
+                       g_error_free(error);
+                       return;
+               }
+
+               path = gigolo_backend_gvfs_get_mount_path(mnt);
+               if (path == NULL)
+               {
+                       gchar *mount_name;
+                       gchar *msg;
+                       gigolo_backend_gvfs_get_name_and_uri_from_mount(mnt, 
&mount_name, NULL);
+                       msg = g_strdup_printf(_("No default location available 
for \"%s\""), mount_name);
+                       gigolo_message_dialog(window, GTK_MESSAGE_ERROR, 
_("Error"), msg, NULL);
+                       verbose("Mount has no default path: %s", mount_name);
+                       g_free(msg);
+                       g_free(mount_name);
+                       g_free(terminal);
+                       g_strfreev(argv);
+                       return;
+               }
+
+               verbose("Executing terminal command \"%s\" in \"%s\"", 
terminal, path);
+               if (! g_spawn_async(path, argv, NULL, G_SPAWN_SEARCH_PATH, 
NULL, NULL, NULL, &error))
+               {
+                       gchar *msg = g_strdup_printf(_("The command '%s' 
failed"), terminal);
+                       gigolo_message_dialog(window, GTK_MESSAGE_ERROR, 
_("Error"), msg, error->message);
+                       verbose("%s: %s", msg, error->message);
+                       g_error_free(error);
+                       g_free(msg);
+               }
+
+               g_free(path);
+               g_free(terminal);
+               g_strfreev(argv);
        }
 }
 
@@ -588,7 +663,7 @@ static gboolean iter_is_bookmark(GigoloWindow *window, 
GtkTreeModel *model, GtkT
        gtk_tree_model_get(model, iter, GIGOLO_WINDOW_COL_REF_TYPE, &ref_type,
                                                                        
GIGOLO_WINDOW_COL_REF, &ref, -1);
 
-       if (ref_type == GIGOLO_WINDOW_REF_TYPE_MOUNT)
+       if (ref_type == GIGOLO_WINDOW_REF_TYPE_MOUNT && 
gigolo_backend_gvfs_is_mount(ref))
        {
                gchar *uri;
                gboolean found = FALSE;
@@ -606,6 +681,23 @@ static gboolean iter_is_bookmark(GigoloWindow *window, 
GtkTreeModel *model, GtkT
 }
 
 
+static gboolean iter_is_mount(GtkTreeModel *model, GtkTreeIter *iter)
+{
+       gint ref_type;
+       gpointer ref;
+
+       gtk_tree_model_get(model, iter, GIGOLO_WINDOW_COL_REF_TYPE, &ref_type,
+                                                                       
GIGOLO_WINDOW_COL_REF, &ref, -1);
+
+       if (ref_type == GIGOLO_WINDOW_REF_TYPE_MOUNT)
+       {
+               return gigolo_backend_gvfs_is_mount(ref);
+       }
+
+       return FALSE;
+}
+
+
 static void update_create_edit_bookmark_action_label(GtkAction *action, 
gboolean is_bookmark)
 {
        gtk_action_set_sensitive(action, TRUE);
@@ -620,17 +712,21 @@ static void update_sensitive_buttons(GigoloWindow 
*window, GtkTreeModel *model,
 {
        GigoloWindowPrivate *priv = GIGOLO_WINDOW_GET_PRIVATE(window);
        gint ref_type;
-       gboolean is_bookmark = FALSE;
+       gboolean is_bookmark,is_mount, open_possible, open_terminal_possible;
 
        if (iter != NULL && gtk_list_store_iter_is_valid(priv->store, iter))
        {
                gtk_tree_model_get(model, iter, GIGOLO_WINDOW_COL_REF_TYPE, 
&ref_type, -1);
                is_bookmark = iter_is_bookmark(window, model, iter);
+               is_mount = iter_is_mount(model, iter);
+               open_possible = is_mount && 
gigolo_settings_has_file_manager(priv->settings);
+               open_terminal_possible = is_mount && 
gigolo_settings_has_terminal(priv->settings);
 
                gtk_action_set_sensitive(priv->action_connect, (ref_type != 
GIGOLO_WINDOW_REF_TYPE_MOUNT));
                gtk_action_set_sensitive(priv->action_disconnect, (ref_type == 
GIGOLO_WINDOW_REF_TYPE_MOUNT));
                
update_create_edit_bookmark_action_label(priv->action_bookmark_create, 
is_bookmark);
-               gtk_action_set_sensitive(priv->action_open, 
gigolo_settings_has_file_manager(priv->settings));
+               gtk_action_set_sensitive(priv->action_open, open_possible);
+               gtk_action_set_sensitive(priv->action_open_terminal, 
open_terminal_possible);
                gtk_action_set_sensitive(priv->action_copyuri, (ref_type == 
GIGOLO_WINDOW_REF_TYPE_MOUNT));
        }
        else
@@ -639,6 +735,7 @@ static void update_sensitive_buttons(GigoloWindow *window, 
GtkTreeModel *model,
                gtk_action_set_sensitive(priv->action_disconnect, FALSE);
                gtk_action_set_sensitive(priv->action_bookmark_create, FALSE);
                gtk_action_set_sensitive(priv->action_open, FALSE);
+               gtk_action_set_sensitive(priv->action_open_terminal, FALSE);
                gtk_action_set_sensitive(priv->action_copyuri, FALSE);
        }
 }
@@ -1110,8 +1207,6 @@ static void 
gigolo_window_settings_notify_cb(GigoloSettings *settings, GParamSpe
 
 static void create_ui_elements(GigoloWindow *window, GtkUIManager *ui_manager)
 {
-       GError *error = NULL;
-       GigoloWindowPrivate *priv = GIGOLO_WINDOW_GET_PRIVATE(window);
        const gchar *ui_markup =
        "<ui>"
                "<menubar>"
@@ -1137,6 +1232,7 @@ static void create_ui_elements(GigoloWindow *window, 
GtkUIManager *ui_manager)
                                "<menuitem action='Bookmarks'/>"
                                "<separator/>"
                                "<menuitem action='Open'/>"
+                               "<menuitem action='OpenTerminal'/>"
                                "<menuitem action='CopyURI'/>"
                        "</menu>"
                        "<menu action='Help'>"
@@ -1159,6 +1255,7 @@ static void create_ui_elements(GigoloWindow *window, 
GtkUIManager *ui_manager)
 
                "<popup name='treemenu'>"
                        "<menuitem action='Open'/>"
+                       "<menuitem action='OpenTerminal'/>"
                        "<menuitem action='CopyURI'/>"
                        "<menuitem action='CreateBookmark'/>"
                        "<separator/>"
@@ -1173,6 +1270,7 @@ static void create_ui_elements(GigoloWindow *window, 
GtkUIManager *ui_manager)
                        "<toolitem action='EditBookmarks'/>"
                        "<separator/>"
                        "<toolitem action='Open'/>"
+                       "<toolitem action='OpenTerminal'/>"
                        "<separator/>"
                        "<toolitem action='Quit'/>"
                "</toolbar>"
@@ -1196,6 +1294,8 @@ static void create_ui_elements(GigoloWindow *window, 
GtkUIManager *ui_manager)
                        N_("Disconnect the selected resource"), 
G_CALLBACK(action_unmount_cb) },
                { "Open", GTK_STOCK_OPEN, NULL, "<Ctrl>o",
                        N_("Open the selected resource with a file manager"), 
G_CALLBACK(action_open_cb) },
+               { "OpenTerminal", NULL, _("Open in _Terminal"), "<Ctrl>t",
+                       N_("Start a terminal from here"), 
G_CALLBACK(action_open_terminal_cb) },
                { "CopyURI", GTK_STOCK_COPY, N_("Copy _URI"), "<Ctrl>c", NULL, 
G_CALLBACK(action_copy_uri_cb) },
                { "Quit", GTK_STOCK_QUIT, NULL, "<Ctrl>q", N_("Quit Gigolo"), 
G_CALLBACK(action_quit_cb) },
                { "OnlineHelp", GTK_STOCK_HELP, _("Online Help"), NULL, NULL, 
G_CALLBACK(action_help_cb) },
@@ -1219,7 +1319,10 @@ static void create_ui_elements(GigoloWindow *window, 
GtkUIManager *ui_manager)
                { "ViewSymbols", NULL, N_("View as _Detailed List"), NULL, 
NULL, 1 },
        };
        const guint radio_entries_n = G_N_ELEMENTS(radio_entries);
-
+       GError *error = NULL;
+       GigoloWindowPrivate *priv = GIGOLO_WINDOW_GET_PRIVATE(window);
+       GtkAction *open_terminal;
+       GtkIconTheme *icon_theme;
 
        priv->action_bookmarks = gigolo_menu_button_action_new(
                "Bookmarks", _("_Bookmarks"), _("Choose a bookmark to connect 
to"),
@@ -1238,6 +1341,14 @@ static void create_ui_elements(GigoloWindow *window, 
GtkUIManager *ui_manager)
        gtk_ui_manager_insert_action_group(ui_manager, priv->action_group, 0);
        gtk_window_add_accel_group(GTK_WINDOW(window), 
gtk_ui_manager_get_accel_group(ui_manager));
 
+       /* set terminal icon for the "OpenTerminal" action */
+       open_terminal = gtk_action_group_get_action(priv->action_group, 
"OpenTerminal");
+       icon_theme = 
gtk_icon_theme_get_for_screen(gtk_widget_get_screen(GTK_WIDGET(window)));
+       if (gtk_icon_theme_has_icon(icon_theme, "utilities-terminal"))
+               gtk_action_set_icon_name(open_terminal, "utilities-terminal");
+       else
+               gtk_action_set_stock_id(open_terminal, GTK_STOCK_OPEN);
+
        if (! gtk_ui_manager_add_ui_from_string(ui_manager, ui_markup, -1, 
&error))
        {
                verbose("User interface couldn't be created: %s", 
error->message);
@@ -1489,6 +1600,7 @@ static void gigolo_window_init(GigoloWindow *window)
        priv->action_disconnect = 
gtk_action_group_get_action(priv->action_group, "Disconnect");
        priv->action_bookmark_create = 
gtk_action_group_get_action(priv->action_group, "CreateBookmark");
        priv->action_open = gtk_action_group_get_action(priv->action_group, 
"Open");
+       priv->action_open_terminal = 
gtk_action_group_get_action(priv->action_group, "OpenTerminal");
        priv->action_copyuri = gtk_action_group_get_action(priv->action_group, 
"CopyURI");
 
        g_object_set(priv->action_bookmarks, "is-important", TRUE, NULL);
_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
https://mail.xfce.org/mailman/listinfo/xfce4-commits

Reply via email to