Japanese translation of message catalog for Sawfish Window-Manager
リビジョン | 9dfc3ce68fc30bcaa9846cb53402193f925449c9 (tree) |
---|---|
日時 | 2001-02-20 10:32:13 |
作者 | John Harper <jsh@src....> |
コミッター | John Harper |
only do the reparenting if the window hasn't been destroyed
* windows.c (install_window_frame, remove_window_frame): only
do the reparenting if the window hasn't been destroyed
* stacking-list.c (restack_window): just return immediately if
the window has already been destroyed
@@ -2,6 +2,12 @@ | ||
2 | 2 | |
3 | 3 | * version 0.37.3 |
4 | 4 | |
5 | + * windows.c (install_window_frame, remove_window_frame): only | |
6 | + do the reparenting if the window hasn't been destroyed | |
7 | + | |
8 | + * stacking-list.c (restack_window): just return immediately if | |
9 | + the window has already been destroyed | |
10 | + | |
5 | 11 | * stacking-list.c (window_in_stacking_list_p): new predicate, |
6 | 12 | used to replace the assert_window_[not_]in_stacking_list |
7 | 13 | functions (which have been deleted) |
@@ -178,27 +178,29 @@ stackable_window_id (Lisp_Window *w) | ||
178 | 178 | void |
179 | 179 | restack_window (Lisp_Window *w) |
180 | 180 | { |
181 | - XWindowChanges wc; | |
182 | - u_int mask = 0; | |
183 | - | |
184 | - assert (!WINDOW_IS_GONE_P (w)); | |
185 | - assert (window_in_stacking_list_p (w)); | |
186 | - | |
187 | - if (w->above != 0) | |
188 | - { | |
189 | - wc.stack_mode = Below; | |
190 | - wc.sibling = stackable_window_id (w->above); | |
191 | - mask = CWStackMode | CWSibling; | |
192 | - } | |
193 | - else if (w->below != 0) | |
181 | + if (!WINDOW_IS_GONE_P (w)) | |
194 | 182 | { |
195 | - wc.stack_mode = Above; | |
196 | - wc.sibling = stackable_window_id (w->below); | |
197 | - mask = CWStackMode | CWSibling; | |
183 | + XWindowChanges wc; | |
184 | + u_int mask = 0; | |
185 | + | |
186 | + assert (window_in_stacking_list_p (w)); | |
187 | + | |
188 | + if (w->above != 0) | |
189 | + { | |
190 | + wc.stack_mode = Below; | |
191 | + wc.sibling = stackable_window_id (w->above); | |
192 | + mask = CWStackMode | CWSibling; | |
193 | + } | |
194 | + else if (w->below != 0) | |
195 | + { | |
196 | + wc.stack_mode = Above; | |
197 | + wc.sibling = stackable_window_id (w->below); | |
198 | + mask = CWStackMode | CWSibling; | |
199 | + } | |
200 | + | |
201 | + if (mask != 0) | |
202 | + XConfigureWindow (dpy, stackable_window_id (w), mask, &wc); | |
198 | 203 | } |
199 | - | |
200 | - if (mask != 0) | |
201 | - XConfigureWindow (dpy, stackable_window_id (w), mask, &wc); | |
202 | 204 | } |
203 | 205 | |
204 | 206 |
@@ -245,7 +245,7 @@ void | ||
245 | 245 | install_window_frame (Lisp_Window *w) |
246 | 246 | { |
247 | 247 | DB(("install_window_frame (%s)\n", rep_STR(w->name))); |
248 | - if (!w->reparented && w->frame != 0) | |
248 | + if (!w->reparented && w->frame != 0 && !WINDOW_IS_GONE_P (w)) | |
249 | 249 | { |
250 | 250 | XSelectInput (dpy, w->frame, FRAME_EVENTS); |
251 | 251 |
@@ -269,7 +269,7 @@ void | ||
269 | 269 | remove_window_frame (Lisp_Window *w) |
270 | 270 | { |
271 | 271 | DB(("remove_window_frame (%s)\n", rep_STR(w->name))); |
272 | - if (w->reparented) | |
272 | + if (w->reparented && !WINDOW_IS_GONE_P (w)) | |
273 | 273 | { |
274 | 274 | /* reparent the subwindow back to the root window */ |
275 | 275 |