diff --git a/HISTORY.md b/HISTORY.md index 9d3de4fc..ecb2ede3 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,6 +1,8 @@ # History ---- +- Add `openFileDialogOnEnter`. + ### 2.6.0 / 2018-09-21 - Add `openFileDialogOnClick`. diff --git a/README.md b/README.md index 8950d08c..d7d436ad 100644 --- a/README.md +++ b/README.md @@ -74,6 +74,7 @@ React.render(, container); |customRequest | function | null | provide an override for the default xhr behavior for additional customization| |withCredentials | boolean | false | ajax upload with cookie send | |openFileDialogOnClick | boolean | true | | +|openFileDialogOnEnter | boolean | true | useful for drag only upload as it does not trigger on enter key | #### onError arguments diff --git a/src/AjaxUploader.jsx b/src/AjaxUploader.jsx index 6bcda5a8..48be6d29 100644 --- a/src/AjaxUploader.jsx +++ b/src/AjaxUploader.jsx @@ -35,6 +35,7 @@ class AjaxUploader extends Component { onProgress: PropTypes.func, withCredentials: PropTypes.bool, openFileDialogOnClick: PropTypes.bool, + openFileDialogOnEnter: PropTypes.bool, } state = { uid: getUid() } @@ -200,6 +201,7 @@ class AjaxUploader extends Component { const { component: Tag, prefixCls, className, disabled, id, style, multiple, accept, children, directory, openFileDialogOnClick, + openFileDialogOnEnter, } = this.props; const cls = classNames({ [prefixCls]: true, @@ -207,8 +209,8 @@ class AjaxUploader extends Component { [className]: className, }); const events = disabled ? {} : { - onClick: openFileDialogOnClick ? this.onClick : () => { }, - onKeyDown: this.onKeyDown, + onClick: openFileDialogOnClick ? this.onClick: () => { }, + onKeyDown: openFileDialogOnEnter ? this.onKeyDown: () => { }, onDrop: this.onFileDrop, onDragOver: this.onFileDrop, tabIndex: '0', diff --git a/src/Upload.jsx b/src/Upload.jsx index 34e4d817..95e0fe61 100644 --- a/src/Upload.jsx +++ b/src/Upload.jsx @@ -36,6 +36,7 @@ class Upload extends Component { withCredentials: PropTypes.bool, supportServerRender: PropTypes.bool, openFileDialogOnClick: PropTypes.bool, + openFileDialogOnEnter: PropTypes.bool, } static defaultProps = { @@ -55,6 +56,7 @@ class Upload extends Component { customRequest: null, withCredentials: false, openFileDialogOnClick: true, + openFileDialogOnEnter: true, } state = {