isolate static method

Widget isolate({
  1. required Widget child,
})

Prevents widgets in the child subtree from registering with ancestor FTappableGroups.

This is required when an OverlayPortal inside an FTappableGroup contains FTappables since OverlayPortals reparent inherited widgets but FTappableGroups do not hit test across rendering layers.

FTappableGroup(
  child: OverlayPortal(
    overlayChildBuilder: (context) => FTappableGroup.isolate(
      child: FTappable(onPress: () {}, child: Text('Inside overlay')),
    ),
    child: child,
  ),
);

FPortal automatically applies this.

Implementation

static Widget isolate({required Widget child}) => TappableGroupScope(entries: null, child: child);