about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--exwm-cm.el16
1 files changed, 11 insertions, 5 deletions
diff --git a/exwm-cm.el b/exwm-cm.el
index 233d5e0773..095b59f7a1 100644
--- a/exwm-cm.el
+++ b/exwm-cm.el
@@ -661,14 +661,14 @@ painting a frame."
             (setq queue
                   (nconc (exwm-cm--paint-tree subtree region fullscreen clip)
                          queue))
-            (when fullscreen
-              ;; Fullscreen X windows are always opaque thus occludes
-              ;; anything in this workspace.
-              (throw 'break 'fullscreen))
             (when clip
               (xcb:+request exwm-cm--conn
                   (make-instance 'xcb:xfixes:DestroyRegion
-                                 :region clip))))
+                                 :region clip)))
+            (when fullscreen
+              ;; Fullscreen X windows are always opaque thus occludes
+              ;; anything in this workspace.
+              (throw 'break 'fullscreen)))
           (if (not (eq root exwm--root))
               ;; Avoid painting any siblings below the workspace frame
               ;; container.
@@ -863,6 +863,9 @@ Also update the attributes of XWIN and clip the region."
                            :value-mask xcb:render:CP:Repeat
                            :repeat 1))
         (xcb:+request exwm-cm--conn
+            (make-instance 'xcb:FreePixmap
+                           :pixmap pixmap))
+        (xcb:+request exwm-cm--conn
             (make-instance 'xcb:render:FillRectangles
                            :op xcb:render:PictOp:Src
                            :dst alpha-picture
@@ -1034,6 +1037,9 @@ the whole screen."
                          :repeat 1))
       (unless exist
         (xcb:+request exwm-cm--conn
+            (make-instance 'xcb:FreePixmap
+                           :pixmap pixmap))
+        (xcb:+request exwm-cm--conn
             (make-instance 'xcb:render:FillRectangles
                            :op xcb:render:PictOp:Src
                            :dst exwm-cm--background