A recent urwid update changed how/when the screen is redrawn, which made commits 030508e6069a909e89b5d5e5beb36f4a794a8157 f83949fb23773a557a90eceac79227b57b66b8f6 a48ef301138a483abbbb60cc2c428b9438336b72 necessary.
hit / (default keybind) to open the interactive limit prompt
the prompt appears after a noticeable delay instead of, well, promptly
if one enters, say, /a the prompt appears after the second keystroke
I opened #233 to fix this.
tab command
To reproduce:
open a torrent list
hit <enter> (default keybind) to open a torrent tab
the tab appears only after a noticeable delay
pressing any key after <enter> makes the tab appear promptly, similarly to the interactive case
press d to close the tab
the tab is closed only after a noticeable delay
again, the effect can be made to take place promptly by pressing any key after d
Any command that opens a tab works to reproduce, e.g. tab help ls.
This one is trickier. We can't just decorate TabCmd.run because the tab may need to wait for data before rendering (e.g. info). Also, if the rc opens tabs on startup, exceptions are raised because there isn't an eventloop yet. So some more sophisticated logic is needed, but I'm not sure what it is.
A recent
urwid
update changed how/when the screen is redrawn, which made commits 030508e6069a909e89b5d5e5beb36f4a794a8157 f83949fb23773a557a90eceac79227b57b66b8f6 a48ef301138a483abbbb60cc2c428b9438336b72 necessary.However, there are still some problems remaining. The ones I have noticed are with the
interactive
command and thetab
command. These were not present before theurwid
update. I am on Arch andurwid
version2.1.2.r56.gabc098c-1
(https://github.com/urwid/urwid/commit/abc098c3400220b51aeb6fec14175e1bfa1f8bfb).interactive
commandTo reproduce:
/
(default keybind) to open the interactive limit prompt/a
the prompt appears after the second keystrokeI opened #233 to fix this.
tab
commandTo reproduce:
<enter>
(default keybind) to open a torrent tab<enter>
makes the tab appear promptly, similarly to theinteractive
cased
to close the tabd
Any command that opens a tab works to reproduce, e.g.
tab help ls
.This one is trickier. We can't just decorate
TabCmd.run
because the tab may need to wait for data before rendering (e.g.info
). Also, if therc
opens tabs on startup, exceptions are raised because there isn't an eventloop yet. So some more sophisticated logic is needed, but I'm not sure what it is.