GNOME Bugzilla – Bug 771739
GTK+ 3.21.6 causes rendering issues with gnome-boxes and many other applications
Last modified: 2017-08-25 01:20:39 UTC
(Originally filed as a Debian bug at https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=836426 .) GTK+ 3.21.6 causes gnome-boxes to fail to redraw the guest graphical display, when the guest uses the QXL graphics driver and displays via Spice. This occurs with gnome-boxes 3.20 and 3.22. I can reliably reproduce this with a Windows VM running the QXL graphics driver. The screen goes black a moment after the login screen shows up, and never updates. Resizing the window immediately causes the contents to show, until the guest notices the change and changes its video mode to match, at which point the screen goes black again. Looking at the console shows various warning messages from gnome-boxes about widgets "drawn without a current allocation". Various other applications in Debian have signs of hitting this same bug in GTK+ 3.21, including redraw issues and warning messages. Reverting GTK+ to 3.20 eliminates this bug, and redrawing in gnome-boxes works correctly. Happy to build and test GTK+ patches that might address this; I can very quickly and reliably reproduce this with gnome-boxes.
I'm having the exact same issue with GTK+ 3.21.5 and virt-manager. I'm also on Debian, also running a Windows VM with QXL graphics via Spice. VNC is not affected and seems to be a temporary workaround for the problem. Likewise I'm also getting many warnings about "GtkScrollbar ... is drawn without a current allocation", specifically from gnome-terminal - but it doesn't seem to have any redrawing issues as far as I can tell.
I have similar issues. But warnings messages are not clear enough to find the problem on application side. May I doing something wrong but they should suggest where to start to search. Exists any documentation about on how to correctly allocate using API and Glade.
I have the same issues as Josh (running Debian Stretch and Windows VM with QXL and spice).
I would say that the bug is caused by spice-gtk, as I can reproduce it in gnome-boxes, remote-viewer, spicy and virt-viewer (all of them share the same library). Of course there still might be a bug / regression present in GTK, which then causes trouble for spice-gtk.
(In reply to mnl from comment #4) > I would say that the bug is caused by spice-gtk, as I can reproduce it in > gnome-boxes, remote-viewer, spicy and virt-viewer (all of them share the > same library). Of course there still might be a bug / regression present in > GTK, which then causes trouble for spice-gtk. It's possible that some change in spice-gtk might work around this issue, but if GTK+ has changed in a way that causes rendering issues in applications that previously worked, that seems like a regression in GTK+.
According to https://bugzilla.redhat.com/show_bug.cgi?id=1379547 , it appears to be fixed in spice-gtk v0.33. I've built Debian packages from v0.33 tarball and remote-viewer started to work again.
Thanks mnl. I can confirm that rebuilding the Debian packages with the v0.33 changes from upstream fixes the issue for me.
Sounds like this was resolved elsewhere. Please reopen if not.