[Goodies-commits] r3982 - ristretto/trunk/src

Stephan Arts stephan at xfce.org
Sat Feb 23 12:15:06 CET 2008


Author: stephan
Date: 2008-02-23 11:15:06 +0000 (Sat, 23 Feb 2008)
New Revision: 3982

Modified:
   ristretto/trunk/src/main.c
   ristretto/trunk/src/main_window.c
   ristretto/trunk/src/navigator.c
   ristretto/trunk/src/navigator.h
   ristretto/trunk/src/picture_viewer.c
Log:
Remove code-duplication (Bug #3866)



Modified: ristretto/trunk/src/main.c
===================================================================
--- ristretto/trunk/src/main.c	2008-02-22 20:06:16 UTC (rev 3981)
+++ ristretto/trunk/src/main.c	2008-02-23 11:15:06 UTC (rev 3982)
@@ -271,67 +271,32 @@
     {
         for (n = 1; n < argc; ++n)
         {
-            ThunarVfsPath *path;
-            if (g_path_is_absolute(argv[n]))
-                path = thunar_vfs_path_new(argv[n], NULL);
+            if (g_path_is_absolute(argv[1]))
+            {
+                path_dir = g_strdup(argv[1]);
+            }
             else
             {
                 gchar *base_dir = g_get_current_dir();
 
-                path_dir = g_build_path("/", base_dir, argv[n], NULL);
-                path = thunar_vfs_path_new(path_dir, NULL);
+                path_dir = g_build_path("/", base_dir, argv[1], NULL);
 
                 g_free(base_dir);
             }
-
-            if (path)
+            if(g_file_test(path_dir, G_FILE_TEST_EXISTS))
             {
 
-                ThunarVfsInfo *info = thunar_vfs_info_new_for_path(path, NULL);
-                if(info)
+                if(g_file_test(path_dir, G_FILE_TEST_IS_DIR))
                 {
-                    if(strcmp(thunar_vfs_mime_info_get_name(info->mime_info), "inode/directory"))
-                    {
-                        gchar *file_media = thunar_vfs_mime_info_get_media(info->mime_info);
-                        if(!strcmp(file_media, "image"))
-                        {
-                            RsttoNavigatorEntry *entry = rstto_navigator_entry_new(navigator, info);
-                            rstto_navigator_add (navigator, entry, TRUE);
-                        }
-                    }
-                    else
-                    {
-                        GDir *dir = g_dir_open(argv[n], 0, NULL);
-                        const gchar *filename = g_dir_read_name(dir);
-                        rstto_navigator_set_monitor_handle_for_dir(navigator, info->path);
-
-                        while (filename)
-                        {
-                            gchar *path_name = g_strconcat(argv[n],  "/", filename, NULL);
-                            ThunarVfsPath *file_path = thunar_vfs_path_new(path_name, NULL);
-                            if (file_path)
-                            {
-                                ThunarVfsInfo *file_info = thunar_vfs_info_new_for_path(file_path, NULL);
-                                gchar *file_media = thunar_vfs_mime_info_get_media(file_info->mime_info);
-                                if(!strcmp(file_media, "image"))
-                                {
-                                    RsttoNavigatorEntry *entry = rstto_navigator_entry_new(navigator, file_info);
-                                    rstto_navigator_add (navigator, entry, FALSE);
-                                }
-                                g_free(file_media);
-                                thunar_vfs_path_unref(file_path);
-                            }
-                            g_free(path_name);
-                            filename = g_dir_read_name(dir);
-                        }
-                        g_dir_close(dir);
-                    }
-
-                    gchar *uri = thunar_vfs_path_dup_uri(info->path);
-                    gtk_recent_manager_add_item(recent_manager, uri);
-                    g_free(uri);
+                    rstto_navigator_open_folder (navigator, path_dir, TRUE, NULL);
                 }
+                else
+                {
+                    rstto_navigator_open_file (navigator, path_dir, TRUE, NULL);
+                }
             }
+
+            g_free(path_dir);
         }
         rstto_navigator_jump_first(navigator);
     }
@@ -339,10 +304,8 @@
     {
         if (argc == 2)
         {
-            ThunarVfsPath *path;
             if (g_path_is_absolute(argv[1]))
             {
-                path = thunar_vfs_path_new(argv[1], NULL);
                 path_dir = g_strdup(argv[1]);
             }
             else
@@ -350,104 +313,23 @@
                 gchar *base_dir = g_get_current_dir();
 
                 path_dir = g_build_path("/", base_dir, argv[1], NULL);
-                path = thunar_vfs_path_new(path_dir, NULL);
 
                 g_free(base_dir);
             }
-
-            if (path)
+            if(g_file_test(path_dir, G_FILE_TEST_EXISTS))
             {
 
-                ThunarVfsInfo *info = thunar_vfs_info_new_for_path(path, NULL);
-                if(info)
+                if(g_file_test(path_dir, G_FILE_TEST_IS_DIR))
                 {
-                    if(strcmp(thunar_vfs_mime_info_get_name(info->mime_info), "inode/directory"))
-                    {
-                        gchar* media = thunar_vfs_mime_info_get_media(info->mime_info);
-                        if(!strcmp(media, "image"))
-                        {
-                            ThunarVfsPath *_path = thunar_vfs_path_get_parent(path);
-                            thunar_vfs_path_unref(path);
-                            path = _path;
-
-                            gchar *path_string = thunar_vfs_path_dup_string(path);
-                            
-                            GDir *dir = g_dir_open(path_string, 0, NULL);
-                            const gchar *filename = g_dir_read_name(dir);
-                            while (filename)
-                            {
-                                gchar *path_name = g_strconcat(path_string,  "/", filename, NULL);
-                                ThunarVfsPath *file_path = thunar_vfs_path_new(path_name, NULL);
-                                if (file_path)
-                                {
-                                    ThunarVfsInfo *file_info = thunar_vfs_info_new_for_path(file_path, NULL);
-                                    gchar *file_media = thunar_vfs_mime_info_get_media(file_info->mime_info);
-                                    if(!strcmp(file_media, "image"))
-                                    {
-                                        RsttoNavigatorEntry *entry = rstto_navigator_entry_new(navigator, file_info);
-                                        gint i = rstto_navigator_add (navigator, entry, FALSE);
-                                        if (path_dir == NULL)
-                                        {
-                                            if (!strcmp(path_name, argv[1]))
-                                            {
-                                                rstto_navigator_set_file_nr(navigator, i);
-                                            }
-                                        }
-                                        else
-                                        {
-                                            if (!strcmp(path_name, path_dir))
-                                            {
-                                                rstto_navigator_set_file_nr(navigator, i);
-                                            }
-
-                                        }
-                                    }
-                                    g_free(file_media);
-                                    thunar_vfs_path_unref(file_path);
-                                }
-                                g_free(path_name);
-                                filename = g_dir_read_name(dir);
-                            }
-                            g_dir_close(dir);
-                            g_free(path_string);
-                        }
-                        g_free(media);
-                    }
-                    else
-                    {
-                        GDir *dir = g_dir_open(argv[1], 0, NULL);
-                        const gchar *filename = g_dir_read_name(dir);
-
-                        rstto_navigator_set_monitor_handle_for_dir(navigator, info->path);
-                        while (filename)
-                        {
-                            gchar *path_name = g_strconcat(path_dir,  "/", filename, NULL);
-                            ThunarVfsPath *file_path = thunar_vfs_path_new(path_name, NULL);
-                            if (file_path)
-                            {
-                                ThunarVfsInfo *file_info = thunar_vfs_info_new_for_path(file_path, NULL);
-                                gchar *file_media = thunar_vfs_mime_info_get_media(file_info->mime_info);
-                                if(!strcmp(file_media, "image"))
-                                {
-                                    RsttoNavigatorEntry *entry = rstto_navigator_entry_new(navigator, file_info);
-                                    rstto_navigator_add (navigator, entry, FALSE);
-                                }
-                                g_free(file_media);
-                                thunar_vfs_path_unref(file_path);
-                            }
-                            g_free(path_name);
-                            filename = g_dir_read_name(dir);
-                        }
-                        rstto_navigator_jump_first(navigator);
-                        g_dir_close(dir);
-                    }
-                    gchar *uri = thunar_vfs_path_dup_uri(info->path);
-                    gtk_recent_manager_add_item(recent_manager, uri);
-                    g_free(uri);
+                    rstto_navigator_open_folder (navigator, path_dir, TRUE, NULL);
                 }
-                thunar_vfs_path_unref(path);
+                else
+                {
+                    rstto_navigator_open_file (navigator, path_dir, TRUE, NULL);
+                }
             }
 
+            g_free(path_dir);
         }
     }
 

Modified: ristretto/trunk/src/main_window.c
===================================================================
--- ristretto/trunk/src/main_window.c	2008-02-22 20:06:16 UTC (rev 3981)
+++ ristretto/trunk/src/main_window.c	2008-02-23 11:15:06 UTC (rev 3982)
@@ -302,11 +302,11 @@
     gtk_window_set_title(GTK_WINDOW(window), PACKAGE_STRING);
     gtk_window_add_accel_group(GTK_WINDOW(window), accel_group);
 
-    window->priv->navigator = rstto_navigator_new();
+    window->priv->manager = gtk_recent_manager_get_default();
+    window->priv->navigator = rstto_navigator_new(window->priv->manager);
     window->priv->thumbnail_viewer = rstto_thumbnail_bar_new(window->priv->navigator);
     window->priv->picture_viewer = rstto_picture_viewer_new(window->priv->navigator);
 
-    window->priv->manager = gtk_recent_manager_get_default();
 
 /* Set up default settings */
     window->priv->settings.thumbnail_viewer_orientation = GTK_ORIENTATION_HORIZONTAL; 
@@ -1414,25 +1414,8 @@
     if(response == GTK_RESPONSE_OK)
     {
         const gchar *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
-
-        ThunarVfsPath *path = thunar_vfs_path_new(filename, NULL);
-        if (path)
+        if (!rstto_navigator_open_file(window->priv->navigator, filename, FALSE, NULL))
         {
-            ThunarVfsInfo *info = thunar_vfs_info_new_for_path(path, NULL);
-            gchar *file_media = thunar_vfs_mime_info_get_media(info->mime_info);
-            if(!strcmp(file_media, "image"))
-            {
-                RsttoNavigatorEntry *entry = rstto_navigator_entry_new(window->priv->navigator, info);
-                rstto_navigator_add (window->priv->navigator, entry, TRUE);
-                gchar *uri = thunar_vfs_path_dup_uri(info->path);
-                gtk_recent_manager_add_item(window->priv->manager, uri);
-                g_free(uri);
-            }
-            g_free(file_media);
-            thunar_vfs_path_unref(path);
-        }
-        else
-        {
             gtk_widget_destroy(dialog);
             dialog = gtk_message_dialog_new(GTK_WINDOW(window),
                                             GTK_DIALOG_MODAL,
@@ -1458,47 +1441,8 @@
     gint response = gtk_dialog_run(GTK_DIALOG(dialog));
     if(response == GTK_RESPONSE_OK)
     {
-        rstto_navigator_clear(window->priv->navigator);
         const gchar *dir_name = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
-        GDir *dir = g_dir_open(dir_name, 0, NULL);
-        if (dir)
-        {
-            ThunarVfsPath *dir_path = thunar_vfs_path_new(dir_name, NULL);
-            if (dir_path)
-            {
-                rstto_navigator_set_monitor_handle_for_dir(window->priv->navigator, dir_path);
-                thunar_vfs_path_unref(dir_path);
-                dir_path = NULL;
-            }
-
-            const gchar *filename = g_dir_read_name(dir);
-            while (filename)
-            {
-                gchar *path_name = g_strconcat(dir_name,  "/", filename, NULL);
-                ThunarVfsPath *path = thunar_vfs_path_new(path_name, NULL);
-                if (path)
-                {
-                    ThunarVfsInfo *info = thunar_vfs_info_new_for_path(path, NULL);
-                    gchar *file_media = thunar_vfs_mime_info_get_media(info->mime_info);
-                    if(!strcmp(file_media, "image"))
-                    {
-                        RsttoNavigatorEntry *entry = rstto_navigator_entry_new(window->priv->navigator, info);
-                        rstto_navigator_add (window->priv->navigator, entry, FALSE);
-                    }
-                    g_free(file_media);
-                    thunar_vfs_path_unref(path);
-                }
-                g_free(path_name);
-                filename = g_dir_read_name(dir);
-                while (gtk_events_pending())
-                    gtk_main_iteration ();
-            }
-            rstto_navigator_jump_first(window->priv->navigator);
-            gchar *uri = gtk_file_chooser_get_uri(GTK_FILE_CHOOSER(dialog));
-            gtk_recent_manager_add_item(window->priv->manager, uri);
-            g_free(uri);
-            g_dir_close(dir);
-        }
+        rstto_navigator_open_folder(window->priv->navigator, dir_name, TRUE, NULL);
     }
     gtk_widget_destroy(dialog);
 }
@@ -1507,54 +1451,22 @@
 cb_rstto_main_window_open_recent(GtkRecentChooser *chooser, RsttoMainWindow *window)
 {
     gchar *uri = gtk_recent_chooser_get_current_uri(chooser);
-    ThunarVfsPath *path = thunar_vfs_path_new(uri, NULL);
-    if (path)
+    ThunarVfsPath *vfs_path = thunar_vfs_path_new(uri, NULL);
+    if (vfs_path)
     {
-        ThunarVfsInfo *info = thunar_vfs_info_new_for_path(path, NULL);
-        if(info)
+        gchar *path = thunar_vfs_path_dup_string(vfs_path);
+        if(g_file_test(path, G_FILE_TEST_EXISTS))
         {
-            if(strcmp(thunar_vfs_mime_info_get_name(info->mime_info), "inode/directory"))
+            if(g_file_test(path, G_FILE_TEST_IS_DIR))
             {
-                RsttoNavigatorEntry *entry = rstto_navigator_entry_new(window->priv->navigator, info);
-                rstto_navigator_add (window->priv->navigator, entry, TRUE);
+                rstto_navigator_open_folder(window->priv->navigator, path, TRUE, NULL);
             }
             else
             {
-                rstto_navigator_clear(window->priv->navigator);
-                gchar *dir_path = thunar_vfs_path_dup_string(info->path);
-                GDir *dir = g_dir_open(dir_path, 0, NULL);
-                rstto_navigator_set_monitor_handle_for_dir(window->priv->navigator, info->path);
-
-                const gchar *filename = g_dir_read_name(dir);
-                while (filename)
-                {
-                    gchar *path_name = g_strconcat(dir_path,  "/", filename, NULL);
-                    ThunarVfsPath *file_path = thunar_vfs_path_new(path_name, NULL);
-                    if (file_path)
-                    {
-                        ThunarVfsInfo *file_info = thunar_vfs_info_new_for_path(file_path, NULL);
-                        gchar *file_media = thunar_vfs_mime_info_get_media(file_info->mime_info);
-                        if(!strcmp(file_media, "image"))
-                        {
-                            RsttoNavigatorEntry *entry = rstto_navigator_entry_new(window->priv->navigator, file_info);
-                            rstto_navigator_add (window->priv->navigator, entry, FALSE);
-                        }
-                        g_free(file_media);
-                        thunar_vfs_path_unref(file_path);
-                    }
-                    g_free(path_name);
-                    filename = g_dir_read_name(dir);
-                    while (gtk_events_pending())
-                        gtk_main_iteration ();
-                }
-                rstto_navigator_jump_first(window->priv->navigator);
-                g_free(dir_path);
+                rstto_navigator_open_file(window->priv->navigator, path, FALSE, NULL);
             }
-            gchar *uri = thunar_vfs_path_dup_uri(info->path);
-            gtk_recent_manager_add_item(window->priv->manager, uri);
-            g_free(uri);
         }
-        thunar_vfs_path_unref(path);
+        thunar_vfs_path_unref(vfs_path);
     }
 
 }

Modified: ristretto/trunk/src/navigator.c
===================================================================
--- ristretto/trunk/src/navigator.c	2008-02-22 20:06:16 UTC (rev 3981)
+++ ristretto/trunk/src/navigator.c	2008-02-23 11:15:06 UTC (rev 3982)
@@ -229,11 +229,12 @@
 }
 
 RsttoNavigator *
-rstto_navigator_new()
+rstto_navigator_new(GtkRecentManager *manager)
 {
     RsttoNavigator *navigator;
 
     navigator = g_object_new(RSTTO_TYPE_NAVIGATOR, NULL);
+    navigator->manager = manager;
 
     return navigator;
 }
@@ -1367,3 +1368,159 @@
     else
         return FALSE;
 }
+
+gboolean
+rstto_navigator_open_file(RsttoNavigator *navigator, const gchar *path, gboolean open_folder, GError **error)
+{
+    ThunarVfsInfo *vfs_info = NULL;
+    ThunarVfsPath *vfs_path = thunar_vfs_path_new(path, error);
+    gchar *file_media = NULL;
+    gchar *file_uri = NULL;
+
+
+    if (vfs_path == NULL)
+    {
+        return FALSE;
+    }
+
+    vfs_info = thunar_vfs_info_new_for_path(vfs_path, error);
+    if (vfs_info == NULL)
+    {
+        thunar_vfs_path_unref(vfs_path);
+        return FALSE;
+    }
+
+    if(!strcmp(thunar_vfs_mime_info_get_name(vfs_info->mime_info), 
+                "inode/directory"))
+    {
+        g_set_error(error,
+                    g_quark_from_static_string(
+                            "Path refers to folder"),
+                    G_FILE_ERROR_ISDIR,
+                    "Path refers to directory\n"
+                    "Use rstto_navigator_open_folder instead.");
+        return FALSE;
+    }
+
+    file_media = thunar_vfs_mime_info_get_media(vfs_info->mime_info);
+    if(!strcmp(file_media, "image"))
+    {
+        if (open_folder == TRUE)
+        {
+            ThunarVfsPath *parent_vfs_path = thunar_vfs_path_get_parent(vfs_path);
+            gchar *parent_path = thunar_vfs_path_dup_string(parent_vfs_path);
+
+            if(rstto_navigator_open_folder(navigator, parent_path, FALSE, error) == FALSE)
+            {
+                g_free(parent_path);
+                thunar_vfs_path_unref(parent_vfs_path);
+                return FALSE;
+            }
+
+            g_free(parent_path);
+            thunar_vfs_path_unref(parent_vfs_path);
+
+            GList *iter = g_list_find_custom(navigator->file_list, vfs_path, (GCompareFunc)cb_rstto_navigator_entry_path_compare_func);
+            if (iter != NULL)
+            {
+                rstto_navigator_entry_select((RsttoNavigatorEntry*)iter->data);
+            }
+        }
+        else
+        {
+            RsttoNavigatorEntry *entry = rstto_navigator_entry_new(navigator, vfs_info);
+            rstto_navigator_add (navigator, entry, TRUE);
+        }
+    }
+
+    file_uri = thunar_vfs_path_dup_uri(vfs_path);
+    gtk_recent_manager_add_item(navigator->manager, file_uri);
+    g_free(file_uri);
+
+    g_free(file_media);
+}
+
+gboolean
+rstto_navigator_open_folder(RsttoNavigator *navigator, const gchar *path, gboolean clear, GError **error)
+{
+    ThunarVfsInfo *vfs_info = NULL;
+    ThunarVfsPath *vfs_path = thunar_vfs_path_new(path, error);
+    GDir *dir = NULL;
+    gchar *dir_path = NULL;
+    gchar *dir_uri = NULL;
+
+
+    if (vfs_path == NULL)
+    {
+        return FALSE;
+    }
+
+    vfs_info = thunar_vfs_info_new_for_path(vfs_path, error);
+    if (vfs_info == NULL)
+    {
+        thunar_vfs_path_unref(vfs_path);
+        return FALSE;
+    }
+    
+    if(strcmp(thunar_vfs_mime_info_get_name(vfs_info->mime_info),
+                "inode/directory"))
+    {
+        g_set_error(error,
+                    g_quark_from_static_string(
+                            "Path does not refer to folder"),
+                    G_FILE_ERROR_ISDIR,
+                    "Path does not refer to directory\n"
+                    "Use rstto_navigator_open_file instead.");
+        return FALSE;
+    }
+
+    dir_path = thunar_vfs_path_dup_string(vfs_path);
+    dir = g_dir_open(dir_path, 0, NULL);
+
+    dir_uri = thunar_vfs_path_dup_uri(vfs_path);
+
+    gtk_recent_manager_add_item(navigator->manager, dir_uri);
+
+
+    {
+        if (clear == TRUE)
+        {
+            rstto_navigator_clear(navigator);
+        }
+        const gchar *filename = g_dir_read_name(dir);
+        ThunarVfsPath *file_vfs_path = NULL;
+        ThunarVfsInfo *file_vfs_info = NULL;
+        gchar *file_media;
+        gchar *path_name;
+
+        while (filename)
+        {
+            path_name = g_strconcat(dir_path,  "/", filename, NULL);
+            file_vfs_path = thunar_vfs_path_new(path_name, NULL);
+
+            if (file_vfs_path)
+            {
+                file_vfs_info = thunar_vfs_info_new_for_path(file_vfs_path, NULL);
+                file_media = thunar_vfs_mime_info_get_media(file_vfs_info->mime_info);
+
+                if(!strcmp(file_media, "image"))
+                {
+                    RsttoNavigatorEntry *entry = rstto_navigator_entry_new(navigator, file_vfs_info);
+                    rstto_navigator_add (navigator, entry, FALSE);
+                }
+
+                g_free(file_media);
+                thunar_vfs_path_unref(file_vfs_path);
+                while (gtk_events_pending())
+                {
+                    gtk_main_iteration();
+                }
+            }
+            g_free(path_name);
+            filename = g_dir_read_name(dir);
+        }
+        rstto_navigator_jump_first(navigator);
+    }
+
+    g_free(dir_uri);
+}

Modified: ristretto/trunk/src/navigator.h
===================================================================
--- ristretto/trunk/src/navigator.h	2008-02-22 20:06:16 UTC (rev 3981)
+++ ristretto/trunk/src/navigator.h	2008-02-23 11:15:06 UTC (rev 3982)
@@ -46,6 +46,7 @@
 struct _RsttoNavigator
 {
     GObject                parent;
+    GtkRecentManager      *manager;
     ThunarVfsMonitor      *monitor;
     ThunarVfsMonitorHandle *monitor_handle;
 
@@ -75,7 +76,7 @@
 GType      rstto_navigator_get_type ();
 
 RsttoNavigator *
-rstto_navigator_new ();
+rstto_navigator_new (GtkRecentManager *recent_manager);
 
 void       rstto_navigator_jump_first (RsttoNavigator *navigator);
 void       rstto_navigator_jump_forward (RsttoNavigator *navigator);
@@ -160,6 +161,11 @@
 gboolean
 rstto_navigator_entry_is_selected(RsttoNavigatorEntry *entry);
 
+gboolean
+rstto_navigator_open_file(RsttoNavigator *navigator, const gchar *path, gboolean open_folder, GError **error);
+gboolean
+rstto_navigator_open_folder(RsttoNavigator *navigator, const gchar *path, gboolean clear, GError **error);
+
 G_END_DECLS
 
 #endif /* __RISTRETTO_NAVIGATOR_H__ */

Modified: ristretto/trunk/src/picture_viewer.c
===================================================================
--- ristretto/trunk/src/picture_viewer.c	2008-02-22 20:06:16 UTC (rev 3981)
+++ ristretto/trunk/src/picture_viewer.c	2008-02-23 11:15:06 UTC (rev 3982)
@@ -1221,7 +1221,7 @@
                                         guint info,
                                         guint time)
 {
-    RsttoPictureViewer *picture_viewer = widget;
+    RsttoPictureViewer *picture_viewer = RSTTO_PICTURE_VIEWER(widget);
     gchar **array = gtk_selection_data_get_uris (selection_data);
 
     context->action = GDK_ACTION_PRIVATE;
@@ -1235,22 +1235,17 @@
 
     while(*_array)
     {
-        ThunarVfsPath *path = thunar_vfs_path_new(*_array, NULL);
-        ThunarVfsInfo *info = thunar_vfs_info_new_for_path(path, NULL);
-        gchar *file_media = thunar_vfs_mime_info_get_media(info->mime_info);
-        if(!strcmp(file_media, "image"))
+        if (g_file_test(*_array, G_FILE_TEST_EXISTS))
         {
-            RsttoNavigatorEntry *entry = rstto_navigator_entry_new(picture_viewer->priv->navigator, info);
-            rstto_navigator_add (picture_viewer->priv->navigator, entry, TRUE);
-            gchar *uri = thunar_vfs_path_dup_uri(info->path);
-            g_free(uri);
+            if (g_file_test(*_array, G_FILE_TEST_IS_DIR))
+            {
+                rstto_navigator_open_folder(picture_viewer->priv->navigator, *_array, FALSE, NULL);
+            }
+            else
+            {
+                rstto_navigator_open_file(picture_viewer->priv->navigator, *_array, FALSE, NULL);
+            }
         }
-        else
-        {
-            
-        }
-        g_free(file_media);
-        thunar_vfs_path_unref(path);
         _array++;
     }
     




More information about the Goodies-commits mailing list