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
Is your feature request related to a problem? Please describe.
The tksupport.install method calls widget.update(). The Tcl_UpdateObjCmd function, i.e. the update command in Tcl or Python's widget.update() is known to cause problems in complex TclTk applications and its use is generally ill-advised.
Describe the solution you'd like
Can we pass any tkinter event loop to tksupport.install, instead of it needing to use update? For example, it'd be nice to make a call as follows:
Or if update is preferred, widget.update can be passed directly.
Describe alternatives you've considered
the Tcl update command doesn't appear to accept the TCL_DONT_WAIT flag, which can cause the application to get stuck in the Tcl_UpdateObjCmd loop. In addition, it doesn't afford us any control over the types of events update will process, except for when we use the idletasks option.
Additional context
My reason for asking is that my Twisted application seems to hang the TCL_UpdateObjCmd event loop when update is called, leading to a nested-eventloop condition that TclTk is unable to break out of. The application hangs with no hope of recovering it.
Thanks for your consideration.
The text was updated successfully, but these errors were encountered:
+1 to this. In principle, every foreign event loop reactor should support the maximum customization of the native loop, and not make any default assumptions.
Is your feature request related to a problem? Please describe.
The
tksupport.install
method callswidget.update()
. TheTcl_UpdateObjCmd
function, i.e. theupdate
command in Tcl or Python'swidget.update()
is known to cause problems in complex TclTk applications and its use is generally ill-advised.Describe the solution you'd like
Can we pass any
tkinter
event loop totksupport.install
, instead of it needing to useupdate
? For example, it'd be nice to make a call as follows:Or, for example, for even more control over the types of events we'd like to process, or to control how the loop behaves:
With any of the flags or'ed together.
Or if
update
is preferred,widget.update
can be passed directly.Describe alternatives you've considered
the Tcl
update
command doesn't appear to accept theTCL_DONT_WAIT
flag, which can cause the application to get stuck in theTcl_UpdateObjCmd
loop. In addition, it doesn't afford us any control over the types of eventsupdate
will process, except for when we use theidletasks
option.Additional context
My reason for asking is that my Twisted application seems to hang the
TCL_UpdateObjCmd
event loop whenupdate
is called, leading to a nested-eventloop condition that TclTk is unable to break out of. The application hangs with no hope of recovering it.Thanks for your consideration.
The text was updated successfully, but these errors were encountered: