You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There doesn't appear to be a side effect-free way of dealing with this. The solutions investigated:
suppress stderr by closing it with freopen("/dev/null", "w", stderr); prior to the call and re-opening it. This could harm logging elsewhere in the process.
call gtk_native_dialog_set_modal(). This changes the behavior of dialogs on the platform and could harm the userbase.
Create an invisible main window and call gtk_native_dialog_set_transient_for(). There is no good way to persist this invisible window and window managers would do weird things with it anyway.
None of these options are worth getting rid of a stderr message. If this bothers you, use the Zenity implementation or live with the error message, or suppress it yourself as described in option 1. It is not the place of a library to run hacks like this that have process-wide effects.
The main effect of a dialog being transient for a parent window is that the dialog stays in top of the parent window. Is there a way to provide a native window handle to the nativefiledialog library? For GLFW for example this can be obtained with glfwGetX11Window(). Internally gtk_window_set_transient_for() can be called.
Passing this spam on is annoying, and we should look for a way to stop it.
The text was updated successfully, but these errors were encountered: