diff --git a/apps/files/js/search.js b/apps/files/js/search.js
index 394bcb48603014ced311d3c85f14ccc6cfb08272..625e4b13f4b72322872fc5c9bb85a899a7c91690 100644
--- a/apps/files/js/search.js
+++ b/apps/files/js/search.js
@@ -133,7 +133,7 @@
 
 			this.handleFolderClick = function($row, result, event) {
 				// open folder
-				if (self.fileAppLoaded()) {
+				if (self.fileAppLoaded() && self.fileList.id === 'files') {
 					self.fileList.changeDirectory(result.path);
 					return false;
 				} else {
@@ -142,7 +142,7 @@
 			};
 
 			this.handleFileClick = function($row, result, event) {
-				if (self.fileAppLoaded()) {
+				if (self.fileAppLoaded() && self.fileList.id === 'files') {
 					self.fileList.changeDirectory(OC.dirname(result.path));
 					self.fileList.scrollTo(result.name);
 					return false;
@@ -184,6 +184,13 @@
 
 			search.setHandler('folder',  this.handleFolderClick.bind(this));
 			search.setHandler(['file', 'audio', 'image'], this.handleFileClick.bind(this));
+
+			if (self.fileAppLoaded()) {
+				// hide results when switching directory outside of search results
+				$('#app-content').delegate('>div', 'changeDirectory', function() {
+					search.clear();
+				});
+			}
 		}
 	};
 	OCA.Search.Files = Files;