[metacity] compositor: try to use root window background



commit 245f84223562b0137b42e686a724a8c6e773efef
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Sun Apr 3 23:30:20 2016 +0300

    compositor: try to use root window background

 src/compositor/compositor-xrender.c |   29 +++++++++++++++++++++++++++++
 1 files changed, 29 insertions(+), 0 deletions(-)
---
diff --git a/src/compositor/compositor-xrender.c b/src/compositor/compositor-xrender.c
index 402b268..4aef318 100644
--- a/src/compositor/compositor-xrender.c
+++ b/src/compositor/compositor-xrender.c
@@ -847,6 +847,35 @@ root_tile (MetaScreen *screen)
 
   if (!pixmap)
     {
+      int width;
+      int height;
+
+      meta_screen_get_size (screen, &width, &height);
+
+      pixmap = XCreatePixmap (xdisplay, xroot, width, height,
+                              DefaultDepth (xdisplay, screen_number));
+
+      if (pixmap)
+        {
+          XGCValues gcv;
+          GC gc;
+
+          gcv.graphics_exposures = False;
+          gcv.subwindow_mode = IncludeInferiors;
+
+          gc = XCreateGC (xdisplay, xroot,
+                          GCGraphicsExposures | GCSubwindowMode,
+                          &gcv);
+
+          XCopyArea (xdisplay, xroot, pixmap, gc, 0, 0, width, height, 0, 0);
+          XSync (xdisplay, False);
+
+          XFreeGC (xdisplay, gc);
+        }
+    }
+
+  if (!pixmap)
+    {
       pixmap = XCreatePixmap (xdisplay, xroot, 1, 1,
                               DefaultDepth (xdisplay, screen_number));
       g_return_val_if_fail (pixmap != None, None);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]