private void initializeLocationAndSize(Component centeredOnComponent) {

		String key = getKey();
		BoundsInfo boundsInfo = dialogBoundsMap.get(key);
		Rectangle lastBounds = boundsInfo.getEndBounds();
		applySize(lastBounds); // apply the size before we try to center

		Point initialLocation = component.getInitialLocation();
		if (initialLocation != null) {
			// NOTE: have to call setLocation() twice because the first time the native peer
			// component's location is not actually changed; calling setLocation() again
			// does cause the location to change.
			setLocation(initialLocation);
			setLocation(initialLocation);
		}
		else if (centeredOnComponent != null) {
			setCenteredOnComponent(centeredOnComponent);
		}
		else {
			setCenteredOnComponent(getParent());
		}

		boundsInfo.setStartBounds(new Rectangle(getBounds())); // set the default bounds

		// restore the location after the default positioning
		if (boundsInfo.hasBeenMoved()) {
			applyLocation(lastBounds);
		}
	}
Creates a default parent frame that will appear in the OS's task bar.  Having this frame
gives the user something to click when their dialog is lost.  We attempt to hide this
frame offscreen.

Note: we expect to only get here when there is no parent window found.  This usually
only happens during tests and one-off main methods that are not part of a
running tool.

@return the hidden frame
Ghidra/Framework/Docking/src/main/java/docking/DockingDialog.java