private static boolean hiddenWindowHasModalChildren() {

		if (hiddenFrame == null) {
			return false; // disposed
		}

		List<Dialog> modals = WindowUtilities.getOpenModalDialogsFor(hiddenFrame);
		if (modals.isEmpty()) {
			return false;
		}

		modals.forEach(d -> {
			// this is odd, but we want the modal dialogs to always appear on top of the splasher
			d.setAlwaysOnTop(true);
		});
		return true;
	}
Show the splash screen on the Swing thread now.  This will block.
@return the new splash screen
Ghidra/Framework/Docking/src/main/java/docking/framework/SplashScreen.java