Index: src/PlayerInterface.cs
===================================================================
RCS file: /cvs/gnome/banshee/src/PlayerInterface.cs,v
retrieving revision 1.174
diff -u -p -r1.174 PlayerInterface.cs
--- src/PlayerInterface.cs	14 Apr 2006 15:33:43 -0000	1.174
+++ src/PlayerInterface.cs	17 Apr 2006 19:52:21 -0000
@@ -1272,7 +1272,7 @@ namespace Banshee
                 return false;
             }
             
-            string query = searchEntry.Query.ToLower();
+            string[] query = searchEntry.Query.ToLower().Split(' ');
             string field = searchEntry.Field;
             string match = null;
             
@@ -1292,22 +1292,32 @@ namespace Banshee
                     ti.Genre
                 };
 
-                foreach(string m in matches) {
-                    if(m == null || m == String.Empty) {
-                        continue;
-                    }
-
-                    string ml = m.ToLower();
-                    if(ml.IndexOf(query) >= 0 || ml.IndexOf("the " + query) >= 0) {
-                        return true;
-                    }
-                }
+                foreach(string w in query) {
+                    bool wordfound = false;
+                    foreach(string m in matches) {
+                        string ml = m.ToLower();
+                        if(m == null || m == String.Empty) {
+                            continue;
+                        }
                 
-                return false;
+			            if(ml.IndexOf(w) >= 0 || ml.IndexOf("the " + query) >= 0) {
+                            wordfound = true;
+                        }
+		            }
+                    if(!wordfound) {
+                        return false;
+                    } 
+                }
+                return true;
             }
                     
             match = match.ToLower();
-            return match.IndexOf(query) >= 0 || match.IndexOf("the " + query) >= 0;
+            foreach(string w in query) {
+                if (!(match.IndexOf(w) >= 0) && !(match.IndexOf("the " + query) >= 0)) {
+                    return false;
+                }
+            }
+            return true;
         }
         
         private void OnSimpleSearch(object o, EventArgs args)
