← Back to team overview

desktop-packages team mailing list archive

[Bug 1436553] Re: Transparent windows render black with Gtk3.16 and compiz

 

I just build compiz from the compiz-0.9.12.1+15.10.20150805 source code
on Debian Unstable and gtk3.17. It built fine if I disabled Google
protocol buffers, which Cmake lists as giving faster XML loading only.
The Ubuntu packages build from this could not be installed because that
dependency is not installable right now. My build went fine and ran when
compiz was restarted.

Two of the three issues were fixed but one remains: the gtk-window-
decorator works fine now, and the transparent calendars and menus in my
hacked version of Mate-panel worked perfectly. Unfortunately, issues
with CSD applications are NOT fixed, at least not in gtk3.17. I got
black borders out to the margin set by the windows rather than
compositing of client-side decorated windows. The test program was
gnome-disks, it yielded ugly black borders all the way around.

By comparison, my normal build of compiz from the older 0.9.12.0 "add-
gtk-frame-extents-to-net-supported" source with the "gtk" directory
replaced with that from  compiz_0.9.12.1+15.10.20150627.1.orig.tar.gz
works fine with CSD applications, rendering the rounded corners just
fine with normal compositing. Not only that, the build with gcc 4.9
still works even after the gcc5 transition.  I will use this until the
newest version fixes the CSD issue, I don't know if this is unique to
gtk3.17 right now or somehow related to my build not using the protocol
buffers. That I will find out when I can install the offending program
without removing Inkscape.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to compiz in Ubuntu.
https://bugs.launchpad.net/bugs/1436553

Title:
  Transparent windows render black with Gtk3.16 and compiz

Status in Compiz:
  Fix Committed
Status in compiz package in Ubuntu:
  Confirmed

Bug description:
  Running compiz_1%3a0.9.12.0+15.04.20150202-0ubuntu1 without unity (in
  mate compiled with gtk-3) and testing Gtk-3.16 I run into serious
  issues with failures to render certain Gtk Windows transparent.
  Hardware is AMD FX 8120 with radeon HD 6750 GPU.

  My theme sets popup windows used by menus transparent, and Gtk
  application windows with client side decoration (CSD) have
  transparency underlying the GtkHeaderBar. In the latter case this is
  what makes rounded corners possible.   The transparent popup windows
  used with my theme to support menus resembling gnome-shell's widgets
  in my hacked Gtk3 version of mate-panel work fine with Gtk3.14 but due
  to the window issue get black corners with compiz and Gtk-3.16.
  Windows drawn transparent with cairo still work, but windows set
  transparent by GTK usually do not,

  Changing the window manager to Mutter makes transparency work
  perfectly. In Gtk-3.14 transparency works in Metacity with compositing
  enabled, it does not with gtk-3.16.

  I am not sure whether this should be considered a compiz bug or a Gtk
  bug, but since transparency works fine in gnome-shell and mutter (as
  used by shell), I am not sure the GNOME team would consider this a bug
  they are willing to fix.  If nobody fixes this any GNOME application
  that forces client side decoration (such as the gtk3-demo or gtk3
  -widget-factory) will be ugly in Ubuntu unless the client side
  decorations have square corners.

To manage notifications about this bug go to:
https://bugs.launchpad.net/compiz/+bug/1436553/+subscriptions


References