🔄 Changed
- Removed the random_color package and replaced with custom logic. Random colors may now be slightly different.
- Updated dependencies
🐞 Fixed
- Unmounted exception (funwithflutter#36). Thanks Iiropel.
- Moved
.super
call to the top ofinitState
.
Now with null safety :) - Thanks Ali1Ammar!
Add optional createParticlePath
function to pass in a custom Path
for the conveti (for example a Star path, instead of the default Rectangle path). Example updated. Thanks Artur-Wisniewski.
Fix: Animation stop event not firing. Thanks WieFel.
Fix: Call play on the confetti controller from initState
.
Fix: Confetti emitter position set incorrectly when transitioning to a new PageView. The emitter position is now set on animation start.
Fix: Set ConfettiControllerState.stopped
on ConfettiWidget
dispose.
Add canvas
parameter.
Fix where at certain times the Confetti widget takes too long to emit. This update ensures that particles are generated on the first frame, and when there are no longer any particles on the screen but the animation is still running.
Fixed layout issue where the screen size and confetti position were not updated on layout changes. The package will now respond to screen layout and sizing changes.
Massive performance improvements. Should see a significant performance boost when running the application in profile/release mode. It is now possible to add a lot more confetti without the application causing jank. It is recommended to test the use of this package on multiple devices, to ensure it does not introduce performance issues on older devices.
This update will result in a change in the default falling speed (gravity) and drag of the confetti. You may note a difference, and might be required to modify some of these paramaters to achieve the desired result
- Added an optional
gravity
to change the speed at which the confetti falls - Added an optional
blastDirectionality
property. The default isBlastDirectionality.directional
where you can specify ablastDirection
to shoot the confetti in a specific direction. Change toBlastDirectionality.explosive
to blast confetti in random directions - Added an optional
particleDrag
property to configure the drag to apply to the confetti
- Provide an optional
minimumSize
andmaximumSize
to customize the size of the confetti. For example, setting aminimumSize
equal toSize(10,10)
and amaximumSize
equal toSize(20,20)
will create confetti with a size between these two parameters. Can be provided as an argument in theConfettiWidget
- Provide an optional Color List to specify specific colors for the confetti. A single color, for example
[Colors.blue]
, or multiple colors[Colors.blue, Colors.red, Colors.green]
can be provided as an argument in theConfettiWidget
- Provide optional child widget to render below the confetti
- Changed the painter to use foregroundPainter to always paint the confetti above its child
- Patch null pointer exception
- Initial release. You will probably experience some performance issues if you try and create too many particles at once
- Performance optimization work will be done in later versions.