rndusr / stig

TUI and CLI for the BitTorrent client Transmission
GNU General Public License v3.0
557 stars 24 forks source link

Screen redrawing issues #234

Open rsekman opened 1 year ago

rsekman commented 1 year ago

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 the tab command. These were not present before the urwid update. I am on Arch and urwid version 2.1.2.r56.gabc098c-1 (https://github.com/urwid/urwid/commit/abc098c3400220b51aeb6fec14175e1bfa1f8bfb).

interactive command

To reproduce:

I opened #233 to fix this.

tab command

To reproduce:

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.

rsekman commented 1 year ago

After looking more closely at the code I've come up with much better and more comprehensive solutions #235.