diff options
Diffstat (limited to 'libX11/src')
-rw-r--r-- | libX11/src/Iconify.c | 26 | ||||
-rw-r--r-- | libX11/src/ReconfWM.c | 37 | ||||
-rw-r--r-- | libX11/src/Withdraw.c | 22 | ||||
-rw-r--r-- | libX11/src/xkb/XKB.c | 11 | ||||
-rw-r--r-- | libX11/src/xkb/XKBMAlloc.c | 2 |
5 files changed, 52 insertions, 46 deletions
diff --git a/libX11/src/Iconify.c b/libX11/src/Iconify.c index 3a969d741..9da416596 100644 --- a/libX11/src/Iconify.c +++ b/libX11/src/Iconify.c @@ -67,19 +67,23 @@ Status XIconifyWindow ( Window w, int screen) { - XClientMessageEvent ev; - Window root = RootWindow (dpy, screen); Atom prop; prop = XInternAtom (dpy, "WM_CHANGE_STATE", False); - if (prop == None) return False; + if (prop == None) + return False; + else { + XClientMessageEvent ev = { + .type = ClientMessage, + .window = w, + .message_type = prop, + .format = 32, + .data.l[0] = IconicState + }; + Window root = RootWindow (dpy, screen); - ev.type = ClientMessage; - ev.window = w; - ev.message_type = prop; - ev.format = 32; - ev.data.l[0] = IconicState; - return (XSendEvent (dpy, root, False, - SubstructureRedirectMask|SubstructureNotifyMask, - (XEvent *)&ev)); + return (XSendEvent (dpy, root, False, + SubstructureRedirectMask|SubstructureNotifyMask, + (XEvent *)&ev)); + } } diff --git a/libX11/src/ReconfWM.c b/libX11/src/ReconfWM.c index 1776f2e15..8dc3534e0 100644 --- a/libX11/src/ReconfWM.c +++ b/libX11/src/ReconfWM.c @@ -41,7 +41,6 @@ Status XReconfigureWMWindow ( unsigned int mask, XWindowChanges *changes) { - XConfigureRequestEvent ev; Window root = RootWindow (dpy, screen); _XAsyncHandler async; _XAsyncErrorState async_state; @@ -120,20 +119,24 @@ Status XReconfigureWMWindow ( /* * If the request succeeded, then everything is okay; otherwise, send event */ - if (!async_state.error_count) return True; - - ev.type = ConfigureRequest; - ev.window = w; - ev.parent = root; - ev.value_mask = (mask & AllMaskBits); - ev.x = changes->x; - ev.y = changes->y; - ev.width = changes->width; - ev.height = changes->height; - ev.border_width = changes->border_width; - ev.above = changes->sibling; - ev.detail = changes->stack_mode; - return (XSendEvent (dpy, root, False, - SubstructureRedirectMask|SubstructureNotifyMask, - (XEvent *)&ev)); + if (!async_state.error_count) + return True; + else { + XConfigureRequestEvent ev = { + .type = ConfigureRequest, + .window = w, + .parent = root, + .value_mask = (mask & AllMaskBits), + .x = changes->x, + .y = changes->y, + .width = changes->width, + .height = changes->height, + .border_width = changes->border_width, + .above = changes->sibling, + .detail = changes->stack_mode, + }; + return (XSendEvent (dpy, root, False, + SubstructureRedirectMask|SubstructureNotifyMask, + (XEvent *)&ev)); + } } diff --git a/libX11/src/Withdraw.c b/libX11/src/Withdraw.c index ac15ddc92..1015f5b86 100644 --- a/libX11/src/Withdraw.c +++ b/libX11/src/Withdraw.c @@ -67,16 +67,18 @@ Status XWithdrawWindow ( Window w, int screen) { - XUnmapEvent ev; - Window root = RootWindow (dpy, screen); - XUnmapWindow (dpy, w); - ev.type = UnmapNotify; - ev.event = root; - ev.window = w; - ev.from_configure = False; - return (XSendEvent (dpy, root, False, - SubstructureRedirectMask|SubstructureNotifyMask, - (XEvent *)&ev)); + { + Window root = RootWindow (dpy, screen); + XUnmapEvent ev = { + .type = UnmapNotify, + .event = root, + .window = w, + .from_configure = False + }; + return (XSendEvent (dpy, root, False, + SubstructureRedirectMask|SubstructureNotifyMask, + (XEvent *)&ev)); + } } diff --git a/libX11/src/xkb/XKB.c b/libX11/src/xkb/XKB.c index dbcfff05d..9a04c10c1 100644 --- a/libX11/src/xkb/XKB.c +++ b/libX11/src/xkb/XKB.c @@ -701,9 +701,7 @@ XkbGetPerClientControls(Display *dpy, unsigned *ctrls) if ((dpy->flags & XlibDisplayNoXkb) || (!dpy->xkb_info && !XkbUseExtension(dpy, NULL, NULL)) || - (*ctrls & ~(XkbPCF_GrabsUseXKBStateMask | - XkbPCF_LookupStateWhenGrabbed | - XkbPCF_SendEventUsesXKBState))) + (ctrls == NULL)) return False; LockDisplay(dpy); xkbi = dpy->xkb_info; @@ -721,10 +719,9 @@ XkbGetPerClientControls(Display *dpy, unsigned *ctrls) } UnlockDisplay(dpy); SyncHandle(); - if (ctrls) - *ctrls = (rep.value & (XkbPCF_GrabsUseXKBStateMask | - XkbPCF_LookupStateWhenGrabbed | - XkbPCF_SendEventUsesXKBState)); + *ctrls = (rep.value & (XkbPCF_GrabsUseXKBStateMask | + XkbPCF_LookupStateWhenGrabbed | + XkbPCF_SendEventUsesXKBState)); return (True); } diff --git a/libX11/src/xkb/XKBMAlloc.c b/libX11/src/xkb/XKBMAlloc.c index 0b86aa1d5..2e39634a7 100644 --- a/libX11/src/xkb/XKBMAlloc.c +++ b/libX11/src/xkb/XKBMAlloc.c @@ -300,7 +300,7 @@ XkbAddKeyType(XkbDescPtr xkb, } } } - if ((!map) || (!map->types) || (!map->num_types < XkbNumRequiredTypes)) { + if ((!map) || (!map->types) || (map->num_types < XkbNumRequiredTypes)) { tmp = XkbNumRequiredTypes + 1; if (XkbAllocClientMap(xkb, XkbKeyTypesMask, tmp) != Success) return NULL; |