event.c
changeset 74 5370ef170cc9
parent 73 c2ddb9dbbd10
child 75 f08271b7cb20
equal deleted inserted replaced
73:c2ddb9dbbd10 74:5370ef170cc9
   127 		}
   127 		}
   128 	}
   128 	}
   129 	else if((c = getclient(ev->window))) {
   129 	else if((c = getclient(ev->window))) {
   130 		if(arrange == tiling && !c->floating)
   130 		if(arrange == tiling && !c->floating)
   131 			return;
   131 			return;
   132 		craise(c);
   132 		higher(c);
   133 		switch(ev->button) {
   133 		switch(ev->button) {
   134 		default:
   134 		default:
   135 			break;
   135 			break;
   136 		case Button1:
   136 		case Button1:
   137 			mmove(c);
   137 			mmove(c);
   223 	XExposeEvent *ev = &e->xexpose;
   223 	XExposeEvent *ev = &e->xexpose;
   224 	Client *c;
   224 	Client *c;
   225 
   225 
   226 	if(ev->count == 0) {
   226 	if(ev->count == 0) {
   227 		if(barwin == ev->window)
   227 		if(barwin == ev->window)
   228 			draw_bar();
   228 			drawstatus();
   229 		else if((c = gettitle(ev->window)))
   229 		else if((c = gettitle(ev->window)))
   230 			draw_client(c);
   230 			drawtitle(c);
   231 	}
   231 	}
   232 }
   232 }
   233 
   233 
   234 static void
   234 static void
   235 maprequest(XEvent *e)
   235 maprequest(XEvent *e)
   260 	if(ev->state == PropertyDelete)
   260 	if(ev->state == PropertyDelete)
   261 		return; /* ignore */
   261 		return; /* ignore */
   262 
   262 
   263 	if((c = getclient(ev->window))) {
   263 	if((c = getclient(ev->window))) {
   264 		if(ev->atom == wm_atom[WMProtocols]) {
   264 		if(ev->atom == wm_atom[WMProtocols]) {
   265 			c->proto = win_proto(c->win);
   265 			c->proto = proto(c->win);
   266 			return;
   266 			return;
   267 		}
   267 		}
   268 		switch (ev->atom) {
   268 		switch (ev->atom) {
   269 			default: break;
   269 			default: break;
   270 			case XA_WM_TRANSIENT_FOR:
   270 			case XA_WM_TRANSIENT_FOR:
   271 				XGetTransientForHint(dpy, c->win, &trans);
   271 				XGetTransientForHint(dpy, c->win, &trans);
   272 				if(!c->floating && (c->floating = (trans != 0)))
   272 				if(!c->floating && (c->floating = (trans != 0)))
   273 					arrange(NULL);
   273 					arrange(NULL);
   274 				break;
   274 				break;
   275 			case XA_WM_NORMAL_HINTS:
   275 			case XA_WM_NORMAL_HINTS:
   276 				update_size(c);
   276 				setsize(c);
   277 				break;
   277 				break;
   278 		}
   278 		}
   279 		if(ev->atom == XA_WM_NAME || ev->atom == net_atom[NetWMName]) {
   279 		if(ev->atom == XA_WM_NAME || ev->atom == net_atom[NetWMName]) {
   280 			update_name(c);
   280 			settitle(c);
   281 			draw_client(c);
   281 			drawtitle(c);
   282 		}
   282 		}
   283 	}
   283 	}
   284 }
   284 }
   285 
   285 
   286 static void
   286 static void