- Migrate to Dart 3 (#102, #98, #97 thanks @srawlins)
- Allow EnhancedLayerLink to be used on it's own #96 (thanks @cgestes)
- Fix Layer ... was previously used as oldLayer assertion error in debug mode, and page being blank in release mode #91
- Export some methods
- Fix Flutter 3.0 warnings
- Upgrade to Flutter 3.0
- Export Filled anchor #74 (thanks @mityax)
- Fix
_debugCheckLeaderBeforeFollower(forwardLayers, inverseLayers)': LeaderLayer anchor must come before FollowerLayer in paint order, but the reverse was true.
(@fzyzcjy) Aligned.backup
is always used even if it should not; cause:getFollowerOffset
'sportalRect
argument is wrong #63 (@fzyzcjy)CustomRenderFollowerLayer._computeLinkedOffset
is wrong especially when having a RepaintBoundary at ancestor which is quite common #62 (@fzyzcjy)_RenderPortalTargetTheater.applyPaintTransform
is wrong when using operations likeglobalToLocal(ancestor: something)
; it only works correctly withglobalToLocal()
without ancestors param #61 (@fzyzcjy)localToGlobal
or similar methods are wrong for widgets in the subtree of portal follower #65 (@fzyzcjy)- Touch (click) events are drifted (shifted incorrectly) for
PortalTarget
s #64 (@fzyzcjy) - Allow the follower partially follow the target in selected axis; allow align relative to Portal #17 (@fzyzcjy)
- Shift portal follower to be inside the bounds of portal #67 (@fzyzcjy)
- Extract the composited transform ("leader/follower") in this library to beautify the code and allow users to use them directly #70 (@fzyzcjy)
- Fix broken images in pub
- New anchoring logic for advanced use cases #44 (@creativecreatorormaybenot for the main PR, @fzyzcjy for Flutter stable compatibility)
- Allow PortalEntry that binds to a ancestor but not nearest Portal #45 (@fzyzcjy)
- Enhance scope searching strategy: Defaults to "main" scope if provided #51 (@fzyzcjy)
- Sync those modified-from-Flutter code with latest Flutter code and some refactor (@fzyzcjy #50)
- Add debugName to ease debugging (@fzyzcjy)
- Fix
Failed assertion: '_lastOffset != null' in various cases
, which should exist in Flutter 2.8~2.10 and flutter_portal from old to new (@fzyzcjy #56) - New readme and documentations (@fzyzcjy)
- Stable null-safety release
- Migrated to null-safety (thanks to @Jjagg!)
-
Improved the dart-doc of Portal and PortalEntry
-
Added and improved the examples
-
Fixed a bug where changing the visibility of a portal destroys the state of
child
-
Adding a way to delay the disappearance of a portal entry:
PortalEntry( visible: visible, closeDuration: Duration(seconds: 2), portal: ..., child: ... )
With this code, when
visible
changes tofalse
, the portal will stay visible for an extra 2 seconds.This can be useful to implement leave animations. For example, the following implement a fade-out transition:
PortalEntry( visible: visible, closeDuration: Duration(seconds: 2), portal: AnimatedOpacity( duration: Duration(seconds: 2), opacity: visible ? 1 : 0, child: Container(color: Colors.red), ), child: ... )
- Update to support latest Flutter version
-
Changed the algorithm behind how portals/overlays are rendered.
This fixes some problems when combined withLayoutBuilder
-
Removed the generic parameter of
PortalEntry
Fix pub badge
Improve package description
Initial implementation