Fix poor typing performance on iOS devices.
Этот коммит содержится в:
@@ -117,7 +117,6 @@ export default class CreatePost extends React.Component {
|
|||||||
|
|
||||||
Client.createPost(post, channel,
|
Client.createPost(post, channel,
|
||||||
function handlePostSuccess(data) {
|
function handlePostSuccess(data) {
|
||||||
this.resizePostHolder();
|
|
||||||
AsyncClient.getPosts();
|
AsyncClient.getPosts();
|
||||||
|
|
||||||
let member = ChannelStore.getMember(channel.id);
|
let member = ChannelStore.getMember(channel.id);
|
||||||
@@ -129,7 +128,7 @@ export default class CreatePost extends React.Component {
|
|||||||
type: ActionTypes.RECIEVED_POST,
|
type: ActionTypes.RECIEVED_POST,
|
||||||
post: data
|
post: data
|
||||||
});
|
});
|
||||||
}.bind(this),
|
},
|
||||||
function handlePostError(err) {
|
function handlePostError(err) {
|
||||||
let state = {};
|
let state = {};
|
||||||
|
|
||||||
@@ -149,9 +148,6 @@ export default class CreatePost extends React.Component {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
componentDidUpdate() {
|
|
||||||
this.resizePostHolder();
|
|
||||||
}
|
|
||||||
postMsgKeyPress(e) {
|
postMsgKeyPress(e) {
|
||||||
if (e.which === 13 && !e.shiftKey && !e.altKey) {
|
if (e.which === 13 && !e.shiftKey && !e.altKey) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
@@ -166,7 +162,6 @@ export default class CreatePost extends React.Component {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
handleUserInput(messageText) {
|
handleUserInput(messageText) {
|
||||||
this.resizePostHolder();
|
|
||||||
this.setState({messageText: messageText});
|
this.setState({messageText: messageText});
|
||||||
|
|
||||||
let draft = PostStore.getCurrentDraft();
|
let draft = PostStore.getCurrentDraft();
|
||||||
@@ -317,6 +312,7 @@ export default class CreatePost extends React.Component {
|
|||||||
<Textbox
|
<Textbox
|
||||||
onUserInput={this.handleUserInput}
|
onUserInput={this.handleUserInput}
|
||||||
onKeyPress={this.postMsgKeyPress}
|
onKeyPress={this.postMsgKeyPress}
|
||||||
|
onHeightChange={this.resizePostHolder}
|
||||||
messageText={this.state.messageText}
|
messageText={this.state.messageText}
|
||||||
createMessage='Write a message...'
|
createMessage='Write a message...'
|
||||||
channelId={this.state.channelId}
|
channelId={this.state.channelId}
|
||||||
|
|||||||
@@ -121,7 +121,6 @@ export default class Textbox extends React.Component {
|
|||||||
}
|
}
|
||||||
this.addedMention = false;
|
this.addedMention = false;
|
||||||
this.refs.commands.getSuggestedCommands(nextProps.messageText);
|
this.refs.commands.getSuggestedCommands(nextProps.messageText);
|
||||||
this.resize();
|
|
||||||
}
|
}
|
||||||
updateMentionTab(mentionText) {
|
updateMentionTab(mentionText) {
|
||||||
// using setTimeout so dispatch isn't called during an in progress dispatch
|
// using setTimeout so dispatch isn't called during an in progress dispatch
|
||||||
@@ -135,7 +134,6 @@ export default class Textbox extends React.Component {
|
|||||||
}
|
}
|
||||||
handleChange() {
|
handleChange() {
|
||||||
this.props.onUserInput(React.findDOMNode(this.refs.message).value);
|
this.props.onUserInput(React.findDOMNode(this.refs.message).value);
|
||||||
this.resize();
|
|
||||||
}
|
}
|
||||||
handleKeyPress(e) {
|
handleKeyPress(e) {
|
||||||
const text = React.findDOMNode(this.refs.message).value;
|
const text = React.findDOMNode(this.refs.message).value;
|
||||||
@@ -244,6 +242,8 @@ export default class Textbox extends React.Component {
|
|||||||
const e = React.findDOMNode(this.refs.message);
|
const e = React.findDOMNode(this.refs.message);
|
||||||
const w = React.findDOMNode(this.refs.wrapper);
|
const w = React.findDOMNode(this.refs.wrapper);
|
||||||
|
|
||||||
|
let prevHeight = $(e).height();
|
||||||
|
|
||||||
const lht = parseInt($(e).css('lineHeight'), 10);
|
const lht = parseInt($(e).css('lineHeight'), 10);
|
||||||
const lines = e.scrollHeight / lht;
|
const lines = e.scrollHeight / lht;
|
||||||
let mod = 15;
|
let mod = 15;
|
||||||
@@ -259,6 +259,10 @@ export default class Textbox extends React.Component {
|
|||||||
$(e).css({height: 'auto', 'overflow-y': 'scroll'}).height(167);
|
$(e).css({height: 'auto', 'overflow-y': 'scroll'}).height(167);
|
||||||
$(w).css({height: 'auto'}).height(167);
|
$(w).css({height: 'auto'}).height(167);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (prevHeight !== $(e).height()) {
|
||||||
|
this.props.onHeightChange();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
handleFocus() {
|
handleFocus() {
|
||||||
const elm = React.findDOMNode(this.refs.message);
|
const elm = React.findDOMNode(this.refs.message);
|
||||||
@@ -316,5 +320,6 @@ Textbox.propTypes = {
|
|||||||
messageText: React.PropTypes.string.isRequired,
|
messageText: React.PropTypes.string.isRequired,
|
||||||
onUserInput: React.PropTypes.func.isRequired,
|
onUserInput: React.PropTypes.func.isRequired,
|
||||||
onKeyPress: React.PropTypes.func.isRequired,
|
onKeyPress: React.PropTypes.func.isRequired,
|
||||||
|
onHeightChange: React.PropTypes.func.isRequired,
|
||||||
createMessage: React.PropTypes.string.isRequired
|
createMessage: React.PropTypes.string.isRequired
|
||||||
};
|
};
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user