The issue is that opening the wxMessageDialog in GUI_App::check_printer_presets fires wxEVT_IDLE event (on Linux at least).
At that point it is already bound to our lambda which will in turn call post_init prematurely.
The solution is to move the Bind at the very end of the initialization. The post_init that it calls assumes that init has been finished anyway.
+ Fixed translation for the "Extruder n" category on the Printer Settings Tab
+ Fixed a crash, when scrolling inside Search imGui with some localization (e.t. Russion)
en_GB locale when switching to English from the user interface,
while often Linux users have just en_US locales configured.
With this commit the user will have to select English (U.S.) or
English (U.K.). Usually English (U.S.) will work.
Vojtech is scared to touch the code for the other platforms (Windows and Mac)
as the language switching has been reworked multiple times and it is quite
fragile.
Always set parent for the Dialog, if we want to see the Dialog in the same display as a parent.
Dialog will be shown in the primary monitor otherwise.
+ fixed a draw of the canvas legend when we move application between Retina and non-Retina displays
Implemented try/catch blocks for Slic3r exceptions and std::exceptions
with GUI error reporting. This is extremely important to report
corruption of PrusaSlicer.ini.
* Fixed a crash on preset changing and press Cancel button in SavePresetDialog
* Added Cancel button for MessageDialog after check "Remember my choice"
SplashScreen
* Set Version string in respect to the height of a Title string
* Added "Remember my choice" checkbox
* Center on the screen and set position in respect to the position of mainframe or settings dialog
Preferences : Added checkboxes for enable/suppress showing of the UnsavedChangeDialog
SearchImGui : close after parameter selection_is_changed_according_to_physical_printers
PhysicalPrinterDialog, SavePresetDialog : Center on the screen
on application start-up, at least not on Windows.
wxEVT_CREATE was called for some control deep in the Plater, however
the event was delivered to the main frame and only for slicer, not
for G-code viewer. Thus the callbacks for 3D Mouse were not registered
for and the 3D mouse did not work on Windows.
Fixed by calling the callback registration from the first execution
of the Idle function.