diff --git a/frontend/src/components/dropdown-menu/item-dropdown-menu.js b/frontend/src/components/dropdown-menu/item-dropdown-menu.js index 62489630bb..8cbbcbdf35 100644 --- a/frontend/src/components/dropdown-menu/item-dropdown-menu.js +++ b/frontend/src/components/dropdown-menu/item-dropdown-menu.js @@ -67,6 +67,12 @@ class ItemDropdownMenu extends React.Component { } } + onDropdownToggleKeyDown = (e) => { + if (e.key == 'Enter' || e.key == 'Space') { + this.onDropdownToggleClick(e); + } + } + onDropdownToggleClick = (e) => { e.preventDefault(); e.stopPropagation(); @@ -87,6 +93,12 @@ class ItemDropdownMenu extends React.Component { ); } + onMenuItemKeyDown = (e) => { + if (e.key == 'Enter' || e.key == 'Space') { + this.onMenuItemClick(e); + } + } + onMenuItemClick = (event) => { let operation = Utils.getEventData(event, 'toggle'); let item = this.props.item; @@ -104,12 +116,14 @@ class ItemDropdownMenu extends React.Component { if (tagName && tagName === 'button') { return ( - + @@ -119,7 +133,7 @@ class ItemDropdownMenu extends React.Component { return ; } else { return ( - {menuItem.value} + {menuItem.value} ); } })} @@ -136,6 +150,8 @@ class ItemDropdownMenu extends React.Component { title={gettext('More Operations')} data-toggle="dropdown" aria-expanded={this.state.isItemMenuShow} + aria-label={gettext('More Operations')} + onKeyDown={this.onDropdownToggleKeyDown} // onClick={this.onDropdownToggleClick} /> @@ -144,7 +160,7 @@ class ItemDropdownMenu extends React.Component { return ; } else { return ( - {menuItem.value} + {menuItem.value} ); } })} diff --git a/frontend/src/components/toolbar/multiple-dir-operation-toolbar.js b/frontend/src/components/toolbar/multiple-dir-operation-toolbar.js index 99cc34d058..c24deedf65 100644 --- a/frontend/src/components/toolbar/multiple-dir-operation-toolbar.js +++ b/frontend/src/components/toolbar/multiple-dir-operation-toolbar.js @@ -361,16 +361,16 @@ class MultipleDirOperationToolbar extends React.Component { {(userPerm === 'rw' || userPerm === 'admin' || isCustomPermission) && ( - {canModify && } - {canCopy && } - {canDelete && } - {canDownload && } + {canModify && } + {canCopy && } + {canDelete && } + {canDownload && } )} {userPerm === 'r' && ( - - + + )} {this.props.selectedDirentList.length === 1 && diff --git a/frontend/src/components/toolbar/view-mode-toolbar.js b/frontend/src/components/toolbar/view-mode-toolbar.js index ab109c61f1..f15f1c6401 100644 --- a/frontend/src/components/toolbar/view-mode-toolbar.js +++ b/frontend/src/components/toolbar/view-mode-toolbar.js @@ -28,13 +28,13 @@ class ViewModeToolbar extends React.Component { return (
- - - + + +
{!this.props.isCustomPermission && (
- +
)}