changeset 6087:00fbbb620f36

(EmacsFrameSetCharSize): Call check_frame_size and update vertical_scroll_bar_extra. Call SET_FRAME_GARBAGED.
author Fred Pierresteguy <F.Pierresteguy@frcl.bull.fr>
date Fri, 25 Feb 1994 09:10:22 +0000
parents fc2dc869f5d4
children 8e38fcb2df96
files src/widget.c
diffstat 1 files changed, 13 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/widget.c	Fri Feb 25 06:27:24 1994 +0000
+++ b/src/widget.c	Fri Feb 25 09:10:22 1994 +0000
@@ -871,9 +871,16 @@
   EmacsFrame ew = (EmacsFrame) widget;
   Dimension pixel_width, pixel_height, granted_width, granted_height;
   XtGeometryResult result;
+  struct frame *f = ew->emacs_frame.frame;
+
   if (columns < 3) columns = 3;  /* no way buddy */
   if (rows < 3) rows = 3;
 
+  check_frame_size (f, &rows, &columns);
+  f->display.x->vertical_scroll_bar_extra
+    = (FRAME_HAS_VERTICAL_SCROLL_BARS (f)
+       ? VERTICAL_SCROLL_BAR_PIXEL_WIDTH (f)
+       : 0);
   char_to_pixel_size (ew, columns, rows, &pixel_width, &pixel_height);
   result = XtMakeResizeRequest ((Widget)ew,
 				pixel_width, pixel_height,
@@ -887,4 +894,10 @@
       XtVaSetValues (XtParent ((Widget) ew), XtNwidth, pixel_width, 0);
       XtVaSetValues ((Widget) ew, XtNwidth, pixel_width, 0);
     }
+
+  /* We've set {FRAME,PIXEL}_{WIDTH,HEIGHT} to the values we hope to
+     receive in the ConfigureNotify event; if we get what we asked
+     for, then the event won't cause the screen to become garbaged, so
+     we have to make sure to do it here.  */
+  SET_FRAME_GARBAGED (f);
 }