NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #1784 most downloaded on pub.dev
Enables animated GridViews when updating children or when trying to reorder them by using drag and drop.
Last release 4 months ago
31 May 2026
Release timing varies
gaps range from 2 weeks to 5 months
Nearly every release is documented
notes for 48 of 48 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
72 releases · first in 2021
added animation curve support to ReorderableAnimationConfig (thanks for the request to WD-J, see #171)
⭐️ New Features
ReorderableAnimationConfig (thanks for the request to WD-J, see #171)positionChangeCurvedraggingPositionChangeCurvereleasedItemCurvefadeInCurvedragFeedbackCurvedefaultAnimationCurvedefaultAnimationCurve⚡️ Breaking Changes
ReorderableBuilder and ReorderableBuilder.builderanimationConfig instead:
positionDuration -> animationConfig.positionChangeDurationreleasedChildDuration -> animationConfig.releasedItemDurationfadeInDuration -> animationConfig.fadeInDurationOne column per quarter.
deprecated direct animation duration parameters in ReorderableBuilder in favor of animationConfig:
⭐️ New Features
animationConfig parameter to ReorderableBuilder and ReorderableBuilder.builderReorderableAnimationConfig to centralize animation-related configurationReorderableAnimationConfig now contains the animation durations:
positionChangeDurationdraggingPositionChangeDurationreleasedItemDurationfadeInDurationdragFeedbackDuration⚠️ Deprecations
ReorderableBuilder in favor of animationConfig:
positionDuration -> animationConfig.positionChangeDurationreleasedChildDuration -> animationConfig.releasedItemDurationfadeInDuration -> animationConfig.fadeInDurationenableLongPress
longPressDelay to Duration.zeroperformance issue fixed while scrolling (thanks to stanbav for the PR, see #166)
🐛 Bug Fixes
stanbav for the PR, see #166)🏄♂️ Improvements
android folder in example project to the flutter version 3.38.9Merge pull request #164 from karvulf/163-update-usage-of-mediaquery-w…
Merge pull request #164 from karvulf/163-update-usage-of-mediaquery-w…
🐛 Bug Fixes
🏄♂️ Improvements
MediaQuery calls:
MediaQuery.of(context).size → MediaQuery.sizeOf(context)MediaQuery.of(context).orientation → MediaQuery.orientationOf(context)hajajmaor for reporting this! (#163)forgotten assert in the builder constructor was added (thanks to FaFre, see #159)
default value of automaticScrollExtent updated to 150.0 (was previously 80.0)
🏄♂️ Improvements
automaticScrollExtent updated to 150.0 (was previously 80.0)README to clarify when to use a ScrollController (see #152)onReorderedPositions
onReorder, but allows you to handle reordering logic yourselfFaFre for the PR (#153)🐛 Bug Fixes
Reorderable.builder when removing children
itemCount to ReorderableBuilder.builderyoyoNTNU for identifying the issue (#155)Nothing published for this version
when dragging an item to a DragTarget widget, the onDragEnd callback was not being called, causing the reorder process to remain incomplete
🐛 Bug Fixes
DragTarget widget, the onDragEnd callback was not being called, causing the reorder process to remain incomplete
onDragCompleted callback of Draggabledrag_target_example.dartMerge pull request #148 from karvulf/141-bug-longpressdelay-to-durati…
Merge pull request #148 from karvulf/141-bug-longpressdelay-to-durati…
🐛 Bug Fixes
wuhangandroid and Gloomy699 (#57)longPressDelay set to Duration.zero or enableLongPress set to false (#141)
onTap function wouldn't respond⭐️ New Features
ReorderableBuilder
reorderListFunction in onReorderKevenMelo (#142)ℹ️ Information
DefaultTabController
ReorderableBuilder works with DefaultTabController and TabBarViewisenbj and emavgl (#78)reordering didn't work correctly after adding a new item
🐛 Bug Fixes
OICQ469 (#135)fixed `PageView.builder` issues:
🐛 Bug Fixes
fixed PageView.builder issues:
resolved reordering issue with scrolling:
davidmartos96 for identifying this issue (#127)fixed drag and drop after resizing:
khjde1207 for the report (#91)if your GridView uses the flag reverse, ensure to also use it for ReorderableBuilder
⭐️ New Features
reverse
GridView uses the flag reverse, ensure to also use it for ReorderableBuilderthis change also deprecates enableLongPress, as it's no longer needed. To achieve the same effect as enableLongPress = false, simply set longPressDela…
⭐️ New Features
enableLongPress is set to false:
LongPressDraggable is consistently used whether enableLongPress is true or falseenableLongPress, as it's no longer needed. To achieve the same effect as enableLongPress = false, simply set longPressDelay to Duration.zero🐛 Bug Fixes
CarouselSlider (thanks to charmosz – Issue #118).
ScrollController is always used when it's added to ReorderableBuilder and linked to a scrollable widget.there were performance issues (Issue #107)
setState was called many times, it rerendered all childrenNothing published for this version
Dragging not working in release mode on Android (thanks to shubham-gupta-16 - Issue #105)
🐛 Bug fix
shubham-gupta-16 - Issue #105)
Listener to HitTestBehavior.deferToChildThis release introduces a complete overhaul of the package, delivering significant performance optimizations, bug fixes, and new features.
This release introduces a complete overhaul of the package, delivering significant performance optimizations, bug fixes, and new features.
⭐️ New features
GridView now supports both horizontal and vertical directionsfadeInDuration parameter (Issue #68):
500msDraggable and LongPressDraggable now support data attachmentonDraggedChildUpdated callback (thanks for the PR Bader-AI):
releasedChildDuration parameter:
150mspositionDuration parameter (thanks to naderhezzy - Issue #94):
nonDraggableIndicies parameter (thanks to Bader-Al for the PR #93):
⚡️ Breaking Changes
onReorder function now includes a reorder callback that must be invoked within the onReorder handler
onDragStarted and onDragEnd callbacks now include the index of the dragged child in their parameterslocked children were still draggable, now they are locked (thanks to gmarizy - Issue #97)
🐛 Bug fix
gmarizy - Issue #97)fixed issue when deleting the dragged child (thanks to khjde1207 - Issue #88)
🐛 Bug fixes
khjde1207 - Issue #88)⭐️ New features
positionDuration (thanks to naderhezzy - Issue #94)
nonDraggableIndicies (thanks to Bader-Al for the PR #93)
fixed animation when releasing a dragged item
🐛 Bug fixes
you can add data to Draggable or LongPressDraggable
⭐️ New features
data to Draggable or LongPressDraggable
CustomDraggable for thatonDraggedChildUpdated (thanks for the PR Bader-AI)
releasedChildDuration
🐛 Bug fixes
initDelay to fix wrong behavior while drag and drop
naw2nd in Issue #83 when using a BottomModalSheet🐛 This release contains some bugfixes (optimization)
🐛 This release contains some bugfixes (optimization)
🐛 This release contains some bugfixes
🐛 This release contains some bugfixes
index is the index where the drag started
⭐️ New features
onDragStarted
index to parameterindex is the index where the drag startedonDragEnd
index to parameterindex is the index where the drag ended🐛 This release contains some bugfixes
onDragStarted wasn't called and should work nowonDragEnd wasn't called and should work nowadded support for horizontal direction (Issue #53)
⭐️ New features
GridView in both directionsfadeInDuration (Issue #68)
const Duration(milliseconds: 500)initDelay is working again🐛 This release contains some bugfixes
lockedIndices and GridView.builder should work nowonReorder is offering a function as parameter after reordering itemsThis is a prerelease and does not contain all functionalities that are tagged in GitHub for the release
ℹ️ℹ️ℹ️ℹ️
GridView.builder is now working as it should work, see more on the example in main.dart)lockedIndices and GridView.builder can lead to wrong animationsGridView.builder: rotating the device leads to wrong behavior when using drag and dropℹ️ℹ️ℹ️ℹ️
This is not the new big release! This will come with version 5.0.0.
ℹ️ Information
This is not the new big release! This will come with version 5.0.0.
3.7.0 that was released a couple days ago4.0.05.0.0 hopefully in one or two months🐛 Fixed error because of flutter upgrade 3.7.0
3.7.0Nothing published for this version
fixed two null check errors (Issue #41 and Issue #44)
🐛 Fixed some bugs
GridView.builder (Issue #44)
onReorder where an index of an item is returned that should not existℹ️ Information
5.0.0Fixed exception Null check operator used on a null value (Issue #41)
🐛 Fixed small bug
Null check operator used on a null value (Issue #41)🧑💻Code Refactoring
flutter_lints to 2.0.1There was a problem when having the scrollable widget outside the ReorderableBuilder
🐛 Fixed Bugs
ReorderableBuilder
automaticScrollExtent didn't calculate the correct area when scrolling to topBecause of the update of flutter version 3.0.0, this package couldn't support earlier versions because of the last update
🐛 Fixed Bugs
3.0.0, this package couldn't support earlier versions because of the last update
3.0.0fixed warnings due to flutter update version 3.0.0
🐛 Fixed Bugs
3.0.0you have to add the ScrollController to ReorderableBuilder and your GridView to make sure that the drag and drop still works
⚠️️ Breaking Changes
ScrollController to ReorderableBuilder and your GridView to make sure that the drag and drop
still worksGridView⭐️ New features
enableScrollingWhileDragging
GlobalKey to your GridView before autoscroll can workGridViewautomaticScrollExtent
for more information, check out the example
added two new parameters for ReorderableBuilder:
⭐️ New features
ReorderableBuilder:
onDragStarted: Called when user starts dragging a childonDragEnd: Called when user releases dragged child🦙 Behavior changed
onReorder won't be called anymore when the dragged child didn't change his original positionWrong behavior after updating children (especially the key) and using drag and drop
🐛 Fixed Bugs
🦙 Behavior changed
Downgraded Dart-version from 2.16.1 to 2.16.0
2.16.1 to 2.16.0second try to solve dependency issue
trying to solve dependency problem
* updated pubspec
There are breaking changes in this release:
WrapGridView
ReorderableBuilder as a Wrapper for all GridView of Flutterlast release candidate! (if there aren't some critical bugs)
onReorder
lockedIndices)main.dart2.0.0, the following things will be done:
Removed AnimatedGridViewBuilder and AnimatedReorderableBuilder because there were some problems splitting the logic for animation while dragging and a
AnimatedGridViewBuilder and AnimatedReorderableBuilder because there were some problems splitting the
logic for animation while dragging and adding/removing itemsReorderableBuilder is making all the animation
enableDraggable to falseRemoved ReorderableWrap and ReorderableGridView
ReorderableWrap and ReorderableGridViewReorderableBuilder for Drag and Drop with all GridView and WrapAnimatedGridViewBuilder for animation when adding or removing children with all types of GridViewAnimatedReorderableBuilder combines ReorderableBuilder and AnimatedGridViewBuilderAdded animation when there are new children added or removed
GridViewReorderableWrapComplete rebuilt Reorderable GridViews and Wrap
GridViewFixed a bug when changing from enableReorder false to true
enableReorder false to trueAdded parameter enableReorder with default value true
enableReorder with default value trueBoxDecoration added for dragged child
* AnimationController disposing
fixed clipBehavior while scrolling (clipBehavior is now Clip.hardEdge)
Added animation for the following cases:
fixed scrolling e. g. for RefreshIndicator
RefreshIndicator* fixed ClipBehavior
Old used ReorderableGridView now called ReorderableWrap
ReorderableGridView now called ReorderableWrapReorderableGridView added
ReorderableGridViewReorderableGridView.countReorderableGridView.extentDrag Update Position fixed with PostFrameCallback
Fixed Scrolling Bugs in and outside widget
Fixed ReorderableGridView.extent
Differentiate between Wrap and GridView
Your coding agent can read these notes before it upgrades. Set up the MCP server →