mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-09 19:01:42 +00:00
[a11y] file view: added support for 'keyboard access' & bugfix for 'internal link'
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
import React from 'react';
|
import React, { Fragment } from 'react';
|
||||||
import { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';
|
import { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import toaster from '../toast';
|
import toaster from '../toast';
|
||||||
@@ -60,8 +60,8 @@ class InternalLinkDialog extends React.Component {
|
|||||||
|
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<span className={'file-internal-link'} title={gettext('Internal Link')}>
|
<Fragment>
|
||||||
<i className="fa fa-link" onClick={this.getInternalLink}></i>
|
<i title={gettext('Internal Link')} role="button" tabIndex="0" aria-label={gettext('Internal Link')} className="file-internal-link fa fa-link" onClick={this.getInternalLink}></i>
|
||||||
<Modal isOpen={this.state.isOpen} toggle={this.toggle}>
|
<Modal isOpen={this.state.isOpen} toggle={this.toggle}>
|
||||||
<ModalHeader toggle={this.toggle}>{gettext('Internal Link')}</ModalHeader>
|
<ModalHeader toggle={this.toggle}>{gettext('Internal Link')}</ModalHeader>
|
||||||
<ModalBody>
|
<ModalBody>
|
||||||
@@ -77,7 +77,7 @@ class InternalLinkDialog extends React.Component {
|
|||||||
<Button color="primary" onClick={this.copyToClipBoard}>{gettext('Copy')}</Button>
|
<Button color="primary" onClick={this.copyToClipBoard}>{gettext('Copy')}</Button>
|
||||||
</ModalFooter>
|
</ModalFooter>
|
||||||
</Modal>
|
</Modal>
|
||||||
</span>
|
</Fragment>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -36,7 +36,8 @@ class FileInfo extends React.PureComponent {
|
|||||||
<a className={`file-star ${isStarred ? 'fa' : 'far'} fa-star`}
|
<a className={`file-star ${isStarred ? 'fa' : 'far'} fa-star`}
|
||||||
href="#"
|
href="#"
|
||||||
title={starredText}
|
title={starredText}
|
||||||
aria-label={starredText}
|
role="button"
|
||||||
|
aria-label={isStarred ? gettext('Unstar') : gettext('Star')}
|
||||||
onClick={this.toggleStar}>
|
onClick={this.toggleStar}>
|
||||||
</a>
|
</a>
|
||||||
<InternalLinkDialog repoID={repoID} path={filePath} />
|
<InternalLinkDialog repoID={repoID} path={filePath} />
|
||||||
|
@@ -194,11 +194,9 @@ class FileToolbar extends React.Component {
|
|||||||
</DropdownItem>
|
</DropdownItem>
|
||||||
)}
|
)}
|
||||||
{filePerm == 'rw' && (
|
{filePerm == 'rw' && (
|
||||||
<DropdownItem>
|
<a href={`${siteRoot}repo/file_revisions/${repoID}/?p=${encodeURIComponent(filePath)}&referer=${encodeURIComponent(location.href)}`} className="dropdown-item">
|
||||||
<a href={`${siteRoot}repo/file_revisions/${repoID}/?p=${encodeURIComponent(filePath)}&referer=${encodeURIComponent(location.href)}`} className="text-inherit">
|
|
||||||
{gettext('History')}
|
{gettext('History')}
|
||||||
</a>
|
</a>
|
||||||
</DropdownItem>
|
|
||||||
)}
|
)}
|
||||||
</DropdownMenu>
|
</DropdownMenu>
|
||||||
</ButtonDropdown>
|
</ButtonDropdown>
|
||||||
|
Reference in New Issue
Block a user