mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
Added support to drag and drop text into the main textbox or RHS textbox
This commit is contained in:
@@ -28,6 +28,7 @@ export default class CreateComment extends React.Component {
|
||||
this.handleUploadStart = this.handleUploadStart.bind(this);
|
||||
this.handleFileUploadComplete = this.handleFileUploadComplete.bind(this);
|
||||
this.handleUploadError = this.handleUploadError.bind(this);
|
||||
this.handleTextDrop = this.handleTextDrop.bind(this);
|
||||
this.removePreview = this.removePreview.bind(this);
|
||||
this.handleSubmit = this.handleSubmit.bind(this);
|
||||
this.getFileCount = this.getFileCount.bind(this);
|
||||
@@ -178,6 +179,11 @@ export default class CreateComment extends React.Component {
|
||||
this.setState({serverError: err});
|
||||
}
|
||||
}
|
||||
handleTextDrop(text) {
|
||||
const originalText = this.state.messageText;
|
||||
this.setState({messageText: originalText + text});
|
||||
React.findDOMNode(this.refs.textbox).focus();
|
||||
}
|
||||
removePreview(id) {
|
||||
let previews = this.state.previews;
|
||||
let uploadsInProgress = this.state.uploadsInProgress;
|
||||
@@ -264,6 +270,7 @@ export default class CreateComment extends React.Component {
|
||||
onUploadStart={this.handleUploadStart}
|
||||
onFileUpload={this.handleFileUploadComplete}
|
||||
onUploadError={this.handleUploadError}
|
||||
onTextDrop={this.handleTextDrop}
|
||||
postType='comment'
|
||||
channelId={this.props.channelId}
|
||||
/>
|
||||
|
||||
@@ -31,6 +31,7 @@ export default class CreatePost extends React.Component {
|
||||
this.handleUploadStart = this.handleUploadStart.bind(this);
|
||||
this.handleFileUploadComplete = this.handleFileUploadComplete.bind(this);
|
||||
this.handleUploadError = this.handleUploadError.bind(this);
|
||||
this.handleTextDrop = this.handleTextDrop.bind(this);
|
||||
this.removePreview = this.removePreview.bind(this);
|
||||
this.onChange = this.onChange.bind(this);
|
||||
this.getFileCount = this.getFileCount.bind(this);
|
||||
@@ -230,6 +231,11 @@ export default class CreatePost extends React.Component {
|
||||
this.setState({serverError: err});
|
||||
}
|
||||
}
|
||||
handleTextDrop(text) {
|
||||
const originalText = this.state.messageText;
|
||||
this.setState({messageText: originalText + text});
|
||||
React.findDOMNode(this.refs.textbox).focus();
|
||||
}
|
||||
removePreview(id) {
|
||||
let previews = this.state.previews;
|
||||
let uploadsInProgress = this.state.uploadsInProgress;
|
||||
@@ -334,6 +340,7 @@ export default class CreatePost extends React.Component {
|
||||
onUploadStart={this.handleUploadStart}
|
||||
onFileUpload={this.handleFileUploadComplete}
|
||||
onUploadError={this.handleUploadError}
|
||||
onTextDrop={this.handleTextDrop}
|
||||
postType='post'
|
||||
channelId=''
|
||||
/>
|
||||
|
||||
@@ -110,7 +110,7 @@ export default class FileUpload extends React.Component {
|
||||
if (typeof files !== 'string' && files.length) {
|
||||
this.uploadFiles(files);
|
||||
} else {
|
||||
this.props.onUploadError('Invalid file upload', -1);
|
||||
this.props.onTextDrop(e.originalEvent.dataTransfer.getData('Text'));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -266,6 +266,7 @@ FileUpload.propTypes = {
|
||||
getFileCount: React.PropTypes.func,
|
||||
onFileUpload: React.PropTypes.func,
|
||||
onUploadStart: React.PropTypes.func,
|
||||
onTextDrop: React.PropTypes.func,
|
||||
channelId: React.PropTypes.string,
|
||||
postType: React.PropTypes.string
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user