Mercurial > dwm-meillo
comparison event.c @ 195:97960220eb77
fixed xterm font change (all other related apps should work fine with this fix as well)
author | arg@10ksloc.org |
---|---|
date | Fri, 04 Aug 2006 18:25:40 +0200 |
parents | e848966a1ac6 |
children | d560e796f7fe |
comparison
equal
deleted
inserted
replaced
194:655e38416bb8 | 195:97960220eb77 |
---|---|
154 XWindowChanges wc; | 154 XWindowChanges wc; |
155 unsigned long newmask; | 155 unsigned long newmask; |
156 | 156 |
157 if((c = getclient(ev->window))) { | 157 if((c = getclient(ev->window))) { |
158 gravitate(c, True); | 158 gravitate(c, True); |
159 if(c->isfloat) { | 159 if(ev->value_mask & CWX) |
160 if(ev->value_mask & CWX) | 160 c->x = ev->x; |
161 c->x = ev->x; | 161 if(ev->value_mask & CWY) |
162 if(ev->value_mask & CWY) | 162 c->y = ev->y; |
163 c->y = ev->y; | 163 if(ev->value_mask & CWWidth) |
164 if(ev->value_mask & CWWidth) | 164 c->w = ev->width; |
165 c->w = ev->width; | 165 if(ev->value_mask & CWHeight) |
166 if(ev->value_mask & CWHeight) | 166 c->h = ev->height; |
167 c->h = ev->height; | |
168 } | |
169 if(ev->value_mask & CWBorderWidth) | 167 if(ev->value_mask & CWBorderWidth) |
170 c->border = ev->border_width; | 168 c->border = ev->border_width; |
171 gravitate(c, False); | 169 gravitate(c, False); |
172 | |
173 resize(c, True, TopLeft); | |
174 | |
175 wc.x = c->x; | 170 wc.x = c->x; |
176 wc.y = c->y; | 171 wc.y = c->y; |
177 wc.width = c->w; | 172 wc.width = c->w; |
178 wc.height = c->h; | 173 wc.height = c->h; |
179 newmask = ev->value_mask & (~(CWSibling | CWStackMode | CWBorderWidth)); | 174 newmask = ev->value_mask & (~(CWSibling | CWStackMode | CWBorderWidth)); |
191 synev.xconfigure.border_width = c->border; | 186 synev.xconfigure.border_width = c->border; |
192 synev.xconfigure.above = None; | 187 synev.xconfigure.above = None; |
193 /* Send synthetic ConfigureNotify */ | 188 /* Send synthetic ConfigureNotify */ |
194 XSendEvent(dpy, c->win, True, NoEventMask, &synev); | 189 XSendEvent(dpy, c->win, True, NoEventMask, &synev); |
195 } | 190 } |
191 XSync(dpy, False); | |
192 arrange(NULL); | |
193 drawall(); | |
196 } | 194 } |
197 else { | 195 else { |
198 wc.x = ev->x; | 196 wc.x = ev->x; |
199 wc.y = ev->y; | 197 wc.y = ev->y; |
200 wc.width = ev->width; | 198 wc.width = ev->width; |
201 wc.height = ev->height; | 199 wc.height = ev->height; |
202 wc.border_width = ev->border_width; | 200 wc.border_width = ev->border_width; |
203 wc.sibling = ev->above; | 201 wc.sibling = ev->above; |
204 wc.stack_mode = ev->detail; | 202 wc.stack_mode = ev->detail; |
205 XConfigureWindow(dpy, ev->window, ev->value_mask, &wc); | 203 XConfigureWindow(dpy, ev->window, ev->value_mask, &wc); |
206 } | 204 XSync(dpy, False); |
207 XSync(dpy, False); | 205 } |
208 } | 206 } |
209 | 207 |
210 static void | 208 static void |
211 destroynotify(XEvent *e) | 209 destroynotify(XEvent *e) |
212 { | 210 { |