diff --git a/src/common.css b/src/common.css index c81d540c7..6124b0f2e 100644 --- a/src/common.css +++ b/src/common.css @@ -127,6 +127,15 @@ body > .select2-container.open { width: 0; } +.ui-select-container[theme="selectize"] .ui-select-header-group-selectable:hover { + background-color: #f5f5f5; +} + +.ui-select-container[theme="selectize"] .ui-select-header-group-selectable { + cursor: pointer; + padding-left: 15px; +} + /* Bootstrap theme */ /* Helper class to show styles when focus */ @@ -253,6 +262,16 @@ body > .ui-select-bootstrap.open { border-right: 1px solid #428bca; } +.ui-select-bootstrap .ui-select-header-group-selectable:hover { + background-color: #f5f5f5; +} + +.ui-select-bootstrap .ui-select-header-group-selectable { + color: black; + cursor: pointer; + padding: 3px 10px; +} + .ui-select-bootstrap .ui-select-choices-row>span { cursor: pointer; display: block; diff --git a/src/uiSelectController.js b/src/uiSelectController.js index 1f2483f04..d6023d0b9 100644 --- a/src/uiSelectController.js +++ b/src/uiSelectController.js @@ -175,9 +175,12 @@ uis.controller('uiSelectCtrl', ctrl.searchInput[0].focus(); }; - ctrl.findGroupByName = function(name) { + ctrl.findGroupByName = function(name, noStrict) { return ctrl.groups && ctrl.groups.filter(function(group) { - return group.name === name; + if (noStrict) + return group.name == name; + else + return group.name === name; })[0]; }; diff --git a/src/uiSelectHeaderGroupSelectableDirective.js b/src/uiSelectHeaderGroupSelectableDirective.js new file mode 100644 index 000000000..826b7e08d --- /dev/null +++ b/src/uiSelectHeaderGroupSelectableDirective.js @@ -0,0 +1,78 @@ +uis.directive('uiSelectHeaderGroupSelectable', ['$timeout', function($timeout) { + return { + restrict: 'EA', + require: ['^uiSelect'], + scope: { + isEnabled: "