diff options
Diffstat (limited to 'src/settings/components/form')
-rw-r--r-- | src/settings/components/form/BlacklistForm.jsx | 13 | ||||
-rw-r--r-- | src/settings/components/form/KeymapsForm.jsx | 1 | ||||
-rw-r--r-- | src/settings/components/form/PropertiesForm.jsx | 1 | ||||
-rw-r--r-- | src/settings/components/form/SearchForm.jsx | 11 |
4 files changed, 22 insertions, 4 deletions
diff --git a/src/settings/components/form/BlacklistForm.jsx b/src/settings/components/form/BlacklistForm.jsx index cf7cffe..c470758 100644 --- a/src/settings/components/form/BlacklistForm.jsx +++ b/src/settings/components/form/BlacklistForm.jsx @@ -13,9 +13,13 @@ class BlacklistForm extends React.Component { return <div key={index} className='form-blacklist-form-row'> <input data-index={index} type='text' name='url' className='column-url' value={url} - onChange={this.bindValue.bind(this)} /> + onChange={this.bindValue.bind(this)} + onBlur={this.props.onBlur} + /> <DeleteButton data-index={index} name='delete' - onClick={this.bindValue.bind(this)} /> + onClick={this.bindValue.bind(this)} + onBlur={this.props.onBlur} + /> </div>; }) } @@ -38,17 +42,22 @@ class BlacklistForm extends React.Component { } this.props.onChange(next); + if (name === 'delete') { + this.props.onBlur(); + } } } BlacklistForm.propTypes = { value: PropTypes.arrayOf(PropTypes.string), onChange: PropTypes.func, + onBlur: PropTypes.func, }; BlacklistForm.defaultProps = { value: [], onChange: () => {}, + onBlur: () => {}, }; export default BlacklistForm; diff --git a/src/settings/components/form/KeymapsForm.jsx b/src/settings/components/form/KeymapsForm.jsx index 5bb65cb..01acf61 100644 --- a/src/settings/components/form/KeymapsForm.jsx +++ b/src/settings/components/form/KeymapsForm.jsx @@ -20,6 +20,7 @@ class KeymapsForm extends React.Component { type='text' id={name} name={name} key={name} label={label} value={value} onChange={this.bindValue.bind(this)} + onBlur={this.props.onBlur} />; }) } diff --git a/src/settings/components/form/PropertiesForm.jsx b/src/settings/components/form/PropertiesForm.jsx index 0014899..979fdd8 100644 --- a/src/settings/components/form/PropertiesForm.jsx +++ b/src/settings/components/form/PropertiesForm.jsx @@ -27,6 +27,7 @@ class PropertiesForm extends React.Component { className='column-input' value={value[name] ? value[name] : ''} onChange={this.bindValue.bind(this)} + onBlur={this.props.onBlur} checked={value[name]} /> </label> diff --git a/src/settings/components/form/SearchForm.jsx b/src/settings/components/form/SearchForm.jsx index d2f2d48..6b0bd01 100644 --- a/src/settings/components/form/SearchForm.jsx +++ b/src/settings/components/form/SearchForm.jsx @@ -23,11 +23,15 @@ class SearchForm extends React.Component { return <div key={index} className='form-search-form-row'> <input data-index={index} type='text' name='name' className='column-name' value={engine[0]} - onChange={this.bindValue.bind(this)} /> + onChange={this.bindValue.bind(this)} + onBlur={this.props.onBlur} + /> <input data-index={index} type='text' name='url' placeholder='http://example.com/?q={}' className='column-url' value={engine[1]} - onChange={this.bindValue.bind(this)} /> + onChange={this.bindValue.bind(this)} + onBlur={this.props.onBlur} + /> <div className='column-option'> <input data-index={index} type='radio' name='default' checked={value.default === engine[0]} @@ -66,6 +70,9 @@ class SearchForm extends React.Component { } this.props.onChange(next); + if (name === 'delete' || name === 'default') { + this.props.onBlur(); + } } } |