[nautilus] search-engine: use nautilus_file_is_remote to check remote files
- From: Carlos Soriano <csoriano src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nautilus] search-engine: use nautilus_file_is_remote to check remote files
- Date: Thu, 26 Jul 2018 05:49:00 +0000 (UTC)
commit 2553625f6de0aa48b7a6e69482f868bed3a31490
Author: Marco Trevisan (TreviƱo) <mail 3v1n0 net>
Date: Thu Jun 7 02:41:24 2018 +0200
search-engine: use nautilus_file_is_remote to check remote files
src/nautilus-search-engine-simple.c | 16 ++++++++++++----
src/nautilus-search-engine-simple.h | 4 +++-
src/nautilus-search-engine-tracker.c | 19 +++++++++++++------
3 files changed, 28 insertions(+), 11 deletions(-)
---
diff --git a/src/nautilus-search-engine-simple.c b/src/nautilus-search-engine-simple.c
index d7ff3aac5..fbe1bdc81 100644
--- a/src/nautilus-search-engine-simple.c
+++ b/src/nautilus-search-engine-simple.c
@@ -20,9 +20,11 @@
*/
#include <config.h>
+#include "nautilus-file.h"
+#include "nautilus-search-engine-simple.h"
+
#include "nautilus-search-hit.h"
#include "nautilus-search-provider.h"
-#include "nautilus-search-engine-simple.h"
#include "nautilus-ui-utilities.h"
#define DEBUG_FLAG NAUTILUS_DEBUG_SEARCH
#include "nautilus-debug.h"
@@ -324,9 +326,15 @@ visit_directory (GFile *dir,
if (recursive_flag != NAUTILUS_QUERY_RECURSIVE_NEVER &&
g_file_info_get_file_type (info) == G_FILE_TYPE_DIRECTORY)
{
- recursive = recursive_flag == NAUTILUS_QUERY_RECURSIVE_ALWAYS ||
- (recursive_flag == NAUTILUS_QUERY_RECURSIVE_LOCAL_ONLY &&
- g_file_is_native (child));
+ if (recursive_flag == NAUTILUS_QUERY_RECURSIVE_ALWAYS)
+ {
+ recursive = TRUE;
+ }
+ else if (recursive_flag == NAUTILUS_QUERY_RECURSIVE_LOCAL_ONLY)
+ {
+ g_autoptr (NautilusFile) file = nautilus_file_get (child);
+ recursive = !nautilus_file_is_remote (file);
+ }
}
if (recursive)
diff --git a/src/nautilus-search-engine-simple.h b/src/nautilus-search-engine-simple.h
index 9a215713b..ff3c4010e 100644
--- a/src/nautilus-search-engine-simple.h
+++ b/src/nautilus-search-engine-simple.h
@@ -19,6 +19,8 @@
*
*/
+#include <glib-object.h>
+
#pragma once
G_BEGIN_DECLS
@@ -29,4 +31,4 @@ G_DECLARE_FINAL_TYPE (NautilusSearchEngineSimple, nautilus_search_engine_simple,
NautilusSearchEngineSimple* nautilus_search_engine_simple_new (void);
-G_END_DECLS
\ No newline at end of file
+G_END_DECLS
diff --git a/src/nautilus-search-engine-tracker.c b/src/nautilus-search-engine-tracker.c
index a8b2291d3..2eab75b55 100644
--- a/src/nautilus-search-engine-tracker.c
+++ b/src/nautilus-search-engine-tracker.c
@@ -22,6 +22,7 @@
#include <config.h>
#include "nautilus-search-engine-tracker.h"
+#include "nautilus-file.h"
#include "nautilus-search-hit.h"
#include "nautilus-search-provider.h"
#define DEBUG_FLAG NAUTILUS_DEBUG_SEARCH
@@ -463,21 +464,27 @@ static void
nautilus_search_engine_tracker_set_query (NautilusSearchProvider *provider,
NautilusQuery *query)
{
- g_autoptr (GFile) location = NULL;
NautilusSearchEngineTracker *tracker;
NautilusQueryRecursive recursive;
tracker = NAUTILUS_SEARCH_ENGINE_TRACKER (provider);
recursive = nautilus_query_get_recursive (query);
- location = nautilus_query_get_location (query);
g_clear_object (&tracker->query);
tracker->query = g_object_ref (query);
- tracker->recursive = recursive == NAUTILUS_QUERY_RECURSIVE_ALWAYS ||
- recursive == NAUTILUS_QUERY_RECURSIVE_INDEXED_ONLY ||
- (recursive == NAUTILUS_QUERY_RECURSIVE_LOCAL_ONLY &&
- g_file_is_native (location));
+
+ if (recursive == NAUTILUS_QUERY_RECURSIVE_LOCAL_ONLY)
+ {
+ g_autoptr (GFile) location = nautilus_query_get_location (query);
+ g_autoptr (NautilusFile) location_file = nautilus_file_get (location);
+ tracker->recursive = !nautilus_file_is_remote (location_file);
+ }
+ else
+ {
+ tracker->recursive = recursive == NAUTILUS_QUERY_RECURSIVE_ALWAYS ||
+ recursive == NAUTILUS_QUERY_RECURSIVE_INDEXED_ONLY;
+ }
}
static gboolean
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]