GNOME Bugzilla – Bug 734054
ui: always set the frame background to None
Last modified: 2014-08-04 09:30:34 UTC
This way the xserver never paints the frame background, even if the client window is destroyed. This allows us to have clean destroy window animation. There is no problem with interactive resizing because applications are using the XSync protocol, so we're not painting unless the client has redrawn.
Created attachment 282171 [details] [review] ui: always set the frame background to None
Review of attachment 282171 [details] [review]: OK.
Attachment 282171 [details] pushed as d0f2c6b - ui: always set the frame background to None
(In reply to comment #0) > There is no problem with interactive resizing because applications > are using the XSync protocol, so we're not painting unless the > client has redrawn. "because applications are using the Sync protocol" ... that is only true for gtk3 apps. Not gtk2, qt, java swing, ... You should probably just do it for apps that do use the sync protocol.
I tested with GTK2 and Qt apps and they work fine as well.
(In reply to comment #5) > I tested with GTK2 and Qt apps and they work fine as well. OK, then just the commit message is wrong.
(In reply to comment #4) > (In reply to comment #0) > > > There is no problem with interactive resizing because applications > > are using the XSync protocol, so we're not painting unless the > > client has redrawn. > > "because applications are using the Sync protocol" ... that is only true for > gtk3 apps. Not gtk2, qt, java swing, ... > > You should probably just do it for apps that do use the sync protocol. This only requires the old sync protocol for the best appearance, not the new enhanced one, so there's more widespread availability. (It's also pretty much fine without the sync protocol since from the point of view of our redrawing, resizing the client window and resizing/redrawing the frame should be atomic.)