From 6f3c1e4dd60264244be353b42293cd0995589e5e Mon Sep 17 00:00:00 2001 From: lukefromdc Date: Fri, 29 Jul 2016 17:02:30 -0400 Subject: GTK3.21:fix desktop redraw (caja-desktop-window.c) --- src/caja-desktop-window.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/caja-desktop-window.c b/src/caja-desktop-window.c index 743ee24f..cea694d0 100644 --- a/src/caja-desktop-window.c +++ b/src/caja-desktop-window.c @@ -167,6 +167,13 @@ map (GtkWidget *widget) /* Chain up to realize our children */ GTK_WIDGET_CLASS (caja_desktop_window_parent_class)->map (widget); gdk_window_lower (gtk_widget_get_window (widget)); +#if GTK_CHECK_VERSION(3, 21, 0) + GdkWindow *window; + GdkRGBA transparent = { 0, 0, 0, 0 }; + + window = gtk_widget_get_window (widget); + gdk_window_set_background_rgba (window, &transparent); +#endif } static void @@ -236,14 +243,21 @@ realize (GtkWidget *widget) { CajaDesktopWindow *window; CajaDesktopWindowDetails *details; - +#if GTK_CHECK_VERSION(3, 21, 0) + GdkVisual *visual; +#endif window = CAJA_DESKTOP_WINDOW (widget); details = window->details; /* Make sure we get keyboard events */ gtk_widget_set_events (widget, gtk_widget_get_events (widget) | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK); - +#if GTK_CHECK_VERSION(3, 21, 0) + visual = gdk_screen_get_rgba_visual (gtk_widget_get_screen (widget)); + if (visual) { + gtk_widget_set_visual (widget, visual); + } +#endif /* Do the work of realizing. */ GTK_WIDGET_CLASS (caja_desktop_window_parent_class)->realize (widget); -- cgit v1.2.1