Deprecate `OverlayPortal.targetsRootOverlay`
Summary
#
                  The OverlayPortal.targetsRootOverlay property was deprecated and
                  replaced with overlayLocation.
                
Context
#
                  A overlayLocation parameter was added to
                  the OverlayPortal default constructor to
                  control where the overlay child renders.
                  As a result, the OverlayPortal.targetsRootOverlay constructor is
                  no longer useful.
                
Description of change
#The OverlayPortal.targetsRootOverlay constructor is deprecated.
Migration guide
#
                  If you are using OverlayPortal.targetsRootOverlay,
                  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.38.0-0.1.pre
                  In stable release: 3.38
                
References
#API documentation:
Relevant issue:
Relevant PR:
Unless stated otherwise, the documentation on this site reflects Flutter 3.35.5. Page last updated on 2025-11-3. View source or report an issue.