All Versions
Latest Version
Avg Release Cycle
49 days
Latest Release
81 days ago

Changelog History
Page 1

  • v0.18.3

    March 16, 2020

    🛠 Bugfixes

    • Fix shouldComponentUpdate interfering with droppability (#1152)

    Internal Changes

    • New Enzyme test suite added to prevent regression. If you have time, we could really use more test cases that reflect your use cases!
  • v0.18.2

    February 26, 2020

    🛠 Bugfixes

    • shouldComponentUpdate:
      • A too-aggressive implementation of shouldComponentUpdate was shipped in 0.18.0-0.18.1 (#1123), which did not compare the children object. While this works well in many simple implementations of RGL, it breaks in more complex applications.
      • Reference equality of props.children and nextProps.children is now added to <ReactGridLayout> and <GridItem>. If you wish to take advantage of the performance improvements from the shouldComponentUpdate work, memoize your children.
      • A section has been added to the README explaining how this works.
      • Fixed #1150, #1151.
  • v0.18.1

    February 25, 2020

    🚀 This release contains typedef changes only.

    🛠 Bugfixes

    • Flow types:
      • Make Props to <ReactGridLayout> and <ResponsiveReactGridLayout> exact.
      • Fix loss of props refinement when passing through WidthProvider.
      • Fix Flow errors as surfaced in #1138.
      • Modify examples to use types so that the above type error can't resurface
  • v0.18.0

    February 25, 2020

    🛠 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).
  • v0.17.1

    October 29, 2019

    🛠 Bugfixes

    • 🤡 Surround navigator check in try/catch to avoid problems with mocked navigators #1057
    • TransformScale is not applied properly while dragging an element #1046
  • v0.17.0

    October 24, 2019

    🚀 It's been 18 months since the last release, and this is a pretty large one! For references on the items below, see

    Thanks to @daynin and @n1ghtmare for taking an active role in maintaining RGL, and for giving it a much-needed shot in the arm, and thanks to the rest of our contributors.

    🆕 New Features

    • ➕ Added ability to drag items into the grid from outside. #980. See the example.
      • This is especially exciting as it opens up new "widget toolbox" use cases such as Example 14 with more intuitive interaction. Thanks @daynin.
    • transformScale prop #987
    • 📱 <ResponsiveReactGridLayout> now supports margin-per-breakpoint #1016

    🛠 Bugfixes

    • onWidthChange only called on breakpoint changes #770
    • 🚚 Various movement bugs when compaction is off #766
    • Don't fire onDragStop if an item is only clicked, not dragged #1023
    • 🛠 Fix infinite loop when dragging over a static element. #1019

    ♻️ Internal Refactors

  • v0.16.6

    March 08, 2018
    • 🛠 Fixed collision issue where items below could rearrange on a move.
      • The root cause was "teleportation", or practically the same bug that leads to Pac-Man going through ghosts now and then. If a large element moves up by a few grid units, the space it vacates can suddenly become occupiable by an element below it. Rather than the collision happening properly, they exchange spaces atomically. The fix is to move items down one grid unit at a time to ensure this rearrangement does not happen.
      • Thanks @torkelo for your hard work on this for Grafana 5, which I very unfortunately managed to break when refactoring for 0.16.1.
      • Ref: #650, #739
    • ➕ Added a "Toolbox" demo (thanks @jhob)
  • v0.16.5

    February 26, 2018
    • Minor fix to isUserAction on certain types of compaction cascades (#714, #720, #729)
  • v0.16.4

    February 16, 2018
    • Skip null items in processGridItem (#578)
    • 🛠 Resize is broken for grids with preventCollision: true, fixes #655 (#656)
    • ♻️ Minor refactoring
  • v0.16.3

    February 01, 2018
    • 🛠 Fix overriding of onStart behaviour (#707, thanks @ersel)
    • 🛠 Fixed Flow type of WidthProvider
    • ⚡️ Devdep updates