@@ -529,7 +529,7 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$
529
529
530
530
// Just to make sure.. had a bug where key events were recorded twice
531
531
angular . element ( document ) . unbind ( 'click' , $scope . externalClickListener ) ;
532
- angular . element ( window ) . unbind ( 'keydown' , $scope . keyboardListener ) ;
532
+ angular . element ( document ) . unbind ( 'keydown' , $scope . keyboardListener ) ;
533
533
534
534
// clear filter
535
535
$scope . inputLabel . labelFilter = '' ;
@@ -540,7 +540,7 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$
540
540
angular . element ( $scope . checkBoxLayer ) . removeClass ( 'show' ) ;
541
541
angular . element ( clickedEl ) . removeClass ( 'buttonClicked' ) ;
542
542
angular . element ( document ) . unbind ( 'click' , $scope . externalClickListener ) ;
543
- angular . element ( window ) . unbind ( 'keydown' , $scope . keyboardListener ) ;
543
+ angular . element ( document ) . unbind ( 'keydown' , $scope . keyboardListener ) ;
544
544
545
545
// clear the focused element;
546
546
$scope . removeFocusStyle ( $scope . tabIndex ) ;
@@ -558,7 +558,7 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$
558
558
angular . element ( $scope . checkBoxLayer ) . removeClass ( 'show' ) ;
559
559
angular . element ( clickedEl ) . removeClass ( 'buttonClicked' ) ;
560
560
angular . element ( document ) . unbind ( 'click' , $scope . externalClickListener ) ;
561
- angular . element ( window ) . unbind ( 'keydown' , $scope . keyboardListener ) ;
561
+ angular . element ( document ) . unbind ( 'keydown' , $scope . keyboardListener ) ;
562
562
563
563
// clear the focused element;
564
564
$scope . removeFocusStyle ( $scope . tabIndex ) ;
@@ -575,7 +575,7 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$
575
575
angular . element ( $scope . checkBoxLayer ) . addClass ( 'show' ) ;
576
576
angular . element ( clickedEl ) . addClass ( 'buttonClicked' ) ;
577
577
angular . element ( document ) . bind ( 'click' , $scope . externalClickListener ) ;
578
- angular . element ( window ) . bind ( 'keydown' , $scope . keyboardListener ) ;
578
+ angular . element ( document ) . bind ( 'keydown' , $scope . keyboardListener ) ;
579
579
580
580
// to get the initial tab index, depending on how many helper elements we have.
581
581
// priority is to always focus it on the input filter
@@ -619,8 +619,11 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$
619
619
angular . element ( $scope . checkBoxLayer ) . removeClass ( 'show' ) ;
620
620
angular . element ( document ) . unbind ( 'click' , $scope . externalClickListener ) ;
621
621
angular . element ( document ) . unbind ( 'keydown' , $scope . keyboardListener ) ;
622
- // close callback
623
- $scope . onClose ( { data : element } ) ;
622
+
623
+ // close callback
624
+ $timeout ( function ( ) {
625
+ $scope . onClose ( { data : element } ) ;
626
+ } , 0 ) ;
624
627
}
625
628
626
629
// traverse up to find the button tag
0 commit comments