equal
deleted
inserted
replaced
143 } |
143 } |
144 else if((c = getclient(ev->window))) { |
144 else if((c = getclient(ev->window))) { |
145 focus(c); |
145 focus(c); |
146 if(CLEANMASK(ev->state) != MODKEY) |
146 if(CLEANMASK(ev->state) != MODKEY) |
147 return; |
147 return; |
148 if(ev->button == Button1 && (lt->arrange == floating || c->isfloating)) { |
148 if(ev->button == Button1 && (isfloating() || c->isfloating)) { |
149 restack(); |
149 restack(); |
150 movemouse(c); |
150 movemouse(c); |
151 } |
151 } |
152 else if(ev->button == Button2) |
152 else if(ev->button == Button2) |
153 zoom(NULL); |
153 zoom(NULL); |
154 else if(ev->button == Button3 |
154 else if(ev->button == Button3 |
155 && (lt->arrange == floating || c->isfloating) && !c->isfixed) |
155 && (isfloating() || c->isfloating) && !c->isfixed) |
156 { |
156 { |
157 restack(); |
157 restack(); |
158 resizemouse(c); |
158 resizemouse(c); |
159 } |
159 } |
160 } |
160 } |
168 |
168 |
169 if((c = getclient(ev->window))) { |
169 if((c = getclient(ev->window))) { |
170 c->ismax = False; |
170 c->ismax = False; |
171 if(ev->value_mask & CWBorderWidth) |
171 if(ev->value_mask & CWBorderWidth) |
172 c->border = ev->border_width; |
172 c->border = ev->border_width; |
173 if(c->isfixed || c->isfloating || (lt->arrange == floating)) { |
173 if(c->isfixed || c->isfloating || isfloating()) { |
174 if(ev->value_mask & CWX) |
174 if(ev->value_mask & CWX) |
175 c->x = ev->x; |
175 c->x = ev->x; |
176 if(ev->value_mask & CWY) |
176 if(ev->value_mask & CWY) |
177 c->y = ev->y; |
177 c->y = ev->y; |
178 if(ev->value_mask & CWWidth) |
178 if(ev->value_mask & CWWidth) |
214 sh = ev->height; |
214 sh = ev->height; |
215 XFreePixmap(dpy, dc.drawable); |
215 XFreePixmap(dpy, dc.drawable); |
216 dc.drawable = XCreatePixmap(dpy, root, sw, bh, DefaultDepth(dpy, screen)); |
216 dc.drawable = XCreatePixmap(dpy, root, sw, bh, DefaultDepth(dpy, screen)); |
217 XResizeWindow(dpy, barwin, sw, bh); |
217 XResizeWindow(dpy, barwin, sw, bh); |
218 updatebarpos(); |
218 updatebarpos(); |
219 lt->arrange(); |
219 arrange(); |
220 } |
220 } |
221 } |
221 } |
222 |
222 |
223 static void |
223 static void |
224 destroynotify(XEvent *e) { |
224 destroynotify(XEvent *e) { |
315 switch (ev->atom) { |
315 switch (ev->atom) { |
316 default: break; |
316 default: break; |
317 case XA_WM_TRANSIENT_FOR: |
317 case XA_WM_TRANSIENT_FOR: |
318 XGetTransientForHint(dpy, c->win, &trans); |
318 XGetTransientForHint(dpy, c->win, &trans); |
319 if(!c->isfloating && (c->isfloating = (getclient(trans) != NULL))) |
319 if(!c->isfloating && (c->isfloating = (getclient(trans) != NULL))) |
320 lt->arrange(); |
320 arrange(); |
321 break; |
321 break; |
322 case XA_WM_NORMAL_HINTS: |
322 case XA_WM_NORMAL_HINTS: |
323 updatesizehints(c); |
323 updatesizehints(c); |
324 break; |
324 break; |
325 } |
325 } |