Skip to content

Commit

Permalink
fixed #7039 Multiselect Keyboard Support Not Working
Browse files Browse the repository at this point in the history
  • Loading branch information
yigitfindikli committed Dec 24, 2018
1 parent 050a99f commit fd89757
Showing 1 changed file with 13 additions and 14 deletions.
27 changes: 13 additions & 14 deletions src/app/components/multiselect/multiselect.ts
Original file line number Diff line number Diff line change
Expand Up @@ -563,51 +563,50 @@ export class MultiSelect implements OnInit,AfterViewInit,AfterContentInit,AfterV
return;
}

let item = <HTMLLIElement> event.originalEvent.currentTarget;
switch(event.originalEvent.which) {

switch(event.which) {
//down
case 40:
var nextItem = this.findNextItem(item);
var nextItem = this.findNextItem(event.originalEvent);
if(nextItem) {
nextItem.focus();
}

event.preventDefault();
event.originalEvent.preventDefault();
break;

//up
case 38:
var prevItem = this.findPrevItem(item);
var prevItem = this.findPrevItem(event.originalEvent);
if(prevItem) {
prevItem.focus();
}

event.preventDefault();
event.originalEvent.preventDefault();
break;

//enter
case 13:
this.onOptionClick(event);
event.preventDefault();
event.originalEvent.preventDefault();
break;
}
}

findNextItem(item) {
let nextItem = item.nextElementSibling;

findNextItem(event) {
let nextItem = event.target.parentElement.nextElementSibling;
if (nextItem)
return this.domHandler.hasClass(nextItem, 'ui-state-disabled') || this.domHandler.isHidden(nextItem) ? this.findNextItem(nextItem) : nextItem;
return this.domHandler.hasClass(nextItem.children[0], 'ui-state-disabled') || this.domHandler.isHidden(nextItem.children[0]) ? this.findNextItem(nextItem.children[0]) : nextItem.children[0];
else
return null;
}

findPrevItem(item) {
let prevItem = item.previousElementSibling;
findPrevItem(event) {
let prevItem = event.target.parentElement.previousElementSibling;

if (prevItem)
return this.domHandler.hasClass(prevItem, 'ui-state-disabled') || this.domHandler.isHidden(prevItem) ? this.findPrevItem(prevItem) : prevItem;
return this.domHandler.hasClass(prevItem.children[0], 'ui-state-disabled') || this.domHandler.isHidden(prevItem) ? this.findPrevItem(prevItem.children[0]) : prevItem.children[0];
else
return null;
}
Expand Down

0 comments on commit fd89757

Please sign in to comment.