removeOverlaysDeeper static method

void removeOverlaysDeeper(
  1. int level
)

Implementation

static void removeOverlaysDeeper(int level) {
  final overlaysToRemove = <OverlayEntry>[];
  final levelsToRemove = <int>[];

  _levelOverlays.forEach((overlayLevel, overlay) {
    if (overlayLevel >= level) {
      overlaysToRemove.add(overlay);
      levelsToRemove.add(overlayLevel);
    }
  });

  for (final overlay in overlaysToRemove) {
    overlay.remove();
    _overlayStack.remove(overlay);
  }

  for (final levelToRemove in levelsToRemove) {
    _levelOverlays.remove(levelToRemove);
  }
}