From 3386c58d7c53131f0aa435abaf4cbb521d2f6049 Mon Sep 17 00:00:00 2001 From: David Lu Date: Thu, 2 Jun 2016 15:36:54 -0700 Subject: Made all settings save on enter (#3221) --- webapp/components/admin_console/admin_settings.jsx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'webapp/components/admin_console') diff --git a/webapp/components/admin_console/admin_settings.jsx b/webapp/components/admin_console/admin_settings.jsx index d76e1331a..6765dd069 100644 --- a/webapp/components/admin_console/admin_settings.jsx +++ b/webapp/components/admin_console/admin_settings.jsx @@ -8,6 +8,7 @@ import Client from 'utils/web_client.jsx'; import FormError from 'components/form_error.jsx'; import SaveButton from 'components/admin_console/save_button.jsx'; +import Constants from 'utils/constants.jsx'; export default class AdminSettings extends React.Component { static get propTypes() { @@ -21,6 +22,7 @@ export default class AdminSettings extends React.Component { this.handleChange = this.handleChange.bind(this); this.handleSubmit = this.handleSubmit.bind(this); + this.onKeyDown = this.onKeyDown.bind(this); this.state = { saveNeeded: false, @@ -36,6 +38,20 @@ export default class AdminSettings extends React.Component { }); } + componentDidMount() { + document.addEventListener('keydown', this.onKeyDown); + } + + componentWillUnmount() { + document.removeEventListener('keydown', this.onKeyDown); + } + + onKeyDown(e) { + if (e.keyCode === Constants.KeyCodes.ENTER) { + this.handleSubmit(e); + } + } + handleSubmit(e) { e.preventDefault(); -- cgit v1.2.3-1-g7c22