Index: xfburn/xfburn-directory-browser.c =================================================================== --- xfburn/xfburn-directory-browser.c (revision 7271) +++ xfburn/xfburn-directory-browser.c (working copy) @@ -266,7 +266,7 @@ continue; } - if (dir_entry[0] != '.' && (stat (full_path, &s) == 0)) { + if (xfburn_hidden_files(dir_entry[0]) && (stat (full_path, &s) == 0)) { gchar *humansize; humansize = xfburn_humanreadable_filesize (s.st_size); Index: xfburn/xfburn-fs-browser.c =================================================================== --- xfburn/xfburn-fs-browser.c (revision 7271) +++ xfburn/xfburn-fs-browser.c (working copy) @@ -152,8 +152,9 @@ gchar *full_path; full_path = g_build_filename (path, dir_entry, NULL); - if (dir_entry[0] != '.' && g_file_test (full_path, G_FILE_TEST_IS_DIR) && + if (xfburn_hidden_files(dir_entry[0]) && g_file_test (full_path,G_FILE_TEST_IS_DIR) && !g_file_test (full_path, G_FILE_TEST_IS_SYMLINK)) { + GtkTreeIter iter; GtkTreeIter iter_empty; Index: xfburn/xfburn-utils.c =================================================================== --- xfburn/xfburn-utils.c (revision 7271) +++ xfburn/xfburn-utils.c (working copy) @@ -61,6 +61,15 @@ /*******************/ /* for filebrowser */ /*******************/ +gboolean +xfburn_hidden_files(const gchar *temp) +{ + if(temp != '.') + return TRUE; + else + return xfburn_settings_get_boolean("show-hidden-files",TRUE); +} + gchar * xfburn_humanreadable_filesize (guint64 size) { Index: xfburn/xfburn-utils.h =================================================================== --- xfburn/xfburn-utils.h (revision 7271) +++ xfburn/xfburn-utils.h (working copy) @@ -32,6 +32,7 @@ void xfburn_default_cursor (GtkWidget *); gchar *xfburn_humanreadable_filesize (guint64); +gboolean xfburn_hidden_files(const gchar *); guint64 xfburn_calc_dirsize (const gchar *); void xfburn_browse_for_file (GtkEntry *entry, GtkWindow *parent);