diff options
author | Anselm R. Garbe <garbeam@wmii.de> | 2006-07-11 12:52:57 +0200 |
---|---|---|
committer | Anselm R. Garbe <garbeam@wmii.de> | 2006-07-11 12:52:57 +0200 |
commit | 16c67f32d62849792c8e6d4fdec22a1896f9c279 (patch) | |
tree | cb18262f3e207d8229bf0f8833f602a7b7903b03 /wm.c | |
parent | 366d81e313e6dd4e9e6c61ed8dfca4b4b40ccde6 (diff) | |
download | dwm-16c67f32d62849792c8e6d4fdec22a1896f9c279.tar.gz |
fixed several stuff (gridwm gets better and better)
Diffstat (limited to 'wm.c')
-rw-r--r-- | wm.c | 50 |
1 files changed, 4 insertions, 46 deletions
@@ -16,11 +16,11 @@ /* X structs */ Display *dpy; Window root, barwin; -Atom wm_atom[WMLast], net_atom[NetLast]; +Atom net_atom[NetLast]; Cursor cursor[CurLast]; XRectangle rect, barrect; Bool running = True; -Client *client = NULL; +Client *clients = NULL; char *bartext, tag[256]; int screen, sel_screen; @@ -63,46 +63,6 @@ scan_wins() XFree(wins); } -static int -win_property(Window w, Atom a, Atom t, long l, unsigned char **prop) -{ - Atom real; - int format; - unsigned long res, extra; - int status; - - status = XGetWindowProperty(dpy, w, a, 0L, l, False, t, &real, &format, - &res, &extra, prop); - - if(status != Success || *prop == NULL) { - return 0; - } - if(res == 0) - free((void *) *prop); - return res; -} - -int -win_proto(Window w) -{ - Atom *protocols; - long res; - int protos = 0; - int i; - - res = win_property(w, wm_atom[WMProtocols], XA_ATOM, 20L, - ((unsigned char **) &protocols)); - if(res <= 0) { - return protos; - } - for(i = 0; i < res; i++) { - if(protocols[i] == wm_atom[WMDelete]) - protos |= WM_PROTOCOL_DELWIN; - } - free((char *) protocols); - return protos; -} - /* * There's no way to check accesses to destroyed windows, thus * those cases are ignored (especially on UnmapNotify's). @@ -201,9 +161,6 @@ main(int argc, char *argv[]) x_error_handler = XSetErrorHandler(error_handler); /* init atoms */ - wm_atom[WMState] = XInternAtom(dpy, "WM_STATE", False); - wm_atom[WMProtocols] = XInternAtom(dpy, "WM_PROTOCOLS", False); - wm_atom[WMDelete] = XInternAtom(dpy, "WM_DELETE_WINDOW", False); net_atom[NetSupported] = XInternAtom(dpy, "_NET_SUPPORTED", False); net_atom[NetWMName] = XInternAtom(dpy, "_NET_WM_NAME", False); @@ -242,7 +199,8 @@ main(int argc, char *argv[]) XMapRaised(dpy, barwin); draw_bar(); - wa.event_mask = SubstructureRedirectMask | EnterWindowMask | LeaveWindowMask; + wa.event_mask = SubstructureRedirectMask | EnterWindowMask \ + | LeaveWindowMask; wa.cursor = cursor[CurNormal]; XChangeWindowAttributes(dpy, root, CWEventMask | CWCursor, &wa); |