public @Nullable Component getLastFocusedOutside(Container container) {
    List<Component> components = focusOwners.toStrongList();
    for (int i = components.size() - 1; i >= 0; i--) {
      if (!SwingUtilities.isDescendingFrom(components.get(i), container)) {
        return components.get(i);
      }
    }
    return null;
  }
public @Nullable Component getLastFocusedOutside(Container container)