Deprecate `OverlayPortal.targetsRootOverlay`
Summary
#The OverlayPortal.targetsRootOverlay
property was deprecated and replaced with overlayLocation
.
Context
#A parameter overlayLocation
was added to the OverlayPortal default constructor to control where the overlay child renders. As the result, the constructor OverlayPortal.targetsRootOverlay
was no longer useful.
Description of change
#The OverlayPortal.targetsRootOverlay
was deprecated.
Migration guide
#If you are using OverlayPortal.targetsRootOverlay
, you can use OverlayPortal
with overlayLocation
instead.
Case 1: trivial case
#Code before migration:
Widget build(BuildContext context) {
return OverlayPortal.targetsRootOverlay(
controller: myController,
overlayChildBuilder: _myBuilder,
child: myChild,
);
}
Code after migration:
Widget build(BuildContext context) {
return OverlayPortal(
overlayLocation: OverlayChildLocation.rootOverlay,
controller: myController,
overlayChildBuilder: _myBuilder,
child: myChild,
);
}
Timeline
#Landed in version: 3.35.0-0.0.pre
In stable release: TBD
References
#API documentation:
Relevant issue:
Relevant PR:
Unless stated otherwise, the documentation on this site reflects the latest stable version of Flutter. Page last updated on 2025-09-04. View source or report an issue.