ghostty icon indicating copy to clipboard operation
ghostty copied to clipboard

gtk-ng: fix new/close split "flicker"

Open mitchellh opened this issue 5 months ago • 2 comments

Right now, new/close split cause a noticeable flicker, see #8202 for a video.

This is because we have to wait 1 or more event loop ticks for the surface widgets to unparent before building the new GtkPaned tree. We should be able to do this all in one frame, but every time I tried I hit rendering issues. I suspect I'm just messing things up with my [lack of] GTK knowledge.

mitchellh avatar Aug 11 '25 15:08 mitchellh

I believe I'm experiencing the same issue - not only on splits creation (which are much much slower to respond than in your video on my end), but also on window creation, when using Hyprland. Shows either a fully transparent or a semi-rendered surface (I believe upper side transparent, lower rendered?) for a split second.

Seems fine with GNOME? Tweaking GTK-related, window, CSD settings... do not change anything. Always reproductible no matter the config on Hyprland, even without background transparency.

busybox11 avatar Nov 14 '25 01:11 busybox11

We're already aware that it's reproducible on every setup. The speed of your system may make the flicker more or less noticeable. It's something deep in how GTK is handling the reshuffling of widgets when a new split is created that so far no one has figured out.

So for future people that encounter this bug, please no "me too" posts unless you have something more to offer than "it happens to me on X with Y".

Add a reaction to the 1st comment and subscribe if you want to follow along.

jcollie avatar Nov 14 '25 01:11 jcollie