summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarrison Healey <harrisonmhealey@gmail.com>2017-01-04 14:11:37 -0500
committerGitHub <noreply@github.com>2017-01-04 14:11:37 -0500
commitb3f2ab654e95325b556e0c93b41ea6e15e45fffe (patch)
tree9337fe185938d66a8cc24ebf64f6a23b81415757
parent95172f1b4baef4808b86da20a74ab4e96cfbb661 (diff)
downloadchat-b3f2ab654e95325b556e0c93b41ea6e15e45fffe.tar.gz
chat-b3f2ab654e95325b556e0c93b41ea6e15e45fffe.tar.bz2
chat-b3f2ab654e95325b556e0c93b41ea6e15e45fffe.zip
Made Edit Post Modal autocomplete always attach to the bottom of the textarea (#4956)
-rw-r--r--webapp/components/channel_switch_modal.jsx2
-rw-r--r--webapp/components/edit_post_modal.jsx1
-rw-r--r--webapp/components/textbox.jsx36
-rw-r--r--webapp/sass/components/_modal.scss10
-rw-r--r--webapp/sass/components/_suggestion-list.scss5
5 files changed, 32 insertions, 22 deletions
diff --git a/webapp/components/channel_switch_modal.jsx b/webapp/components/channel_switch_modal.jsx
index 674725d88..2f8595c78 100644
--- a/webapp/components/channel_switch_modal.jsx
+++ b/webapp/components/channel_switch_modal.jsx
@@ -126,7 +126,7 @@ export default class SwitchChannelModal extends React.Component {
const message = this.state.error;
return (
<Modal
- className='modal-browse-channel'
+ dialogClassName='channel-switch-modal'
ref='modal'
show={this.props.show}
onHide={this.onHide}
diff --git a/webapp/components/edit_post_modal.jsx b/webapp/components/edit_post_modal.jsx
index 5f312170f..2108ec3d1 100644
--- a/webapp/components/edit_post_modal.jsx
+++ b/webapp/components/edit_post_modal.jsx
@@ -259,6 +259,7 @@ export default class EditPostModal extends React.Component {
channelId={this.state.channel_id}
createMessage={Utils.localizeMessage('edit_post.editPost', 'Edit the post...')}
supportsCommands={false}
+ suggestionListStyle='bottom'
id='edit_textbox'
ref='editbox'
/>
diff --git a/webapp/components/textbox.jsx b/webapp/components/textbox.jsx
index af3a14683..a1c31d888 100644
--- a/webapp/components/textbox.jsx
+++ b/webapp/components/textbox.jsx
@@ -21,6 +21,24 @@ const PreReleaseFeatures = Constants.PRE_RELEASE_FEATURES;
import React from 'react';
export default class Textbox extends React.Component {
+ static propTypes = {
+ id: React.PropTypes.string.isRequired,
+ channelId: React.PropTypes.string,
+ value: React.PropTypes.string.isRequired,
+ onChange: React.PropTypes.func.isRequired,
+ onKeyPress: React.PropTypes.func.isRequired,
+ createMessage: React.PropTypes.string.isRequired,
+ onKeyDown: React.PropTypes.func,
+ onBlur: React.PropTypes.func,
+ supportsCommands: React.PropTypes.bool.isRequired,
+ handlePostError: React.PropTypes.func,
+ suggestionListStyle: React.PropTypes.string
+ };
+
+ static defaultProps = {
+ supportsCommands: true
+ };
+
constructor(props) {
super(props);
@@ -242,6 +260,7 @@ export default class Textbox extends React.Component {
onHeightChange={this.handleHeightChange}
style={{visibility: this.state.preview ? 'hidden' : 'visible'}}
listComponent={SuggestionList}
+ listStyle={this.props.suggestionListStyle}
providers={this.suggestionProviders}
channelId={this.props.channelId}
value={this.props.value}
@@ -272,20 +291,3 @@ export default class Textbox extends React.Component {
);
}
}
-
-Textbox.defaultProps = {
- supportsCommands: true
-};
-
-Textbox.propTypes = {
- id: React.PropTypes.string.isRequired,
- channelId: React.PropTypes.string,
- value: React.PropTypes.string.isRequired,
- onChange: React.PropTypes.func.isRequired,
- onKeyPress: React.PropTypes.func.isRequired,
- createMessage: React.PropTypes.string.isRequired,
- onKeyDown: React.PropTypes.func,
- onBlur: React.PropTypes.func,
- supportsCommands: React.PropTypes.bool.isRequired,
- handlePostError: React.PropTypes.func
-};
diff --git a/webapp/sass/components/_modal.scss b/webapp/sass/components/_modal.scss
index e23630c3b..f98d23341 100644
--- a/webapp/sass/components/_modal.scss
+++ b/webapp/sass/components/_modal.scss
@@ -24,10 +24,6 @@
min-height: 8em;
}
- .suggestion-list {
- bottom: -149px;
- }
-
.suggestion-list__content {
max-height: 150px;
}
@@ -669,3 +665,9 @@
padding-left: 0;
}
}
+
+.channel-switch-modal {
+ .modal-body {
+ overflow: visible;
+ }
+}
diff --git a/webapp/sass/components/_suggestion-list.scss b/webapp/sass/components/_suggestion-list.scss
index d4cd9ef05..91db7536c 100644
--- a/webapp/sass/components/_suggestion-list.scss
+++ b/webapp/sass/components/_suggestion-list.scss
@@ -11,6 +11,11 @@
bottom: 100%;
}
+.suggestion-list--bottom {
+ position: relative;
+ height: 0;
+}
+
.suggestion-list__content {
background-color: $white;
border: $border-gray;