Skip to content

Commit

Permalink
fix(primeng/tieredMenu): handle enter keyboard event
Browse files Browse the repository at this point in the history
Process the keyboard `enter` event for a menu item if it is not `routerLink'.

Fixes primefaces#11514.
  • Loading branch information
volvachev authored and Egor Volvachev committed May 12, 2022
1 parent add0e0c commit 33b883f
Showing 1 changed file with 11 additions and 3 deletions.
14 changes: 11 additions & 3 deletions src/app/components/tieredmenu/tieredmenu.ts
Original file line number Diff line number Diff line change
Expand Up @@ -152,12 +152,12 @@ export class TieredMenuSub implements OnDestroy {
this.leafClick.emit();
}

onItemKeyDown(event, item) {
onItemKeyDown(event, item: MenuItem) {
let listItem = event.currentTarget.parentElement;

switch (event.key) {
case 'ArrowDown':
var nextItem = this.findNextItem(listItem);
const nextItem = this.findNextItem(listItem);
if (nextItem) {
nextItem.children[0].focus();
}
Expand All @@ -166,7 +166,7 @@ export class TieredMenuSub implements OnDestroy {
break;

case 'ArrowUp':
var prevItem = this.findPrevItem(listItem);
const prevItem = this.findPrevItem(listItem);
if (prevItem) {
prevItem.children[0].focus();
}
Expand All @@ -190,6 +190,14 @@ export class TieredMenuSub implements OnDestroy {
event.preventDefault();
break;

case 'Enter':
if (!item.routerLink) {
this.onItemClick(event, item);
}

break;


default:
break;
}
Expand Down

0 comments on commit 33b883f

Please sign in to comment.