-
Notifications
You must be signed in to change notification settings - Fork 78
Improve eventloop control stability. Add eventloop and multithread tests #615
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Improve eventloop control stability. Add eventloop and multithread tests #615
Conversation
Codecov Report
@@ Coverage Diff @@
## master #615 +/- ##
==========================================
+ Coverage 57.95% 58.59% +0.64%
==========================================
Files 32 32
Lines 2721 2652 -69
==========================================
- Hits 1577 1554 -23
+ Misses 1144 1098 -46
Continue to review full report at Codecov.
|
wait_eventloop_stopping() and wait before recording state before a pausewait_eventloop_stopping(). Wait before recording state before a pause. Add multithread tests
7f9a6a5 to
533df35
Compare
|
Tests are passing but I'm still exploring this PR. It would be nice to remove the async eventloop stop, but I'm still getting windows staying open and freezing on macos. I'm exploring whether the macos thing is an upstream bug https://gitlab.gnome.org/GNOME/gtk/-/issues/4648 Update: it appears to be https://gitlab.gnome.org/GNOME/gtk/-/issues/4648#note_1358579 |
f92e518 to
3c908a8
Compare
wait_eventloop_stopping(). Wait before recording state before a pause. Add multithread tests3c908a8 to
f7e0109
Compare
Changes:
It was added to work around the MacOS bug where the window doesn't finish closing, which appears to be an upstream Gtk issue. https://gitlab.gnome.org/GNOME/gtk/-/issues/4648#note_1359210 . Perhaps we could leave this open for a few days and see if that gets fixed
pause_eventloopwait for the eventloop to be pausedGtk.gtk_quit()->Gtk.gtk_main_quit()as it matches the underlying function andgtk_main()better