comparison wm.c @ 6:e0cefb3981c8

implemented pipe_spawn
author Anselm R. Garbe <garbeam@wmii.de>
date Tue, 11 Jul 2006 11:10:05 +0200
parents e5018cae273f
children 49e2fc9fb94f
comparison
equal deleted inserted replaced
5:e5018cae273f 6:e0cefb3981c8
19 Atom wm_atom[WMLast], net_atom[NetLast]; 19 Atom wm_atom[WMLast], net_atom[NetLast];
20 Cursor cursor[CurLast]; 20 Cursor cursor[CurLast];
21 XRectangle rect, barrect; 21 XRectangle rect, barrect;
22 Bool running = True; 22 Bool running = True;
23 23
24 char *bartext, *shell; 24 char *bartext;
25 int screen, sel_screen; 25 int screen, sel_screen;
26 unsigned int lock_mask, numlock_mask; 26 unsigned int lock_mask, numlock_mask;
27 27
28 /* draw structs */ 28 /* draw structs */
29 Brush brush = {0}; 29 Brush brush = {0};
54 if(!XGetWindowAttributes(dpy, wins[i], &wa)) 54 if(!XGetWindowAttributes(dpy, wins[i], &wa))
55 continue; 55 continue;
56 if(wa.override_redirect || XGetTransientForHint(dpy, wins[i], &d1)) 56 if(wa.override_redirect || XGetTransientForHint(dpy, wins[i], &d1))
57 continue; 57 continue;
58 if(wa.map_state == IsViewable) 58 if(wa.map_state == IsViewable)
59 /*manage*/; 59 manage(create_client(wins[i], &wa));
60 } 60 }
61 } 61 }
62 if(wins) 62 if(wins)
63 XFree(wins); 63 XFree(wins);
64 } 64 }
217 XFlush(dpy); 217 XFlush(dpy);
218 218
219 if(other_wm_running) 219 if(other_wm_running)
220 error("gridwm: another window manager is already running\n"); 220 error("gridwm: another window manager is already running\n");
221 221
222 if(!(shell = getenv("SHELL")))
223 shell = "/bin/sh";
224
225 rect.x = rect.y = 0; 222 rect.x = rect.y = 0;
226 rect.width = DisplayWidth(dpy, screen); 223 rect.width = DisplayWidth(dpy, screen);
227 rect.height = DisplayHeight(dpy, screen); 224 rect.height = DisplayHeight(dpy, screen);
228 sel_screen = XQueryPointer(dpy, root, &w, &w, &i, &i, &i, &i, &mask); 225 sel_screen = XQueryPointer(dpy, root, &w, &w, &i, &i, &i, &i, &mask);
229 226