[nautilus] Remove .hidden file code now that gio does if for us
- From: Alexander Larsson <alexl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nautilus] Remove .hidden file code now that gio does if for us
- Date: Fri, 7 Dec 2012 10:14:59 +0000 (UTC)
commit ace6d2c2170028148785f3fa87eedf883f20f1dd
Author: Alexander Larsson <alexl redhat com>
Date: Fri Dec 7 11:13:02 2012 +0100
Remove .hidden file code now that gio does if for us
Gio now parses .hidden files itself and sets the hidden flags in
the GFileInfo, so no need to do it again.
We already rely on the glib version that has this support added.
libnautilus-private/nautilus-directory-async.c | 107 +---------------------
libnautilus-private/nautilus-directory-private.h | 5 -
libnautilus-private/nautilus-directory.c | 4 -
libnautilus-private/nautilus-file.c | 11 +--
4 files changed, 2 insertions(+), 125 deletions(-)
---
diff --git a/libnautilus-private/nautilus-directory-async.c b/libnautilus-private/nautilus-directory-async.c
index e067266..506f320 100644
--- a/libnautilus-private/nautilus-directory-async.c
+++ b/libnautilus-private/nautilus-directory-async.c
@@ -178,9 +178,6 @@ static GHashTable *waiting_directories;
static GHashTable *async_jobs;
#endif
-/* Hide kde trashcan directory */
-static char *kde_trash_dir_name = NULL;
-
/* Forward declarations for functions that need them. */
static void deep_count_load (DeepCountState *state,
GFile *location);
@@ -204,13 +201,6 @@ static void move_file_to_extension_queue (NautilusDirectory
static void nautilus_directory_invalidate_file_attributes (NautilusDirectory *directory,
NautilusFileAttributes file_attributes);
-void
-nautilus_set_kde_trash_name (const char *trash_dir)
-{
- g_free (kde_trash_dir_name);
- kde_trash_dir_name = g_strdup (trash_dir);
-}
-
/* Some helpers for case-insensitive strings.
* Move to nautilus-glib-extensions?
*/
@@ -860,10 +850,7 @@ should_skip_file (NautilusDirectory *directory, GFileInfo *info)
if (!show_hidden_files &&
(g_file_info_get_is_hidden (info) ||
- g_file_info_get_is_backup (info) ||
- (directory != NULL && directory->details->hidden_file_hash != NULL &&
- g_hash_table_lookup (directory->details->hidden_file_hash,
- g_file_info_get_name (info)) != NULL))) {
+ g_file_info_get_is_backup (info))) {
return TRUE;
}
@@ -1089,10 +1076,6 @@ file_list_cancel (NautilusDirectory *directory)
g_list_free_full (directory->details->pending_file_info, g_object_unref);
directory->details->pending_file_info = NULL;
}
-
- if (directory->details->hidden_file_hash) {
- g_hash_table_remove_all (directory->details->hidden_file_hash);
- }
}
static void
@@ -1984,78 +1967,6 @@ mark_all_files_unconfirmed (NautilusDirectory *directory)
}
static void
-read_dot_hidden_file (NautilusDirectory *directory)
-{
- gsize file_size;
- char *file_contents;
- GFile *child;
- GFileInfo *info;
- GFileType type;
- int i;
-
-
- /* FIXME: We only support .hidden on file: uri's for the moment.
- * Need to figure out if we should do this async or sync to extend
- * it to all types of uris.
- */
- if (directory->details->location == NULL ||
- !g_file_is_native (directory->details->location)) {
- return;
- }
-
- child = g_file_get_child (directory->details->location, ".hidden");
-
- type = G_FILE_TYPE_UNKNOWN;
-
- info = g_file_query_info (child, G_FILE_ATTRIBUTE_STANDARD_TYPE, 0, NULL, NULL);
- if (info != NULL) {
- type = g_file_info_get_file_type (info);
- g_object_unref (info);
- }
-
- if (type != G_FILE_TYPE_REGULAR) {
- g_object_unref (child);
- return;
- }
-
- if (!g_file_load_contents (child, NULL, &file_contents, &file_size, NULL, NULL)) {
- g_object_unref (child);
- return;
- }
-
- g_object_unref (child);
-
- if (directory->details->hidden_file_hash == NULL) {
- directory->details->hidden_file_hash =
- g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
- }
-
- /* Now parse the data */
- i = 0;
- while (i < file_size) {
- int start;
-
- start = i;
- while (i < file_size && file_contents[i] != '\n') {
- i++;
- }
-
- if (i > start) {
- char *hidden_filename;
-
- hidden_filename = g_strndup (file_contents + start, i - start);
- g_hash_table_replace (directory->details->hidden_file_hash,
- hidden_filename, hidden_filename);
- }
-
- i++;
-
- }
-
- g_free (file_contents);
-}
-
-static void
directory_load_state_free (DirectoryLoadState *state)
{
if (state->enumerator) {
@@ -2201,23 +2112,7 @@ start_monitoring_file_list (NautilusDirectory *directory)
nautilus_directory_get_corresponding_file (directory);
state->load_directory_file->details->loading_directory = TRUE;
- read_dot_hidden_file (directory);
-
- /* Hack to work around kde trash dir */
- if (kde_trash_dir_name != NULL && nautilus_directory_is_desktop_directory (directory)) {
- char *fn;
-
- if (directory->details->hidden_file_hash == NULL) {
- directory->details->hidden_file_hash =
- g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
- }
-
- fn = g_strdup (kde_trash_dir_name);
- g_hash_table_replace (directory->details->hidden_file_hash,
- fn, fn);
- }
-
#ifdef DEBUG_LOAD_DIRECTORY
g_message ("load_directory called to monitor file list of %p", directory->details->location);
#endif
diff --git a/libnautilus-private/nautilus-directory-private.h b/libnautilus-private/nautilus-directory-private.h
index f21bc67..1d34200 100644
--- a/libnautilus-private/nautilus-directory-private.h
+++ b/libnautilus-private/nautilus-directory-private.h
@@ -134,8 +134,6 @@ struct NautilusDirectoryDetails
LinkInfoReadState *link_info_read_state;
GList *file_operations_in_progress; /* list of FileOperation * */
-
- GHashTable *hidden_file_hash;
};
NautilusDirectory *nautilus_directory_get_existing (GFile *location);
@@ -235,9 +233,6 @@ void nautilus_directory_add_file_to_work_queue (NautilusD
void nautilus_directory_remove_file_from_work_queue (NautilusDirectory *directory,
NautilusFile *file);
-/* KDE compatibility hacks */
-
-void nautilus_set_kde_trash_name (const char *trash_dir);
/* debugging functions */
int nautilus_directory_number_outstanding (void);
diff --git a/libnautilus-private/nautilus-directory.c b/libnautilus-private/nautilus-directory.c
index 1e8df6d..993cee3 100644
--- a/libnautilus-private/nautilus-directory.c
+++ b/libnautilus-private/nautilus-directory.c
@@ -234,10 +234,6 @@ nautilus_directory_finalize (GObject *object)
g_assert (directory->details->file_list == NULL);
g_hash_table_destroy (directory->details->file_hash);
- if (directory->details->hidden_file_hash) {
- g_hash_table_destroy (directory->details->hidden_file_hash);
- }
-
nautilus_file_queue_destroy (directory->details->high_priority_queue);
nautilus_file_queue_destroy (directory->details->low_priority_queue);
nautilus_file_queue_destroy (directory->details->extension_queue);
diff --git a/libnautilus-private/nautilus-file.c b/libnautilus-private/nautilus-file.c
index 605d947..af42102 100644
--- a/libnautilus-private/nautilus-file.c
+++ b/libnautilus-private/nautilus-file.c
@@ -3329,15 +3329,6 @@ nautilus_file_is_hidden_file (NautilusFile *file)
return file->details->is_hidden;
}
-static gboolean
-is_file_hidden (NautilusFile *file)
-{
- return file->details->directory->details->hidden_file_hash != NULL &&
- g_hash_table_lookup (file->details->directory->details->hidden_file_hash,
- eel_ref_str_peek (file->details->name)) != NULL;
-
-}
-
/**
* nautilus_file_should_show:
* @file: the file to check.
@@ -3357,7 +3348,7 @@ nautilus_file_should_show (NautilusFile *file,
if (nautilus_file_is_in_trash (file)) {
return TRUE;
} else {
- return (show_hidden || (!nautilus_file_is_hidden_file (file) && !is_file_hidden (file))) &&
+ return (show_hidden || !nautilus_file_is_hidden_file (file)) &&
(show_foreign || !(nautilus_file_is_in_desktop (file) && nautilus_file_is_foreign_link (file)));
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]