diff options
Diffstat (limited to 'webapp')
-rw-r--r-- | webapp/components/navbar_dropdown.jsx | 5 | ||||
-rw-r--r-- | webapp/components/user_settings/custom_theme_chooser.jsx | 26 |
2 files changed, 15 insertions, 16 deletions
diff --git a/webapp/components/navbar_dropdown.jsx b/webapp/components/navbar_dropdown.jsx index 87df3848d..ec002bc44 100644 --- a/webapp/components/navbar_dropdown.jsx +++ b/webapp/components/navbar_dropdown.jsx @@ -292,7 +292,10 @@ export default class NavbarDropdown extends React.Component { <li> <a href='#' - onClick={() => this.setState({showUserSettingsModal: true})} + onClick={(e) => { + e.preventDefault(); + this.setState({showUserSettingsModal: true}); + }} > <FormattedMessage id='navbar_dropdown.accountSettings' diff --git a/webapp/components/user_settings/custom_theme_chooser.jsx b/webapp/components/user_settings/custom_theme_chooser.jsx index 958f30c7b..8f95a990d 100644 --- a/webapp/components/user_settings/custom_theme_chooser.jsx +++ b/webapp/components/user_settings/custom_theme_chooser.jsx @@ -99,12 +99,13 @@ const messages = defineMessages({ import React from 'react'; +const HEX_CODE_LENGTH = 7; + class CustomThemeChooser extends React.Component { constructor(props) { super(props); this.onPickerChange = this.onPickerChange.bind(this); - this.onInputChange = this.onInputChange.bind(this); this.pasteBoxChange = this.pasteBoxChange.bind(this); this.toggleContent = this.toggleContent.bind(this); @@ -126,17 +127,16 @@ class CustomThemeChooser extends React.Component { }); } onPickerChange(e) { + const inputBox = e.target.childNodes[0]; + if (document.activeElement === inputBox && inputBox.value.length !== HEX_CODE_LENGTH) { + return; + } + const theme = this.props.theme; theme[e.target.id] = e.color.toHex(); theme.type = 'custom'; this.props.updateTheme(theme); } - onInputChange(e) { - const theme = this.props.theme; - theme[e.target.parentNode.id] = e.target.value; - theme.type = 'custom'; - this.props.updateTheme(theme); - } pasteBoxChange(e) { const text = e.target.value; @@ -225,8 +225,7 @@ class CustomThemeChooser extends React.Component { <select className='form-control' type='text' - value={theme[element.id]} - onChange={this.onInputChange} + defaultValue={theme[element.id]} > {codeThemeOptions} </select> @@ -258,8 +257,7 @@ class CustomThemeChooser extends React.Component { <input className='form-control' type='text' - value={theme[element.id]} - onChange={this.onInputChange} + defaultValue={theme[element.id]} /> <span className='input-group-addon'><i></i></span> </div> @@ -281,8 +279,7 @@ class CustomThemeChooser extends React.Component { <input className='form-control' type='text' - value={theme[element.id]} - onChange={this.onInputChange} + defaultValue={theme[element.id]} /> <span className='input-group-addon'><i></i></span> </div> @@ -304,8 +301,7 @@ class CustomThemeChooser extends React.Component { <input className='form-control' type='text' - value={theme[element.id]} - onChange={this.onInputChange} + defaultValue={theme[element.id]} /> <span className='input-group-addon'><i></i></span> </div> |