diff --git a/src/dropdown/dropdown.js b/src/dropdown/dropdown.js index 2560e282e8..3c63b81947 100644 --- a/src/dropdown/dropdown.js +++ b/src/dropdown/dropdown.js @@ -99,17 +99,23 @@ angular.module('ui.bootstrap.dropdown', ['ui.bootstrap.multiMap', 'ui.bootstrap. return; } - var dropdownElement = openScope.getDropdownElement(); - if (evt && openScope.getAutoClose() === 'outsideClick' && - dropdownElement && dropdownElement[0].contains(evt.target)) { - return; + var dropdownElement = openScope.getDropdownElement(), noFocus; + + if (evt && openScope.getAutoClose() === 'outsideClick') { + if (dropdownElement && dropdownElement[0].contains(evt.target)) { + return; + } + // Close dropdown without changing focus; + noFocus = true; } - openScope.focusToggleElement(); + if (!noFocus) { + openScope.focusToggleElement(); + } openScope.isOpen = false; if (!$rootScope.$$phase) { - openScope.$apply(); + openScope.$apply(); } };