There are problems with text inputs inside components that have the HTML5 attribute draggable
set to true
in Firefox (because of this known bug). I'm working on setting draggable
to false
in an onFocus
handler and setting it back to true
in an onBlur
handler (as recommended here), but react-dnd has no support for such a workaround and the attribute is immediately set back to true
.
Given that there doesn't seem to be progress on this bug in FireFox, is there room for a shim in react-dnd to handle this? I'll update this issue if I come up with a good solution regardless.
The root of this might be #256
For now I'm working off of a fork that allows me to manage the draggable
attribute directly in my app.
Thanks. I'm currently busy with some other projects.
If any of these PRs help you, let me know too: https://github.com/gaearon/react-dnd/pulls
Please don't forget HTML5 backend is only included as a convenience.
You can publish your fixed version on NPM (it's a single file) but still use the main repo for everything else.
You should be able to work around this bug by toggling a state variable in onFocus
and onBlur
, and changing your render
function to _not_ call connectDragSource()
during input:
render() {
const element = <div><textarea onFocus=... /></div>;
return this.state.editing ? element : this.props.connectDragSource(element);
}
Most helpful comment
You should be able to work around this bug by toggling a state variable in
onFocus
andonBlur
, and changing yourrender
function to _not_ callconnectDragSource()
during input: