equal
deleted
inserted
replaced
87 if(ev->value_mask & CWHeight) |
87 if(ev->value_mask & CWHeight) |
88 c->h = ev->height; |
88 c->h = ev->height; |
89 if(ev->value_mask & CWBorderWidth) |
89 if(ev->value_mask & CWBorderWidth) |
90 c->border = ev->border_width; |
90 c->border = ev->border_width; |
91 gravitate(c, False); |
91 gravitate(c, False); |
|
92 resize(c, True); |
92 } |
93 } |
93 |
94 |
94 wc.x = ev->x; |
95 wc.x = ev->x; |
95 wc.y = ev->y; |
96 wc.y = ev->y; |
96 wc.width = ev->width; |
97 wc.width = ev->width; |
177 |
178 |
178 static void |
179 static void |
179 propertynotify(XEvent *e) |
180 propertynotify(XEvent *e) |
180 { |
181 { |
181 XPropertyEvent *ev = &e->xproperty; |
182 XPropertyEvent *ev = &e->xproperty; |
|
183 Window trans; |
182 Client *c; |
184 Client *c; |
183 |
185 |
184 if(ev->state == PropertyDelete) |
186 if(ev->state == PropertyDelete) |
185 return; /* ignore */ |
187 return; /* ignore */ |
186 |
188 |
190 return; |
192 return; |
191 } |
193 } |
192 switch (ev->atom) { |
194 switch (ev->atom) { |
193 default: break; |
195 default: break; |
194 case XA_WM_TRANSIENT_FOR: |
196 case XA_WM_TRANSIENT_FOR: |
195 XGetTransientForHint(dpy, c->win, &c->trans); |
197 XGetTransientForHint(dpy, c->win, &trans); |
|
198 if(!c->floating && (c->floating = (trans != 0))) |
|
199 arrange(NULL); |
196 break; |
200 break; |
197 update_size(c); |
|
198 case XA_WM_NORMAL_HINTS: |
201 case XA_WM_NORMAL_HINTS: |
199 update_size(c); |
202 update_size(c); |
200 break; |
203 break; |
201 } |
204 } |
202 if(ev->atom == XA_WM_NAME || ev->atom == net_atom[NetWMName]) { |
205 if(ev->atom == XA_WM_NAME || ev->atom == net_atom[NetWMName]) { |