assets/javascripts/semantic_ui/definitions/modules/dropdown.js in less-rails-semantic_ui-1.11.4.0 vs assets/javascripts/semantic_ui/definitions/modules/dropdown.js in less-rails-semantic_ui-1.11.5.0

- old
+ new

@@ -29,11 +29,11 @@ queryArguments = [].slice.call(arguments, 1), returnedValue ; $allModules - .each(function(index) { + .each(function() { var settings = ( $.isPlainObject(parameters) ) ? $.extend(true, {}, $.fn.dropdown.settings, parameters) : $.extend({}, $.fn.dropdown.settings), @@ -208,20 +208,21 @@ $input .removeAttr('class') .prependTo($module) ; } - module.setup.reference(); + module.refresh(); }, reference: function() { var + index = $allModules.index($module), $firstModules, $lastModules ; module.debug('Dropdown behavior was called on select, replacing with closest dropdown'); // replace module reference - $module = $module.closest(selector.dropdown); + $module = $module.parent(selector.dropdown); module.refresh(); // adjust all modules $firstModules = $allModules.slice(0, index); $lastModules = $allModules.slice(index + 1); $allModules = $firstModules.add($module).add($lastModules); @@ -469,10 +470,13 @@ ; if(hasSelected) { module.event.item.click.call($selectedItem); module.remove.filteredItem(); } + else { + module.hide(); + } }, event: { // prevents focus callback from occuring on mousedown mousedown: function() { @@ -962,23 +966,27 @@ ; if(strict) { module.verbose('Ambiguous dropdown value using strict type check', $choice, value); if( optionValue === value ) { $selectedItem = $(this); + return true; } else if( !$selectedItem && optionText === value ) { $selectedItem = $(this); + return true; } } else { if( optionValue == value ) { module.verbose('Found select item by value', optionValue, value); $selectedItem = $(this); + return true; } else if( !$selectedItem && optionText == value ) { module.verbose('Found select item by text', optionText, value); $selectedItem = $(this); + return true; } } }) ; } @@ -1177,11 +1185,11 @@ var $selectedItem = module.get.item(value), selectedText, selectedValue ; - if($selectedItem) { + if($selectedItem && !$selectedItem.hasClass(className.active) ) { module.debug('Setting selected menu item to', $selectedItem); module.remove.activeItem(); module.remove.selectedItem(); $selectedItem .addClass(className.active) @@ -1557,10 +1565,10 @@ 'Element' : element, 'Execution Time' : executionTime }); } clearTimeout(module.performance.timer); - module.performance.timer = setTimeout(module.performance.display, 100); + module.performance.timer = setTimeout(module.performance.display, 500); }, display: function() { var title = settings.name + ':', totalTime = 0