diff options
author | Cosimo Cecchi <cosimoc@gnome.org> | 2012-10-13 17:20:00 -0400 |
---|---|---|
committer | Cosimo Cecchi <cosimoc@gnome.org> | 2012-10-15 10:02:48 -0400 |
commit | 804abd93c16af30b6446996937388abddb9bd284 (patch) | |
tree | 5a6be72d5ab7139320ee90c4ba42c6281bd69594 | |
parent | d5cabf7d5c95f99d2abfa4dbe5b313a360092d8a (diff) | |
download | nautilus-804abd93c16af30b6446996937388abddb9bd284.tar.gz |
search-directory: set show hidden files on query according to monitors
This ensures the simple engine won't crawl in hidden directories, unless
necessary.
-rw-r--r-- | libnautilus-private/nautilus-query.c | 5 | ||||
-rw-r--r-- | libnautilus-private/nautilus-search-directory.c | 20 |
2 files changed, 23 insertions, 2 deletions
diff --git a/libnautilus-private/nautilus-query.c b/libnautilus-private/nautilus-query.c index 6f457d824..2b78213c7 100644 --- a/libnautilus-private/nautilus-query.c +++ b/libnautilus-private/nautilus-query.c @@ -24,10 +24,11 @@ #include <config.h> #include <string.h> -#include "nautilus-query.h" #include <eel/eel-glib-extensions.h> #include <glib/gi18n.h> -#include <libnautilus-private/nautilus-file-utilities.h> + +#include "nautilus-file-utilities.h" +#include "nautilus-query.h" struct NautilusQueryDetails { char *text; diff --git a/libnautilus-private/nautilus-search-directory.c b/libnautilus-private/nautilus-search-directory.c index 47e987c66..984c78f74 100644 --- a/libnautilus-private/nautilus-search-directory.c +++ b/libnautilus-private/nautilus-search-directory.c @@ -122,6 +122,25 @@ reset_file_list (NautilusSearchDirectory *search) } static void +set_hidden_files (NautilusSearchDirectory *search) +{ + GList *l; + SearchMonitor *monitor; + gboolean monitor_hidden = FALSE; + + for (l = search->details->monitor_list; l != NULL; l = l->next) { + monitor = l->data; + monitor_hidden |= monitor->monitor_hidden_files; + + if (monitor_hidden) { + break; + } + } + + nautilus_query_set_show_hidden_files (search->details->query, monitor_hidden); +} + +static void start_search (NautilusSearchDirectory *search) { NautilusSearchEngineModel *model_provider; @@ -142,6 +161,7 @@ start_search (NautilusSearchDirectory *search) search->details->search_running = TRUE; search->details->search_finished = FALSE; + set_hidden_files (search); nautilus_search_provider_set_query (NAUTILUS_SEARCH_PROVIDER (search->details->engine), search->details->query); |