flutter_portal
Evolved Overlay/OverlayEntry - declarative not imperative, intuitive-context, and easy-alignment
1.1.4
156K downloads/mo
#948 most downloaded on pub.dev
fzyzcjy/flutter_portal
What this package is like to depend on
Last release 3 years ago
no release in 18 months
Release timing varies
gaps range from 3 weeks to 11 months
Nearly every release is documented
notes for 13 of 13 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
16 releases · first in 2020
0 releases in the last 12 months
see the full history below
Release timeline
16 releases · Jan 2020 to May 2023Releases
latest 16-
1.1.424 May 2023 -
1.1.315 Dec 2022 -
1.1.225 Oct 2022Release notes
Open source →- Fix Layer ... was previously used as oldLayer assertion error in debug mode, and page being blank in release mode #91
Release notes
Open source →- Fix Layer ... was previously used as oldLayer assertion error in debug mode, and page being blank in release mode #91
-
1.1.102 Aug 2022 -
1.1.013 May 2022 -
1.0.019 Apr 2022Release notes
Open source →- Fix
_debugCheckLeaderBeforeFollower(forwardLayers, inverseLayers)': LeaderLayer anchor must come before FollowerLayer in paint order, but the reverse was true.(@fzyzcjy) Aligned.backupis always used even if it should not; cause:getFollowerOffset'sportalRectargument is wrong #63 (@fzyzcjy)CustomRenderFollowerLayer._computeLinkedOffsetis wrong especially when having a RepaintBoundary at ancestor which is quite common #62 (@fzyzcjy)_RenderPortalTargetTheater.applyPaintTransformis wrong when using operations likeglobalToLocal(ancestor: something); it only works correctly withglobalToLocal()without ancestors param #61 (@fzyzcjy)localToGlobalor similar methods are wrong for widgets in the subtree of portal follower #65 (@fzyzcjy)- Touch (click) events are drifted (shifted incorrectly) for
PortalTargets #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)
Release notes
Open source →- Fix
_debugCheckLeaderBeforeFollower(forwardLayers, inverseLayers)': LeaderLayer anchor must come before FollowerLayer in paint order, but the reverse was true.(@fzyzcjy) Aligned.backupis always used even if it should not; cause:getFollowerOffset'sportalRectargument is wrong #63 (@fzyzcjy)CustomRenderFollowerLayer._computeLinkedOffsetis wrong especially when having a RepaintBoundary at ancestor which is quite common #62 (@fzyzcjy)_RenderPortalTargetTheater.applyPaintTransformis wrong when using operations likeglobalToLocal(ancestor: something); it only works correctly withglobalToLocal()without ancestors param #61 (@fzyzcjy)localToGlobalor similar methods are wrong for widgets in the subtree of portal follower #65 (@fzyzcjy)- Touch (click) events are drifted (shifted incorrectly) for
PortalTargets #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
-
1.0.0-dev.221 Mar 2022 pre-release -
1.0.0-dev.120 Mar 2022 pre-releaseRelease notes
Open source →- 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 debugLabel 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)
Release notes
Open source →- 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)
-
0.4.019 Apr 2021 -
0.4.0-nullsafety.028 Jan 2021 pre-release -
0.3.004 Oct 2020Release notes
Open source →-
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
visiblechanges 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: ... )
-
-
0.2.002 Oct 2020 -
0.1.006 May 2020Release notes
Open source →-
Changed the algorithm behind how portals/overlays are rendered.
This fixes some problems when combined withLayoutBuilder -
Removed the generic parameter of
PortalEntry
-
-
0.0.126 Jan 2020 -
0.0.1+126 Jan 2020 -
0.0.1+228 Jan 2020