diff --git a/www/js/search.js b/www/js/search.js
index 4b6c0e375faeed9f7f265b62a94073f3a5527799..ac2efe1c7a2a1529fc14f8c54fde6f8aa1cfec04 100644
--- a/www/js/search.js
+++ b/www/js/search.js
@@ -146,6 +146,7 @@
 				directorySearch,
 				localContext = window['LOCAL_SEARCH_CONTEXT'],
 				drawOp = new google.search.DrawOptions(),
+				searchToggleLock = false,
 				
 				trackQuery = function(q) {
 					var loc = window.location,
@@ -175,8 +176,15 @@
 					});
 					$('img.gcsc-branding-img-noclear', $root).attr('alt', 'Googleâ„¢');
 					
+					if (!searchToggleLock && control == localSearch && $('.gs-no-results-result').length) {
+						$root.closest('.results-group').find('.result-tab li:last-child').click();
+						return;
+					}
+					
 					$root.closest(resultSel).addClass(actCls);
 					$root.closest(googleSel).slideDown();
+					
+					searchToggleLock = false;
 				},
 				fullQuery = function(q, track) {
 					if (track !== false) {
@@ -288,6 +296,7 @@
 					if ($par.is(wrapperDir)) {
 						directorySearch.changeViewState(i);
 					} else if ($par.is(wrapperWeb)) {
+						searchToggleLock = true;
 						$(activeSearch.root).closest(googleSel).slideUp().trigger(evtStateChange, [i, 0 + !i]);
 						if (i === 0) {
 							activeSearch = localSearch;