[nautilus] query: add local recursive flag for local only searches



commit 1de5a3315a968d6258708f6ac47d84bf0f124692
Author: Marco Trevisan (TreviƱo) <mail 3v1n0 net>
Date:   Wed Jun 6 15:19:00 2018 +0200

    query: add local recursive flag for local only searches
    
    This will allow to have a more fine grained experience

 src/nautilus-file-utilities.c | 20 ++++++++------------
 src/nautilus-query.h          |  1 +
 2 files changed, 9 insertions(+), 12 deletions(-)
---
diff --git a/src/nautilus-file-utilities.c b/src/nautilus-file-utilities.c
index 792f78a23..6a1c3e4f7 100644
--- a/src/nautilus-file-utilities.c
+++ b/src/nautilus-file-utilities.c
@@ -1403,20 +1403,16 @@ location_settings_search_get_recursive (GFile *location)
 
     g_return_val_if_fail (file, NAUTILUS_QUERY_RECURSIVE_ALWAYS);
 
-    if (nautilus_file_is_remote (file))
+    switch (g_settings_get_enum (nautilus_preferences, "recursive-search"))
     {
-        if (g_settings_get_enum (nautilus_preferences, "recursive-search") == NAUTILUS_SPEED_TRADEOFF_ALWAYS)
-        {
-            return NAUTILUS_QUERY_RECURSIVE_ALWAYS;
-        }
-    }
-    else
-    {
-        if (g_settings_get_enum (nautilus_preferences, "recursive-search") == 
NAUTILUS_SPEED_TRADEOFF_LOCAL_ONLY ||
-            g_settings_get_enum (nautilus_preferences, "recursive-search") == NAUTILUS_SPEED_TRADEOFF_ALWAYS)
-        {
+        case NAUTILUS_SPEED_TRADEOFF_ALWAYS:
             return NAUTILUS_QUERY_RECURSIVE_ALWAYS;
-        }
+        case NAUTILUS_SPEED_TRADEOFF_LOCAL_ONLY:
+          return nautilus_file_is_remote (file) ?
+                 NAUTILUS_QUERY_RECURSIVE_NEVER :
+                 NAUTILUS_QUERY_RECURSIVE_LOCAL_ONLY;
+        case NAUTILUS_SPEED_TRADEOFF_NEVER:
+            return NAUTILUS_QUERY_RECURSIVE_NEVER;
     }
 
     return NAUTILUS_QUERY_RECURSIVE_NEVER;
diff --git a/src/nautilus-query.h b/src/nautilus-query.h
index ad838c4fd..e5d6c19df 100644
--- a/src/nautilus-query.h
+++ b/src/nautilus-query.h
@@ -37,6 +37,7 @@ typedef enum {
 typedef enum {
         NAUTILUS_QUERY_RECURSIVE_NEVER,
         NAUTILUS_QUERY_RECURSIVE_ALWAYS,
+        NAUTILUS_QUERY_RECURSIVE_LOCAL_ONLY,
         NAUTILUS_QUERY_RECURSIVE_INDEXED_ONLY,
 } NautilusQueryRecursive;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]