I want to get the normal background color of a widget (a GtkHeaderBar
, in this case). I'm currently using
style = self.get_titlebar().get_style_context()
to get the style, and
color = style.get_property("background-color", Gtk.StateFlags.NORMAL)
to get the background color associated to that style.
However it returns a Gkd.RGBA
object with the following properties:
Gdk.RGBA(red=0.000000, green=0.000000, blue=0.000000, alpha=0.000000)
But if I open GTK Inspector, select the HeaderBar, and goes to the style properties, it shows
background-color | rgb(57,63,63) | gtk-contained-dark.css:1568.29
What do I have to do to get these same values?
Edit:
I am experimenting with the GtkStyleContext.render_background()
, but I'm having no success:
surfc = Cairo.ImageSurface (Cairo.FORMAT_ARGB32, 10, 10)
contx = Cairo.Context(surfc)
style = self.get_titlebar().get_style_context()
backg = Gtk.render_background(style, contx, 10, 10, 10, 10)
surfc.write_to_png("test.png")
The resulting file test.png
is a rgba(0, 0, 0, 0)
image.