File tree Expand file tree Collapse file tree 3 files changed +21
-2
lines changed
source/nodejs/adaptivecards/src Expand file tree Collapse file tree 3 files changed +21
-2
lines changed Original file line number Diff line number Diff line change @@ -6644,11 +6644,13 @@ class OverflowAction extends Action {
66446644 }
66456645
66466646 contextMenu . onClose = ( ) => {
6647+ this . renderedElement ?. focus ( ) ;
66476648 this . renderedElement ?. setAttribute ( "aria-expanded" , "false" ) ;
66486649 }
66496650
66506651 this . renderedElement . setAttribute ( "aria-expanded" , "true" ) ;
66516652 contextMenu . popup ( this . renderedElement ) ;
6653+ contextMenu . selectedIndex = 0 ;
66526654 }
66536655 }
66546656
Original file line number Diff line number Diff line change @@ -63,8 +63,8 @@ export class MenuItem {
6363 } ;
6464 this . _element . onkeydown = ( e ) => {
6565 if ( e . key === Constants . keys . enter ) {
66- e . cancelBubble = true ;
67-
66+ e . stopPropagation ( ) ;
67+ e . preventDefault ( ) ;
6868 this . click ( ) ;
6969 }
7070 } ;
Original file line number Diff line number Diff line change @@ -21,6 +21,11 @@ export class PopupMenu extends PopupControl {
2121
2222 element . appendChild ( renderedItem ) ;
2323
24+ if ( i == 0 )
25+ {
26+ renderedItem . setAttribute ( "aria-expanded" , "true" ) ;
27+ }
28+
2429 if ( i === this . selectedIndex ) {
2530 renderedItem . focus ( ) ;
2631 }
@@ -63,6 +68,7 @@ export class PopupMenu extends PopupControl {
6368 }
6469
6570 this . selectedIndex = selectedItemIndex ;
71+ this . removeAriaExpanded ( selectedItemIndex ) ;
6672
6773 e . cancelBubble = true ;
6874
@@ -76,6 +82,7 @@ export class PopupMenu extends PopupControl {
7682 if ( selectedItemIndex >= this . _renderedItems . length ) {
7783 selectedItemIndex = 0 ;
7884 }
85+ this . removeAriaExpanded ( selectedItemIndex ) ;
7986 }
8087
8188 this . selectedIndex = selectedItemIndex ;
@@ -101,4 +108,14 @@ export class PopupMenu extends PopupControl {
101108 this . _selectedIndex = index ;
102109 }
103110 }
111+
112+ // remove aria-expanded attribute from menu item
113+ private removeAriaExpanded ( index : number ) {
114+ if ( this . _renderedItems [ index ] . getAttribute ( "aria-expanded" ) === "true" ) {
115+ this . _renderedItems [ index ] . removeAttribute ( "aria-expanded" ) ;
116+ }
117+ }
118+
119+
120+
104121}
You can’t perform that action at this time.
0 commit comments