diff --git a/lib/search/provider/file.php b/lib/search/provider/file.php
index f84d098dd6933f6d4950f4f3952fd202ec3fd953..f3d235abdce48859f1043ec7b90bd97987865baf 100644
--- a/lib/search/provider/file.php
+++ b/lib/search/provider/file.php
@@ -8,7 +8,17 @@ class OC_Search_Provider_File extends OC_Search_Provider{
 			if(OC_Filesystem::is_dir($file)){
 				$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'index.php?dir='.$file ),'Files');
 			}else{
-				$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php?file='.$file ),'Files');
+				$mime=OC_Filesystem::getMimeType($file);
+				$mimeBase=substr($mime,0,strpos($mime,'/'));
+				switch($mimeBase){
+					case 'audio':
+						break;
+					case 'image':
+						$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php?file='.$file ),'Images');
+						break;
+					default:
+						$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php?file='.$file ),'Files');
+				}
 			}
 		}
 		return $results;