summaryrefslogtreecommitdiff
path: root/src/widget.c
diff options
context:
space:
mode:
authorFred Pierresteguy <F.Pierresteguy@frcl.bull.fr>1994-03-22 14:38:10 +0000
committerFred Pierresteguy <F.Pierresteguy@frcl.bull.fr>1994-03-22 14:38:10 +0000
commite6ff1a9e3faa951dafebd1405c110f61c21ec72f (patch)
treed88688c3eee2d86eb14ca1cff039ac675cced458 /src/widget.c
parent72d210ff2a008c7da5971865dff518242e29d2b4 (diff)
downloademacs-e6ff1a9e3faa951dafebd1405c110f61c21ec72f.tar.gz
(set_frame_size): Put #if 0 around a lot of useless code.
Compute explicitely the geometry of the toplevel widget.
Diffstat (limited to 'src/widget.c')
-rw-r--r--src/widget.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/src/widget.c b/src/widget.c
index aabd63accd6..30f4e9e3d6f 100644
--- a/src/widget.c
+++ b/src/widget.c
@@ -307,10 +307,12 @@ set_frame_size (ew)
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 @@ set_frame_size (ew)
flags |= (app_flags & (WidthValue | HeightValue));
}
}
-
+#endif /* 0 */
{
struct frame* frame = ew->emacs_frame.frame;
Dimension pixel_width, pixel_height;
@@ -431,7 +433,19 @@ set_frame_size (ew)
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 @@ set_frame_size (ew)
/* 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 */
}
}