summaryrefslogtreecommitdiff
path: root/src/eom-window.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/eom-window.c')
-rw-r--r--src/eom-window.c40
1 files changed, 6 insertions, 34 deletions
diff --git a/src/eom-window.c b/src/eom-window.c
index 4bff663..1fb2e60 100644
--- a/src/eom-window.c
+++ b/src/eom-window.c
@@ -2956,49 +2956,21 @@ eom_window_cmd_save_as (GtkAction *action, gpointer user_data)
static void
eom_window_cmd_open_containing_folder (GtkAction *action, gpointer user_data)
{
- EomWindow *window = EOM_WINDOW (user_data);
EomWindowPrivate *priv;
- GtkWidget *eom_window_widget;
-
GFile *file;
- GFile *parent = NULL;
-
- eom_window_widget = GTK_WIDGET (window);
- priv = window->priv;
+ g_return_if_fail (EOM_IS_WINDOW (user_data));
+
+ priv = EOM_WINDOW (user_data)->priv;
g_return_if_fail (priv->image != NULL);
file = eom_image_get_file (priv->image);
- if (file) {
- parent = g_file_get_parent (file);
- g_object_unref(file);
- }
-
- if (parent) {
- char *parent_uri;
+ g_return_if_fail (file != NULL);
- parent_uri = g_file_get_uri (parent);
- if (parent_uri) {
- GdkScreen *screen;
- guint32 timestamp;
- GError *error;
-
- screen = gtk_widget_get_screen (eom_window_widget);
- timestamp = gtk_get_current_event_time ();
-
- error = NULL;
- if (!gtk_show_uri (screen, parent_uri, timestamp, &error)) {
- eom_debug_message (DEBUG_WINDOW, "Could not open the containing folder");
- g_error_free (error);
- }
-
- g_free (parent_uri);
- }
-
- g_object_unref(parent);
- }
+ eom_util_show_file_in_filemanager (file,
+ gtk_widget_get_screen (GTK_WIDGET (user_data)));
}
static void