[gthumb/ext: 54/79] Implemented the "open in file manager" command
- From: Paolo Bacchilega <paobac src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gthumb/ext: 54/79] Implemented the "open in file manager" command
- Date: Sun, 2 Aug 2009 20:30:38 +0000 (UTC)
commit cb4b90c40bdc8e97e3555f0bdfbf1df3b7319dce
Author: Paolo Bacchilega <paobac src gnome org>
Date: Sat Jul 18 16:38:35 2009 +0200
Implemented the "open in file manager" command
extensions/file_manager/actions.c | 26 ++++++++++++++++++++++++++
extensions/file_manager/actions.h | 1 +
extensions/file_manager/callbacks.c | 7 +++++++
gthumb/gth-browser-actions-callbacks.c | 22 ----------------------
gthumb/gth-browser-actions-entries.h | 5 -----
gthumb/gth-browser-ui.h | 2 +-
6 files changed, 35 insertions(+), 28 deletions(-)
---
diff --git a/extensions/file_manager/actions.c b/extensions/file_manager/actions.c
index cad0793..2cfd948 100644
--- a/extensions/file_manager/actions.c
+++ b/extensions/file_manager/actions.c
@@ -496,6 +496,32 @@ gth_browser_activate_action_edit_delete (GtkAction *action,
void
+gth_browser_activate_action_folder_open_in_file_manager (GtkAction *action,
+ GthBrowser *browser)
+{
+ GthFileData *file_data;
+ char *uri;
+ GError *error = NULL;
+
+ file_data = gth_folder_tree_get_selected (GTH_FOLDER_TREE (gth_browser_get_folder_tree (browser)));
+ if (file_data == NULL)
+ return;
+
+ uri = g_file_get_uri (file_data->file);
+ if (! gtk_show_uri (gtk_window_get_screen (GTK_WINDOW (browser)),
+ uri,
+ gtk_get_current_event_time (),
+ &error))
+ {
+ _gtk_error_dialog_from_gerror_run (GTK_WINDOW (browser), _("Could not open location"), &error);
+ }
+
+ g_free (uri);
+ g_object_unref (file_data);
+}
+
+
+void
gth_browser_activate_action_folder_create (GtkAction *action,
GthBrowser *browser)
{
diff --git a/extensions/file_manager/actions.h b/extensions/file_manager/actions.h
index ec2befa..efff79e 100644
--- a/extensions/file_manager/actions.h
+++ b/extensions/file_manager/actions.h
@@ -36,6 +36,7 @@ DEFINE_ACTION(gth_browser_activate_action_edit_duplicate)
DEFINE_ACTION(gth_browser_activate_action_edit_rename)
DEFINE_ACTION(gth_browser_activate_action_edit_trash)
DEFINE_ACTION(gth_browser_activate_action_edit_delete)
+DEFINE_ACTION(gth_browser_activate_action_folder_open_in_file_manager)
DEFINE_ACTION(gth_browser_activate_action_folder_create)
DEFINE_ACTION(gth_browser_activate_action_folder_rename)
DEFINE_ACTION(gth_browser_activate_action_folder_cut)
diff --git a/extensions/file_manager/callbacks.c b/extensions/file_manager/callbacks.c
index 8a6de8e..5e7a0bb 100644
--- a/extensions/file_manager/callbacks.c
+++ b/extensions/file_manager/callbacks.c
@@ -100,6 +100,9 @@ static const char *browser_vfs_ui_info =
static const char *folder_popup_ui_info =
"<ui>"
" <popup name='FolderListPopup'>"
+" <placeholder name='OpenCommands'>"
+" <menuitem action='Folder_OpenInFileManager'/>"
+" </placeholder>"
" <placeholder name='SourceCommands'>"
" <menuitem action='Folder_Create'/>"
" <separator />"
@@ -149,6 +152,10 @@ static GtkActionEntry action_entries[] = {
N_("_Delete"), "<shift>Delete",
N_("Delete the selected files"),
G_CALLBACK (gth_browser_activate_action_edit_delete) },
+ { "Folder_OpenInFileManager", NULL,
+ N_("Open with the _File Manager"), "",
+ NULL,
+ G_CALLBACK (gth_browser_activate_action_folder_open_in_file_manager) },
{ "Folder_Create", NULL,
N_("Create _Folder"), NULL,
N_("Create a new empty folder inside this folder"),
diff --git a/gthumb/gth-browser-actions-callbacks.c b/gthumb/gth-browser-actions-callbacks.c
index dfbe6f6..bdf52c3 100644
--- a/gthumb/gth-browser-actions-callbacks.c
+++ b/gthumb/gth-browser-actions-callbacks.c
@@ -327,28 +327,6 @@ gth_browser_activate_action_folder_open_in_new_window (GtkAction *action,
void
-gth_browser_activate_action_folder_open_in_file_manager (GtkAction *action,
- GthBrowser *browser)
-{
- GFile *location;
- char *uri;
- GError *error = NULL;
-
- location = gth_browser_get_location (browser);
- uri = g_file_get_uri (location);
- if (! gtk_show_uri (gtk_window_get_screen (GTK_WINDOW (browser)),
- uri,
- gtk_get_current_event_time (),
- &error))
- {
- _gtk_error_dialog_from_gerror_run (GTK_WINDOW (browser), _("Could not open location"), &error);
- }
-
- g_free (uri);
-}
-
-
-void
gth_browser_activate_action_browser_mode (GtkAction *action,
GthBrowser *browser)
{
diff --git a/gthumb/gth-browser-actions-entries.h b/gthumb/gth-browser-actions-entries.h
index 4238176..eabd204 100644
--- a/gthumb/gth-browser-actions-entries.h
+++ b/gthumb/gth-browser-actions-entries.h
@@ -71,11 +71,6 @@ static GtkActionEntry gth_browser_action_entries[] = {
NULL,
G_CALLBACK (gth_browser_activate_action_folder_open_in_new_window) },
- { "Folder_OpenInFileManager", NULL,
- N_("Open with the _File Manager"), "",
- NULL,
- G_CALLBACK (gth_browser_activate_action_folder_open_in_file_manager) },
-
{ "Edit_Preferences", GTK_STOCK_PREFERENCES,
NULL, NULL,
N_("Edit various preferences"),
diff --git a/gthumb/gth-browser-ui.h b/gthumb/gth-browser-ui.h
index 3dcea91..a5b14ce 100644
--- a/gthumb/gth-browser-ui.h
+++ b/gthumb/gth-browser-ui.h
@@ -180,7 +180,7 @@ static const char *fixed_ui_info =
" <popup name='FolderListPopup'>"
" <menuitem action='Folder_Open'/>"
" <menuitem action='Folder_OpenInNewWindow'/>"
-" <menuitem action='Folder_OpenInFileManager'/>"
+" <placeholder name='OpenCommands'/>"
" <separator/>"
" <placeholder name='SourceCommands'/>"
" </popup>"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]