File tree Expand file tree Collapse file tree 2 files changed +29
-1
lines changed
Expand file tree Collapse file tree 2 files changed +29
-1
lines changed Original file line number Diff line number Diff line change @@ -363,7 +363,7 @@ const Menu: React.FC<MenuProps> = props => {
363363 }
364364
365365 // Whatever selectable, always close it
366- if ( ! multiple && mergedOpenKeys . length ) {
366+ if ( ! multiple && mergedOpenKeys . length && mergedMode !== 'inline' ) {
367367 triggerOpenKeys ( EMPTY_LIST ) ;
368368 }
369369 } ;
Original file line number Diff line number Diff line change @@ -577,6 +577,34 @@ describe('Menu', () => {
577577
578578 test ( 'basic' ) ;
579579 test ( 'not selectable' , { selectable : false } ) ;
580+ test ( 'inlineCollapsed' , { mode : 'inline' , inlineCollapsed : true } ) ;
581+
582+ it ( 'not close inline' , async ( ) => {
583+ jest . useFakeTimers ( ) ;
584+
585+ const onOpenChange = jest . fn ( ) ;
586+
587+ const wrapper = mount (
588+ < Menu openKeys = { [ 'bamboo' ] } mode = "inline" onOpenChange = { onOpenChange } >
589+ < SubMenu key = "bamboo" title = "Bamboo" >
590+ < MenuItem key = "light" > Light</ MenuItem >
591+ </ SubMenu >
592+ </ Menu > ,
593+ ) ;
594+
595+ // Open menu
596+ await act ( async ( ) => {
597+ jest . runAllTimers ( ) ;
598+ wrapper . update ( ) ;
599+ } ) ;
600+
601+ wrapper . update ( ) ;
602+
603+ wrapper . find ( '.rc-menu-item' ) . last ( ) . simulate ( 'click' ) ;
604+ expect ( onOpenChange ) . not . toHaveBeenCalled ( ) ;
605+
606+ jest . useRealTimers ( ) ;
607+ } ) ;
580608 } ) ;
581609} ) ;
582610/* eslint-enable */
You can’t perform that action at this time.
0 commit comments