Mercurial > emacs
changeset 6464:7f93299356e2
(set_frame_size): Put #if 0 around a lot of useless code.
Compute explicitely the geometry of the toplevel widget.
author | Fred Pierresteguy <F.Pierresteguy@frcl.bull.fr> |
---|---|
date | Tue, 22 Mar 1994 14:38:10 +0000 |
parents | 380e8fcde9a2 |
children | 0bd909cf75c3 |
files | src/widget.c |
diffstat | 1 files changed, 17 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/widget.c Tue Mar 22 05:43:25 1994 +0000 +++ b/src/widget.c Tue Mar 22 14:38:10 1994 +0000 @@ -307,10 +307,12 @@ Widget wmshell = get_wm_shell ((Widget) ew); Widget app_shell = XtParent ((Widget) wmshell); - if (! XtIsSubclass (wmshell, shellWidgetClass)) abort (); if (! XtIsSubclass (app_shell, shellWidgetClass)) abort (); + /* We don't need this for the momment. The geometry is computed in + xfns.c. */ +#if 0 /* If the EmacsFrame doesn't have a geometry but the shell does, treat that as the geometry of the frame. (Is this bogus? I'm not sure.) */ @@ -413,7 +415,7 @@ flags |= (app_flags & (WidthValue | HeightValue)); } } - +#endif /* 0 */ { struct frame* frame = ew->emacs_frame.frame; Dimension pixel_width, pixel_height; @@ -431,7 +433,19 @@ ew->core.width = pixel_width; ew->core.height = pixel_height; + /* Compute the geometry of the toplevel shell because on some platforms + when the geometry is not set, the widget children are resized. */ + { + int len; + char *tem; + sprintf (shell_position, "=%dx%d", pixel_width, pixel_height); + len = strlen (shell_position) + 1; + tem = (char *) xmalloc (len); + strncpy (tem, shell_position, len); + XtVaSetValues (wmshell, XtNgeometry, tem, 0); + } +#if 0 /* We don't need this also. */ /* If a position was specified, assign it to the shell widget. (Else WM won't do anything with it.) */ @@ -468,6 +482,7 @@ /* Also assign the iconic status of the frame to the Shell, so that the WM sees it. */ XtVaSetValues (wmshell, XtNiconic, ew->emacs_frame.iconic, 0); +#endif /* 0 */ } }