How you ask? Plot first -> then read the PDF and print directly to the
platform-specific printers. Roundabout? Yes. Better than wx printing?
Darnbetcha.
Also allows multi-size page printing and proper margins and print
preview
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1831
We never want to hide dialogs if their parent is on a different Space
(MacOS-specific terminology), so set the window property to show
everywhere when showing a dialog
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13906
This implements the wxWidgets fix for KiCad. We can't wait for distros
to update their wx libs so until then, we'll roll our own.
Nicely, this also implements the MacOS setting that was an ifdef
previously
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19506
Recommendation is to avoid using the year nomenclature as this
information is already encoded in the git repo. Avoids needing to
repeatly update.
Also updates AUTHORS.txt from current repo with contributor names
In some situations then parent window couldn't be available. Eg, when
eeschema is executed as standalone on macOS and trying to show
the global design block table dialog before the main frame exists.
So replace the assert with return and check the windows pointers bellow.
This means that it doesn't start consuming hotkeys for
IME composition in the main canvas on Linux.
Text boxes in dialogs and the property manager, for example,
still receive IME composition.
Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/9882
Asking the IME to cancel when the canvas takes focus fixes the case where:
- Windows input lang set to Chinese
- Input mode set to english instead of chinese
- You spam the M key while launching a sch/pcb from the kicad.exe until the editor opens
- The windows would then normally be frozen
If you uncheck in the old IE options "Use the same proxy server for all protocols", then it returns an annoying string
like http=blah:1232;https=blah:1232;ftp=blah:2321 which we have to parse.
Setting the environment variable KICAD_ENABLE_WXTRACE now enables wx
trace logging on all platforms. MSW still requires its original
environment variables to be set to get the console displayed.