- Fix
user-selectprefixing, which may be different than the prefix required fortransform.
- Republish after 1.3.5 contained a bundling error.
- Add React v15 to devDeps.
<Draggable>supports bothv0.14andv15. - Enhancement: Clean up usage of browser prefixes; modern browsers will no longer use them.
- This also removes the duplicated
user-selectstyle that is created on the<body>while dragging.
- This also removes the duplicated
- Internal: Test fixes.
- Bugfix: Scrolling while dragging caused items to move unpredictably.
- Bugfix: #116: Android/Chrome are finicky; give up on canceling ghost clicks entirely.
- Bugfix: #116: Child inputs not focusing on touch events.
- Internal: Babel 6 and Flow definitions
- Bugfix: 1.3.0 broke string bounds ('parent', selectors, etc.).
- Bugfix: 1.3.0 wasn't updating deltaX and deltaY on a bounds hit.
- Possibly breaking change: bounds are calculated before
<Draggable>firesdragevents, as they should have been. - Added
'none'axis type. This allows using<Draggable>somewhat like<DraggableCore>- state will be kept internally (which makes bounds checks etc possible), but updates will not be flushed to the DOM. - Performance tweaks.
- Added arbitrary boundary selector. Now you don't have to just use
'parent', you can select any element on the page, including'body'. - Bugfix: Prevent invariant if a
<Draggable>is unmounted while dragging. - Bugfix: Fix #133, where items would eagerly start dragging off the mouse cursor if you hit boundaries and
came back. This is due to how
<DraggableCore>handles deltas only and does not keep state. Added new state propertiesslackXandslackYto<Draggable>to handle this and restore pre-v1 behavior.
- Bugfix: Server-side rendering with react-rails, which does bad things like mock
window
- Bugfix:
<Draggable>was calling back with clientX/Y, not offsetX/Y as it did pre-1.0. This unintended behavior has been fixed and a test has been added.
- Bugfix: Clean up scroll events if a component is unmounted before drag stops.
- Bugfix:
NaNwas returning from scroll events due to event structure change. - Add scroll drag modulation test.
- Move
gridinto<DraggableCore>directly. It will continue to work on<Draggable>. - Development fixes.
- Fix
enableUserSelectHacknot properly disabling. - Fix a crash when the user scrolls the page with a Draggable active.
- Fix missing dist files for webpack.
- Ignore non-primary clicks. Added
allowAnyClickoption to allow other click types.
- Breaking: Removed
resetState()instance method - Breaking: Removed
moveOnStartChangeprop - Breaking: React
0.14support only. - Refactored project.
- Module now exports a
<DraggableCore>element upon which<Draggable>is based. This module is useful for building libraries and is completely stateless.
- Bugfix: isElementSVG no longer can be overwritten by getInitialState (#83)
- Bugfix: Fix for element prefixes in JSDOM
- Bugfix: SVG elements now properly use
transformattribute instead ofstyle. Thanks @martinRoss
- Bugfix: Short-circuiting drag throws due to
e.changedTouchescheck.
- Handle scrolling while dragging. (#60)
- Add multi-touch support. (#68)
- IE fixes.
- Documentation updates. (#77)
- Add
resetState()instance method for use by parents. See README ("State Problems?").
- Touch/mouse events rework. Fixes #51, #37, and #43, as well as IE11 support.
- Moved mousemove/mouseup and touch event handlers to document from window. Fixes IE9/10 support. IE8 is still not supported, as it is not supported by React.
- Fix a bug where a quick drag out of bounds to
0,0would cause the element to remain in an inaccurate position, because the translation was removed from the CSS. See #55.
- Removed a
moveOnStartChangeoptimization that was causing problems when attempting to move a<Draggable>back to its initial position. See react-grid-layout/react-grid-layout#56
- Added
moveOnStartChangeproperty. See README.
- The
startparam is back. Pass{x: Number, y: Number}to kickoff the CSS transform. Useful in certain cases for simpler callback math (so you don't have to know its existing relative position and add it to the dragged position). Fixes #52.
- Breaking change:
boundswith coordinates was confusing because it was using the item's width/height, which was not intuitive. When providing coordinates,boundsnow simply restricts movement in each direction by that many pixels.
- Breaking change: Cancel dragging when onDrag or onStart handlers return an explicit
false. - Fix sluggish movement when
gridoption was active. - Example updates.
- Move
user-select:nonehack to document.body for better highlight prevention. - Add
boundsoption to restrict dragging within parent or within coordinates.
- Remove browserify browser config, reactify, and jsx pragma. Fixes #38
- Use React.cloneElement instead of addons cloneWithProps (requires React 0.13)
- Move to CSS transforms. Simplifies implementation and fixes #48, #34, #31.
- Fixup linting and space/tab errors. Fixes #46.
- Fix React.addons error caused by faulty test.
- Add
"browser"config to package.json for browserify imports (fix #45). - Remove unnecessary
emptyFunctionandReact.addons.classSetimports.
- Remove react/addons dependency (now depending on
reactdirectly). - Add MIT License file.
- Fix an issue where browser may be detected as touch-enabled but touch event isn't thrown.
- Improving accuracy of snap to grid
- Updating to React 0.12
- Adding dragging className
- Adding reactify support for browserify
- Fixing issue with server side rendering
- Adding support for touch devices
- Exporting as ReactDraggable
- Adding support for snapping to a grid
- Adding support for specifying start position
- Ensure event handlers are destroyed on unmount
- Adding browserify support
- Adding bower support
- Fixing dragging not stopping on mouseup in some cases
- Initial release