X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=spectrwm.c;h=fd5b1190c61b94dda961e198348d76df72d0686b;hb=d8971cd3d658a3057b4755a6e8b8ecd2f5e3a6ce;hp=e4ad9e23debb512c22f7f9828e1a90d3e0a6fdea;hpb=7d1350c820a359808e9943d7eaa9f0a8a5a64406;p=spectrwm.git diff --git a/spectrwm.c b/spectrwm.c index e4ad9e2..fd5b119 100644 --- a/spectrwm.c +++ b/spectrwm.c @@ -4276,6 +4276,7 @@ resize(struct ws_win *win, union arg *args) int dx, dy; Cursor cursor; unsigned int shape; /* cursor style */ + xcb_grab_pointer_reply_t *gpr; xcb_query_pointer_reply_t *xpr; if (win == NULL) @@ -4355,8 +4356,12 @@ resize(struct ws_win *win, union arg *args) cursor = XCreateFontCursor(display, shape); - if (XGrabPointer(display, win->id, False, MOUSEMASK, GrabModeAsync, - GrabModeAsync, None, cursor, CurrentTime) != GrabSuccess) { + gpr = xcb_grab_pointer_reply(conn, + xcb_grab_pointer(conn, False, win->id, MOUSEMASK, + XCB_GRAB_MODE_ASYNC, XCB_GRAB_MODE_ASYNC, XCB_WINDOW_NONE, + cursor, XCB_CURRENT_TIME), + NULL); + if (!gpr) { XFreeCursor(display, cursor); free(xpr); return; @@ -4463,7 +4468,7 @@ move(struct ws_win *win, union arg *args) Time time = 0; int move_step = 0; struct swm_region *r = NULL; - + xcb_grab_pointer_reply_t *gpr; xcb_query_pointer_reply_t *qpr; if (win == NULL) @@ -4519,10 +4524,14 @@ move(struct ws_win *win, union arg *args) return; } - if (XGrabPointer(display, win->id, False, MOUSEMASK, GrabModeAsync, - GrabModeAsync, None, XCreateFontCursor(display, XC_fleur), - CurrentTime) != GrabSuccess) - return; + gpr = xcb_grab_pointer_reply(conn, + xcb_grab_pointer(conn, False, win->id, MOUSEMASK, + XCB_GRAB_MODE_ASYNC, XCB_GRAB_MODE_ASYNC, + XCB_WINDOW_NONE, XCreateFontCursor(display, XC_fleur), + XCB_CURRENT_TIME), + NULL); + if (!gpr) + return; /* get cursor offset from window root */ qpr = xcb_query_pointer_reply(conn, xcb_query_pointer(conn, win->id),