- {
GError *error = NULL;
background_image_pixbuf = gdk_pixbuf_new_from_file(path, &error);
if (! background_image_pixbuf)
{
g_warning("Failed to load VTE background image: %s", error->message);
g_error_free(error);
}
/* alter the background color to add alpha to it */
else if (vf->vte_terminal_set_color_background_rgba)
{
GdkRGBA bg;
/* default VTE "saturation" value is 0.4: 1.0 - 0.4 = 0.6 */
rgba_from_color(&bg, &vc->colour_back, 0.6);
apparently this is wrong, and VTE doesn't use the background color to perform the blend, but black instead.
IMO the implementation here is better as it's more flexible at very little cost, but if we want to get exact same behavior we should use `GdkRGBA bg = { 0, 0, 0, 0.6 }`.