summaryrefslogtreecommitdiffstats
path: root/webapp/components/emoji_picker/emoji_picker_overlay.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/components/emoji_picker/emoji_picker_overlay.jsx')
-rw-r--r--webapp/components/emoji_picker/emoji_picker_overlay.jsx73
1 files changed, 0 insertions, 73 deletions
diff --git a/webapp/components/emoji_picker/emoji_picker_overlay.jsx b/webapp/components/emoji_picker/emoji_picker_overlay.jsx
deleted file mode 100644
index 7174e004c..000000000
--- a/webapp/components/emoji_picker/emoji_picker_overlay.jsx
+++ /dev/null
@@ -1,73 +0,0 @@
-// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
-// See License.txt for license information.
-
-import React from 'react';
-import PropTypes from 'prop-types';
-import {Overlay} from 'react-bootstrap';
-
-import EmojiPicker from './emoji_picker.jsx';
-
-export default class EmojiPickerOverlay extends React.PureComponent {
- static propTypes = {
- show: PropTypes.bool.isRequired,
- container: PropTypes.func,
- target: PropTypes.func.isRequired,
- onEmojiClick: PropTypes.func.isRequired,
- onHide: PropTypes.func.isRequired,
- rightOffset: PropTypes.number,
- topOffset: PropTypes.number,
- spaceRequiredAbove: PropTypes.number,
- spaceRequiredBelow: PropTypes.number
- }
-
- // Reasonable defaults calculated from from the center channel
- static defaultProps = {
- spaceRequiredAbove: 422,
- spaceRequiredBelow: 436
- }
-
- constructor(props) {
- super(props);
-
- this.state = {
- placement: 'top'
- };
- }
-
- componentWillUpdate(nextProps) {
- if (nextProps.show && !this.props.show) {
- const targetBounds = nextProps.target().getBoundingClientRect();
-
- let placement;
- if (targetBounds.top > nextProps.spaceRequiredAbove) {
- placement = 'top';
- } else if (window.innerHeight - targetBounds.bottom > nextProps.spaceRequiredBelow) {
- placement = 'bottom';
- } else {
- placement = 'left';
- }
-
- this.setState({placement});
- }
- }
-
- render() {
- return (
- <Overlay
- show={this.props.show}
- placement={this.state.placement}
- rootClose={true}
- container={this.props.container}
- onHide={this.props.onHide}
- target={this.props.target}
- animation={false}
- >
- <EmojiPicker
- onEmojiClick={this.props.onEmojiClick}
- rightOffset={this.props.rightOffset}
- topOffset={this.props.topOffset}
- />
- </Overlay>
- );
- }
-}