Merge pull request #3456 from ethcore/ng-paste-input-submit
Adds onPaste event to Inputs
This commit is contained in:
commit
06112255ae
@ -227,6 +227,7 @@ export default class AddContract extends Component {
|
|||||||
onEditAbi = (abiIn) => {
|
onEditAbi = (abiIn) => {
|
||||||
const { api } = this.context;
|
const { api } = this.context;
|
||||||
const { abi, abiError, abiParsed } = validateAbi(abiIn, api);
|
const { abi, abiError, abiParsed } = validateAbi(abiIn, api);
|
||||||
|
|
||||||
this.setState({ abi, abiError, abiParsed });
|
this.setState({ abi, abiError, abiParsed });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
import React, { Component, PropTypes } from 'react';
|
import React, { Component, PropTypes } from 'react';
|
||||||
import { TextField } from 'material-ui';
|
import { TextField } from 'material-ui';
|
||||||
|
import { noop } from 'lodash';
|
||||||
|
|
||||||
import CopyToClipboard from '../../CopyToClipboard';
|
import CopyToClipboard from '../../CopyToClipboard';
|
||||||
|
|
||||||
@ -81,7 +82,7 @@ export default class Input extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
componentWillReceiveProps (newProps) {
|
componentWillReceiveProps (newProps) {
|
||||||
if (newProps.value !== this.props.value) {
|
if ((newProps.value !== this.props.value) && (newProps.value !== this.state.value)) {
|
||||||
this.setValue(newProps.value);
|
this.setValue(newProps.value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -131,6 +132,7 @@ export default class Input extends Component {
|
|||||||
onBlur={ this.onBlur }
|
onBlur={ this.onBlur }
|
||||||
onChange={ this.onChange }
|
onChange={ this.onChange }
|
||||||
onKeyDown={ this.onKeyDown }
|
onKeyDown={ this.onKeyDown }
|
||||||
|
onPaste={ this.onPaste }
|
||||||
inputStyle={ inputStyle }
|
inputStyle={ inputStyle }
|
||||||
min={ min }
|
min={ min }
|
||||||
max={ max }
|
max={ max }
|
||||||
@ -180,9 +182,9 @@ export default class Input extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onChange = (event, value) => {
|
onChange = (event, value) => {
|
||||||
this.setValue(value);
|
this.setValue(value, () => {
|
||||||
|
this.props.onChange && this.props.onChange(event, value);
|
||||||
this.props.onChange && this.props.onChange(event, value);
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
onBlur = (event) => {
|
onBlur = (event) => {
|
||||||
@ -196,6 +198,14 @@ export default class Input extends Component {
|
|||||||
this.props.onBlur && this.props.onBlur(event);
|
this.props.onBlur && this.props.onBlur(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
onPaste = (event) => {
|
||||||
|
const value = event.clipboardData.getData('Text');
|
||||||
|
|
||||||
|
window.setTimeout(() => {
|
||||||
|
this.onSubmit(value);
|
||||||
|
}, 0);
|
||||||
|
}
|
||||||
|
|
||||||
onKeyDown = (event) => {
|
onKeyDown = (event) => {
|
||||||
const { value } = event.target;
|
const { value } = event.target;
|
||||||
|
|
||||||
@ -209,12 +219,12 @@ export default class Input extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onSubmit = (value) => {
|
onSubmit = (value) => {
|
||||||
this.setValue(value);
|
this.setValue(value, () => {
|
||||||
|
this.props.onSubmit && this.props.onSubmit(value);
|
||||||
this.props.onSubmit && this.props.onSubmit(value);
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
setValue (value) {
|
setValue (value, cb = noop) {
|
||||||
this.setState({ value });
|
this.setState({ value }, cb);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user