Blob Blame History Raw
From 4e5a1037de0dc24e44a58e239e281b4c2d5740af Mon Sep 17 00:00:00 2001
From: leigh123linux <leigh123linux@googlemail.com>
Date: Sat, 23 Jul 2016 18:05:14 +0100
Subject: [PATCH] Fix GTK 3.21.3 desktop redraw issue (#1231)

---
 libnemo-private/nemo-icon-container.c | 2 ++
 src/nemo-desktop-icon-view.c          | 4 ++++
 src/nemo-style-application.css        | 5 +++++
 3 files changed, 11 insertions(+)

diff --git a/libnemo-private/nemo-icon-container.c b/libnemo-private/nemo-icon-container.c
index 002351f..a26ed2c 100644
--- a/libnemo-private/nemo-icon-container.c
+++ b/libnemo-private/nemo-icon-container.c
@@ -4249,11 +4249,13 @@ realize (GtkWidget *widget)
 
 	container = NEMO_ICON_CONTAINER (widget);
 
+#if !GTK_CHECK_VERSION(3, 21, 0)
 	/* Ensure that the desktop window is native so the background
 	   set on it is drawn by X. */
 	if (container->details->is_desktop) {
 		gdk_x11_window_get_xid (gtk_layout_get_bin_window (GTK_LAYOUT (widget)));
 	}
+#endif
 
 	/* Set up DnD.  */
 	nemo_icon_dnd_init (container);
diff --git a/src/nemo-desktop-icon-view.c b/src/nemo-desktop-icon-view.c
index ad025d3..be310b5 100644
--- a/src/nemo-desktop-icon-view.c
+++ b/src/nemo-desktop-icon-view.c
@@ -155,6 +155,10 @@ nemo_desktop_icon_view_class_init (NemoDesktopIconViewClass *class)
 	vclass->update_menus = real_update_menus;
 	vclass->get_view_id = real_get_id;
 
+#if GTK_CHECK_VERSION(3, 21, 0)
+	GtkWidgetClass *wclass = GTK_WIDGET_CLASS (class);
+	gtk_widget_class_set_css_name (wclass, "nemo-desktop-icon-view");
+#endif
 	g_type_class_add_private (class, sizeof (NemoDesktopIconViewDetails));
 }
 
diff --git a/src/nemo-style-application.css b/src/nemo-style-application.css
index f6a781a..aa682b3 100644
--- a/src/nemo-style-application.css
+++ b/src/nemo-style-application.css
@@ -1,5 +1,10 @@
 /* Desktop text stuff */
 
+.nemo-window.nemo-desktop-window notebook,
+.nemo-window.nemo-desktop-window paned {
+	background-color: transparent;
+}
+
 .nemo-canvas-item {
     border-radius: 3px;
 }
-- 
2.9.2