1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-08 10:22:46 +00:00

[a11y] my libs: make 'more - deleted libraries' be accessible by keyboard

This commit is contained in:
llj
2021-09-26 14:12:14 +08:00
parent 7491e02b73
commit 70f596f519

View File

@@ -1,7 +1,7 @@
import React, { Fragment } from 'react'; import React, { Fragment } from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { Utils } from '../../utils/utils'; import { Utils } from '../../utils/utils';
import { Link } from '@reach/router'; import { Link, navigate } from '@reach/router';
import { siteRoot, gettext } from '../../utils/constants'; import { siteRoot, gettext } from '../../utils/constants';
import ModalPortal from '../modal-portal'; import ModalPortal from '../modal-portal';
import CreateRepoDialog from '../dialog/create-repo-dialog'; import CreateRepoDialog from '../dialog/create-repo-dialog';
@@ -36,6 +36,12 @@ class RepoViewToolbar extends React.Component {
this.setState({ isOpen: !this.state.isOpen }); this.setState({ isOpen: !this.state.isOpen });
} }
visitDeletedviaKey = (e) => {
if (e.key == 'Enter' || e.key == 'Space') {
navigate(`${siteRoot}my-libs/deleted/`);
}
}
render() { render() {
return ( return (
<Fragment> <Fragment>
@@ -51,7 +57,7 @@ class RepoViewToolbar extends React.Component {
{gettext('More')} {gettext('More')}
</DropdownToggle> </DropdownToggle>
<DropdownMenu> <DropdownMenu>
<DropdownItem className="link-dropdown-container"> <DropdownItem className="link-dropdown-container" onKeyDown={this.visitDeletedviaKey}>
<Link className="link-dropdown-item" to={siteRoot + 'my-libs/deleted/'}>{gettext('Deleted Libraries')}</Link> <Link className="link-dropdown-item" to={siteRoot + 'my-libs/deleted/'}>{gettext('Deleted Libraries')}</Link>
</DropdownItem> </DropdownItem>
</DropdownMenu> </DropdownMenu>