- [FIX] temporary remove
PointerDeviceKind.trackpad
- [FIX] fix
'double?'
type
-
[Add]
enlargeFactor
option -
[Add]
CenterPageEnlargeStrategy.zoom
option -
[Add]
animateToClosest
option -
[FIX] clear timer if widget was unmounted
-
[FIX] scroll carousel using touchpad
- Fix code formatting
- Exposed
clipBehavior
inCarouselOptions
- Exposed
padEnds
inCarouselOptions
- Add
copyWith
method toCarouselOptions
- [FIX] Can't swipe on web with Flutter 2.5
- Support null safety (Null safety isn't a breaking change and is Backward compatible meaning you can use it with non-null safe code too)
- Update example code to null safety and add Dark theme support and controller support to indicators in on of the examples and also fix overflow errors.
- Add third argument in
itemBuilder
, allow Hero and infinite scroll to coexist
itemBuilder
needs to accept three arguments, instead of two.
- Rollback PR #222, due to it will break the existing project.
- Fix code formatting
- Double pointer down and up will cause a exception
- Fix
CarouselPageChangedReason
- Allow Hero and infinite scroll to coexist
- Fix code formatting
- Fixed unresponsiveness to state changes
- Added start/stop autoplay functionality
- Pause auto play if not current route
- Add
pageSnapping
option for disable page snapping for the carousel
- Fixed
carousel_options.dart
andcarousel_controller
not being exported by default.
disableCenter
option
This option controls whether the carousel slider item should be wrapped in a Center
widget or not.
enlargeStrategy
option
This option allow user to set which enlarge strategy to enlarge the center slide. Use CenterPageEnlargeStrategy.height
if you want to improve the performance.
- Fixed
CarousePageChangedReason.manual
never being emitted
pauseAutoPlayOnTouch
option
This option controls whether the carousel slider should pause the auto play function when user is touching the slider
pauseAutoPlayOnManualNavigate
option
This option controls whether the carousel slider should pause the auto play function when user is calling controller's method.
pauseAutoPlayInFiniteScroll
option
This option decide the carousel should go to the first item when it reach the last item or not.
pageViewKey
option
This option is useful when you want to keep the pageview's position when it was recreated.
- Fix
CarouselPageChangedReason
bug
- Use
Transform.scale
instead ofSizedBox
to wrap the slider item
Instead of passing all the options to the CarouselSlider
, now you'll need to pass these option to CarouselOptions
:
CarouselSlider(
CarouselOptions(height: 400.0),
items: [1,2,3,4,5].map((i) {
return Builder(
builder: (BuildContext context) {
return Container(
width: MediaQuery.of(context).size.width,
margin: EdgeInsets.symmetric(horizontal: 5.0),
decoration: BoxDecoration(
color: Colors.amber
),
child: Text('text $i', style: TextStyle(fontSize: 16.0),)
);
},
);
}).toList(),
)
CarouselController
Since v2.0.0
, carousel_slider
plugin provides a way to pass your own CaourselController
, and you can use CaouselController
instance to manually control the carousel's position. For a more detailed example please refer to example project.
CarouselPageChangedReason
Now you can receive a CarouselPageChangedReason
in onPageChanged
callback.
pauseAutoPlayOnTouch
pauseAutoPlayOnTouch
option is removed, because it doesn't fix the problem we have. Currently, when we enable the autoPlay
feature, we can not stop sliding when the user interact with the carousel. This is a flutter's issue.
- Fix
animateTo()/jumpTo()
with non-zero initialPage
- Add on-demand item feature
- Fix
setState() called after dispose()
bug
- Scroll physics option
- onPage indexing bug
- Remove the deprecated param:
interval
,autoPlayDuration
,distortion
,updateCallback
. Please use the new param.
- Fix
enlargeCenterPage
option is not working invertical
carousel slider.
- Vertical scroll support
- Enable/disable infinite scroll
- Added
pauseAutoPlayOnTouch
option - Add documentation
- Update doc
- Added
distortion
option
- Fix hard coded number
- Fix
initialPage
bug, fix crash when widget is disposed.
Remove useless dependencies, add changelog.
Initial version.