editors, OSX and menu[hack]: try to avoid crashes by postponing the creation of dialogs in the main loop.

This commit is contained in:
Laurent Alonso(fr)
2020-05-12 10:36:16 +02:00
committed by Celtic Minstrel
parent 3d7d465c7e
commit 6c904f3483
4 changed files with 29 additions and 3 deletions

View File

@@ -30,6 +30,10 @@
#include "event_listener.hpp"
#include "drawable_manager.hpp"
#ifdef __APPLE__
short menuChoiceId=-1;
#endif
/* Globals */
bool All_Done = false;
sf::RenderWindow mainPtr;
@@ -227,6 +231,12 @@ void handle_events() {
cFramerateLimiter fps_limiter;
while(!All_Done) {
#ifdef __APPLE__
if (menuChoiceId>=0) {
handle_menu_choice(eMenu(menuChoiceId));
menuChoiceId=-1;
}
#endif
while(mainPtr.pollEvent(currentEvent)) handle_one_event(currentEvent);
// Why do we have to set this to false after handling every event?