Mercurial > emacs
changeset 7946:4dbba88e2717
(x_real_positions): Make sure we know the parent window.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 17 Jun 1994 23:34:37 +0000 |
parents | db1785b91d03 |
children | 9dd69a1f4592 |
files | src/xfns.c |
diffstat | 1 files changed, 17 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xfns.c Fri Jun 17 22:15:47 1994 +0000 +++ b/src/xfns.c Fri Jun 17 23:34:37 1994 +0000 @@ -570,6 +570,23 @@ int win_x = 0, win_y = 0; Window child; + /* This is pretty gross, but seems to be the easiest way out of + the problem that arises when restarting window-managers. */ + +#ifdef USE_X_TOOLKIT + Window outer = XtWindow (f->display.x->widget); +#else + Window outer = f->display.x->window_desc; +#endif + Window tmp_root_window; + Window *tmp_children; + int tmp_nchildren; + + XQueryTree (x_current_display, outer, &tmp_root_window, + &f->display.x->parent_desc, + &tmp_children, &tmp_nchildren); + xfree (tmp_children); + /* Find the position of the outside upper-left corner of the inner window, with respect to the outer window. */ if (f->display.x->parent_desc != ROOT_WINDOW)