private void internalClearSlot(IsSlot<?> slot, PresenterWidget<?> dontRemove) { // use new set to prevent concurrent modification for (PresenterWidget<?> child: new HashSet<>(children)) { if (child.slot == slot && !child.equals(dontRemove)) { child.orphan(); } } }