Open pik opened 9 years ago
The reason for this is probably that we are resizing tilda
when we show or hide it with active animation.
This problem will probably be obsolete once I have merged the wip/animation
branch. Feel free to give it a try if you have time.
@lanoxx I'm not using the active animation; maybe this is because GTK showing the widget and changing it's size to fullscreen happen separately which I think would cause vte to rewrap the terminal output twice.
But I'm not testing this with the new vte, so probably I should fix-up and rebase the patch for that first.
Is this still an issue with VTE 2.91 and/or my wip/animation branch?
@lanoxx I tried this on the new animation branch -- it's considerably better. Unlimited scroll-back seems to make gnome-terminal slow as well for -> fullscreen transition, so I don't know if we can expect any further improvement on our end.
Does vte do lazy rewrapping do you know?
No lazy rewrapping unfortunately. At resize vte synchronously rewraps the entire scrollback and blocks for the duration of this operation. On my machine it takes about 0.2 seconds per 1M lines of scrollback.
There's an API to toggle the resize on rewrap feature, gnome-terminal offers it in its preferences, tilda might as well consider adding it. This is the best workaround we can offer for those who want to have a giant scrollback and want to resize their terminals.
I guess the relevant API function is this one: vte_terminal_set_rewrap_on_resize
, I am going to flag this as enhancement. We can probably consider to add this for 1.4
This happens when I run unlimited or 5000+ in the scroll-back limit, noticeably Tilda is not slow to hide / disappear from normal size, but it is for full-screen. Not sure if this is related to the other fullscreen issue, but what I suspect happens is that the lines get re-wrapped to normal-size and then must be re-wrapped again for the fullscreen view.
If screen-size is set to 100% in appearance there is no noticeable increase in delay for minimizing/maximizing to and from.