Skip to content
This repository was archived by the owner on Oct 2, 2019. It is now read-only.

Commit 03a990a

Browse files
committed
feat(focus): allow to set focus when loaded or listening a scope event
1 parent da159d4 commit 03a990a

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

src/uiSelectController.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,10 @@ uis.controller('uiSelectCtrl',
309309
}
310310
};
311311

312+
ctrl.setFocus = function(){
313+
if (!ctrl.focus) ctrl.focusser[0].focus();
314+
};
315+
312316
ctrl.clear = function($event) {
313317
ctrl.select(undefined);
314318
$event.stopPropagation();

src/uisFocusDirectives.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
uis.directive('uisAutofocus', ['$timeout', function($timeout) {
2+
return {
3+
restrict: 'A',
4+
require: '^uiSelect',
5+
link: function(scope, element, attrs, $select) {
6+
$timeout(function(){
7+
$select.setFocus();
8+
});
9+
}
10+
};
11+
}]);
12+
13+
uis.directive('uisFocusOn', ['$timeout', function($timeout) {
14+
return {
15+
restrict: 'A',
16+
require: '^uiSelect',
17+
link: function(scope, element, attrs, $select) {
18+
scope.$on(attrs.uisFocusOn, function() {
19+
$timeout(function(){
20+
$select.setFocus();
21+
});
22+
});
23+
}
24+
};
25+
}]);

0 commit comments

Comments
 (0)