diff options
Diffstat (limited to 'app/javascript/mastodon/components/column_back_button.js')
-rw-r--r-- | app/javascript/mastodon/components/column_back_button.js | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/app/javascript/mastodon/components/column_back_button.js b/app/javascript/mastodon/components/column_back_button.js deleted file mode 100644 index 5bbf11652..000000000 --- a/app/javascript/mastodon/components/column_back_button.js +++ /dev/null @@ -1,54 +0,0 @@ -import React from 'react'; -import { FormattedMessage } from 'react-intl'; -import PropTypes from 'prop-types'; -import Icon from 'mastodon/components/icon'; -import { createPortal } from 'react-dom'; - -export default class ColumnBackButton extends React.PureComponent { - - static contextTypes = { - router: PropTypes.object, - }; - - static propTypes = { - multiColumn: PropTypes.bool, - }; - - handleClick = () => { - if (window.history && window.history.length === 1) { - this.context.router.history.push('/'); - } else { - this.context.router.history.goBack(); - } - }; - - render () { - const { multiColumn } = this.props; - - const component = ( - <button onClick={this.handleClick} className='column-back-button'> - <Icon id='chevron-left' className='column-back-button__icon' fixedWidth /> - <FormattedMessage id='column_back_button.label' defaultMessage='Back' /> - </button> - ); - - if (multiColumn) { - return component; - } else { - // The portal container and the component may be rendered to the DOM in - // the same React render pass, so the container might not be available at - // the time `render()` is called. - const container = document.getElementById('tabs-bar__portal'); - if (container === null) { - // The container wasn't available, force a re-render so that the - // component can eventually be inserted in the container and not scroll - // with the rest of the area. - this.forceUpdate(); - return component; - } else { - return createPortal(component, container); - } - } - } - -} |