[tracker] TST - Added search delay (patch from Juan A. Suarez Romero)



commit 0a4b0189d3650ebf2420041ed8af950bc838d8e3
Author: Jamie McCracken <jamie mccrack gmail com>
Date:   Fri Nov 6 01:39:01 2009 -0500

    TST - Added search delay (patch from Juan A. Suarez Romero)

 src/tracker-search-tool/tracker-entry.gs |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)
---
diff --git a/src/tracker-search-tool/tracker-entry.gs b/src/tracker-search-tool/tracker-entry.gs
index 211f6d8..5f02004 100644
--- a/src/tracker-search-tool/tracker-entry.gs
+++ b/src/tracker-search-tool/tracker-entry.gs
@@ -25,7 +25,11 @@ uses
     TrackerUtils
     
     
+const static RUN_DELAY : int = 500
+    
 class TrackerSearchEntry  : Gtk.Entry
+    id_invoker : uint = 0
+
     prop Query : TrackerQuery 
 
     init
@@ -43,12 +47,23 @@ class TrackerSearchEntry  : Gtk.Entry
     def private entry_changed (editable : Editable) 
         if Query is not null
             if text is null
+                Query.SearchTerms = ""
+                if id_invoker != 0
+                    Source.remove (id_invoker)
+                    id_invoker = 0
+                set_icon_sensitive (EntryIconPosition.SECONDARY, false)
+            else
+                if id_invoker != 0
+                    Source.remove (id_invoker)
+                id_invoker = Timeout.add (RUN_DELAY, run_query)
+        
+    def private run_query () : bool
+        if Query is not null
+            if text is null
                 set_icon_sensitive (EntryIconPosition.SECONDARY, false)
                 Query.SearchTerms = ""
             else
                 set_icon_sensitive (EntryIconPosition.SECONDARY, true)
                 Query.SearchTerms = EscapeSparql (text, true)
-        
+        return false
     
-    
-



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