diff --git a/src/uiSelectDirective.js b/src/uiSelectDirective.js index 7ecca4258..cded3d463 100644 --- a/src/uiSelectDirective.js +++ b/src/uiSelectDirective.js @@ -360,6 +360,8 @@ uis.directive('uiSelect', }); }; + var opened = false; + scope.calculateDropdownPos = function() { if ($select.open) { dropdown = angular.element(element).querySelectorAll('.ui-select-dropdown'); @@ -368,8 +370,11 @@ uis.directive('uiSelect', return; } - // Hide the dropdown so there is no flicker until $timeout is done executing. - dropdown[0].style.opacity = 0; + // Hide the dropdown so there is no flicker until $timeout is done executing. + if ($select.search === '' && !opened) { + dropdown[0].style.opacity = 0; + opened = true; + } if (!uisOffset(dropdown).height && $select.$animate && $select.$animate.on && $select.$animate.enabled(dropdown)) { var needsCalculated = true;