summaryrefslogtreecommitdiff
path: root/src/overlays.c
diff options
context:
space:
mode:
authorVito Caputo <vcaputo@gnugeneration.com>2017-03-15 01:59:07 -0700
committerVito Caputo <vcaputo@gnugeneration.com>2017-03-15 02:04:03 -0700
commit5bb2a77b7ef357975346b0380471aedbd775d164 (patch)
treed04aea3ae29ab73640418aa96c9aaeb92de95a32 /src/overlays.c
parentbc04055653fe64c4e8e109beedf96dd608007a3b (diff)
overlays: paramize vwm_overlay_render() Render op
In vwm we were always doing a transparent overlay to preserve underlying window visibility. With vmon this is undesirable and we just want to copy the currently cached composited contents to the window, which is also substantially less costly to perform. Parameterize the operation so vwm and vmon can specify what's appropriate.
Diffstat (limited to 'src/overlays.c')
-rw-r--r--src/overlays.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/overlays.c b/src/overlays.c
index 15f351c..18c188b 100644
--- a/src/overlays.c
+++ b/src/overlays.c
@@ -1067,7 +1067,7 @@ void vwm_overlay_compose(vwm_overlays_t *overlays, vwm_overlay_t *overlay, Xserv
/* render the overlay into a picture at the specified coordinates and dimensions */
-void vwm_overlay_render(vwm_overlays_t *overlays, vwm_overlay_t *overlay, Picture dest, int x, int y, int width, int height)
+void vwm_overlay_render(vwm_overlays_t *overlays, vwm_overlay_t *overlay, int op, Picture dest, int x, int y, int width, int height)
{
vwm_xserver_t *xserver = overlays->xserver;
@@ -1075,7 +1075,7 @@ void vwm_overlay_render(vwm_overlays_t *overlays, vwm_overlay_t *overlay, Pictur
return;
/* draw the monitoring overlay atop dest, note we stay within the window borders here. */
- XRenderComposite(xserver->display, PictOpOver, overlay->picture, None, dest,
+ XRenderComposite(xserver->display, op, overlay->picture, None, dest,
0, 0, 0, 0, /* src x,y, maxk x, y */
x, /* dst x */
y, /* dst y */
© All Rights Reserved