comparison src/gtkutil.c @ 50130:66a7f2850b56

Clear frame didn't redraw scrollbars, fixed that.
author Jan Djärv <jan.h.d@swipnet.se>
date Fri, 14 Mar 2003 19:13:17 +0000
parents d0142038feaa
children 297925dd73b1
comparison
equal deleted inserted replaced
50129:d0142038feaa 50130:66a7f2850b56
314 { 314 {
315 last_pos->portion = last_pos->position = last_pos->whole = .1; 315 last_pos->portion = last_pos->position = last_pos->whole = .1;
316 } 316 }
317 } 317 }
318 318
319 /* This gets called after the frame F has been cleared. Since that is
320 done with X calls, we need to redraw GTK widget (scroll bars). */
321 void
322 xg_frame_cleared (f)
323 FRAME_PTR f;
324 {
325 GtkWidget *wfixed = f->output_data.x->edit_widget;
326
327 if (wfixed)
328 {
329 gtk_container_foreach (GTK_CONTAINER (wfixed),
330 (GtkCallback) handle_fixed_child,
331 NULL);
332 gtk_container_set_reallocate_redraws (GTK_CONTAINER (wfixed), TRUE);
333 gdk_window_process_all_updates ();
334 }
335 }
336
319 /* Function to handle resize of our widgets. Since Emacs has some layouts 337 /* Function to handle resize of our widgets. Since Emacs has some layouts
320 that does not fit well with GTK standard containers, we do most layout 338 that does not fit well with GTK standard containers, we do most layout
321 manually. 339 manually.
322 F is the frame to resize. 340 F is the frame to resize.
323 PIXELWIDTH, PIXELHEIGHT is the new size in pixels. */ 341 PIXELWIDTH, PIXELHEIGHT is the new size in pixels. */
344 all.width = pixelwidth; 362 all.width = pixelwidth;
345 all.height = pixelheight - mbheight - tbheight; 363 all.height = pixelheight - mbheight - tbheight;
346 364
347 gtk_widget_size_allocate (x->edit_widget, &all); 365 gtk_widget_size_allocate (x->edit_widget, &all);
348 366
349 gtk_container_foreach (GTK_CONTAINER (x->edit_widget), 367 xg_frame_cleared (f);
350 (GtkCallback) handle_fixed_child,
351 NULL);
352 gtk_container_set_reallocate_redraws (GTK_CONTAINER (x->edit_widget),
353 TRUE);
354 gdk_window_process_all_updates ();
355 368
356 change_frame_size (f, rows, columns, 0, 1, 0); 369 change_frame_size (f, rows, columns, 0, 1, 0);
357 SET_FRAME_GARBAGED (f); 370 SET_FRAME_GARBAGED (f);
358 cancel_mouse_face (f); 371 cancel_mouse_face (f);
359 } 372 }