aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-gtk-utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'e-util/e-gtk-utils.c')
-rw-r--r--e-util/e-gtk-utils.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/e-util/e-gtk-utils.c b/e-util/e-gtk-utils.c
index 564d834cfb..f865dabf8d 100644
--- a/e-util/e-gtk-utils.c
+++ b/e-util/e-gtk-utils.c
@@ -26,7 +26,9 @@
#include <config.h>
#endif
+#include <gtk/gtklayout.h>
#include <gtk/gtksignal.h>
+#include <gtk/gtkwidget.h>
#include <gdk/gdkx.h>
@@ -119,10 +121,15 @@ widget_realize_callback_for_backing_store (GtkWidget *widget,
void *data)
{
XSetWindowAttributes attributes;
+ GdkWindow *window;
+
+ if (GTK_IS_LAYOUT (widget))
+ window = GTK_LAYOUT (widget)->bin_window;
+ else
+ window = widget->window;
attributes.backing_store = Always;
- XChangeWindowAttributes (GDK_WINDOW_XDISPLAY (widget->window),
- GDK_WINDOW_XWINDOW (widget->window),
+ XChangeWindowAttributes (GDK_WINDOW_XDISPLAY (window), GDK_WINDOW_XWINDOW (window),
CWBackingStore, &attributes);
}