-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[pyroot] adjust GUI events processing #13745
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
Conversation
When python non-interactive session runs, there is no any possibility to call callbacks in main thread. Therefore let allow process callbacks directly from the place where data queue is filled.
In interactive python mode processing events always runs from main thread and performed regularly - no special settings are required then
In non-interactive mode one have to run events from special thread, in interactive it should be enough to use input hook
Starting build on |
Thanks. It works on my local machine which I used to create the reproducer. Let's see what the CI has to say about other platforms. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
It is intended behavior that processing thread may change in python. Therefore display such message only if debug is enabled
Starting build on |
Build failed on mac12arm/cxx20. |
First of all, make handling for Mac and Linux similar.
In non-interactive mode run special thread where
gSystem->ProcessEvents()
are called.In interactive mode try to use input hook.
In webgui in python non-interactive mode allow to use calling thread for callbacks invocation.
It is the only chance to get processing of http requests from clients.
Probably fixes #13744