The History/Calltips/locals window splits were only being shown when
running SingleTop. For unknown reasons, the crust "CallAfter" routine
was not running, so we force the call
Now that we are handling windows from inside the KiCad framing system,
python console does not need to destroy its own windows. This may help
prevent some odd preference corruption as well
It happens when opening the python console from Eeschema.
In this case, and on msys2, Pgm() returns a null pointer because the pcbnew
application is not initialized, and the first call to Pgm()
from a python script crashes Kicad
18.04 and earlier use wxPython 4.0.1 that doesn't have the new Id call.
This wraps the id to use the earlier version if the newer one is not
available
Fixes https://gitlab.com/kicad/code/kicad/issues/8887