Xnest: replace XSetClipMask() by xcb_change_gc()

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
Enrico Weigelt, metux IT consult 2024-08-05 16:00:15 +02:00
parent 9997ad9ab1
commit 284eff8e96

View File

@ -205,7 +205,13 @@ xnestChangeClip(GCPtr pGC, int type, void *pValue, int nRects)
switch (type) { switch (type) {
case CT_NONE: case CT_NONE:
XSetClipMask(xnestDisplay, xnestGC(pGC), XCB_PIXMAP_NONE); {
uint32_t pixmap = XCB_PIXMAP_NONE;
xcb_change_gc(xnestUpstreamInfo.conn,
xnest_upstream_gc(pGC),
XCB_GC_CLIP_MASK,
&pixmap);
}
pValue = NULL; pValue = NULL;
break; break;
@ -239,8 +245,13 @@ xnestChangeClip(GCPtr pGC, int type, void *pValue, int nRects)
break; break;
case CT_PIXMAP: case CT_PIXMAP:
XSetClipMask(xnestDisplay, xnestGC(pGC), {
xnestPixmap((PixmapPtr) pValue)); uint32_t val = xnestPixmap((PixmapPtr) pValue);
xcb_change_gc(xnestUpstreamInfo.conn,
xnest_upstream_gc(pGC),
XCB_GC_CLIP_MASK,
&val);
}
/* /*
* Need to change into region, so subsequent uses are with * Need to change into region, so subsequent uses are with
* current pixmap contents. * current pixmap contents.
@ -318,7 +329,11 @@ xnestDestroyClip(GCPtr pGC)
{ {
if (pGC->clientClip) { if (pGC->clientClip) {
RegionDestroy(pGC->clientClip); RegionDestroy(pGC->clientClip);
XSetClipMask(xnestDisplay, xnestGC(pGC), XCB_PIXMAP_NONE); uint32_t val = XCB_PIXMAP_NONE;
xcb_change_gc(xnestUpstreamInfo.conn,
xnest_upstream_gc(pGC),
XCB_GC_CLIP_MASK,
&val);
pGC->clientClip = NULL; pGC->clientClip = NULL;
} }
} }