react-grid-layout v0.18.0 Release Notes

Release Date: 2020-02-25 // almost 2 years ago
  • 🛠 Thanks to all of our maintainers for this big release. 0.18.0 contains a large number of bugfixes that users have been asking for. Please read the full list so you know what to expect. Some of the biggest improvements include fixing changes of isResizable/isDraggable without a remount (#892), fixes to prop changes on ResponsiveReactGridLayout (#1090), shouldComponentUpdate improvements for speed (#1123), improvements to droppability (#1127), and much more.

    (Potentially) Breaking Changes

    • You can now locally set isDraggable/isResizable on a static item and it will have that property. This could be useful, but be sure to check your layouts if you use static. Relates to #1060.
    • ⚡️ shouldComponentUpdate is now implemented on major components to improve render speed while you manipulate the layout. In our testing there are no issues. If you encounter one, please open an issue asap and we'll get it fixed. See #1123.

    🆕 New Features

    • You can now manipulate isDraggable/isResizable without the child component remounting. We do this by always rendering the child <Resizable> and <Draggable> wrappers, optionally in a disabled state. This feature has been heavily requested. #892
    • The event is now passed as e on the onDrop callback. #1065
    • Pass transformScale to Resizable. #1075

    🛠 Bugfixes

    • 🛠 Fix handling of width changes in ResponsiveReactGridLayout. #1090
      • Fixes ignored changes of breakpoints and columns. See also issue #1083.
    • Forbid layout change on click without drag. #1044
    • Do not mutate layouts prop. #1064
    • Ensure locally set isDraggable/isResizable on a GridItem overrides the global setting on the layout. #1060
    • Avoid additional element jumping when an item is dropped. #1127
    • ✅ Don't use String#includes for Firefox test. #1096

    ♻️ Internal Refactors

    • ➕ Added shouldComponentUpdate to major elements for speed. Significant performance improvements while dragging. Started in #1032 and finished in #1123.
    • ♻️ Internal refactor of dropping capability. It is now more predictable and uses similar unit labels (left, top) to other features. #1128
    • ⬆️ Upgrade devDependencies.
    • ✂ Remove ESPower from test suite (not useful with Jest).