insert method

void insert(
  1. OverlayEntry entry, {
  2. OverlayEntry? below,
  3. OverlayEntry? above,
})

Inserts entry into the overlay, optionally positioned relative to below or above.

Implementation

void insert(OverlayEntry entry, {OverlayEntry? below, OverlayEntry? above}) {
  entry._overlay = this;
  if (below != null) {
    final index = _entries.indexOf(below);
    _entries.insert(index, entry);
  } else if (above != null) {
    final index = _entries.indexOf(above);
    _entries.insert(index + 1, entry);
  } else {
    _entries.add(entry);
  }
  setState(() {});
}