comparison src/window.c @ 4375:74e0e1131e01

Update window-size computation. 2008-01-02 Mike Sperber <mike@xemacs.org> * window.c (set_window_pixsize): Factor in the modeline when looking at window_min_width. Remove obsolete comment about incorrect use of `default_face_height_and_width'. (change_window_height): Remove obsolete comment about incorrect use of `default_face_height_and_width'.
author Mike Sperber <sperber@deinprogramm.de>
date Wed, 02 Jan 2008 10:12:04 +0100
parents f6f6fc9eb269
children c32b3d10c56b
comparison
equal deleted inserted replaced
4374:4939bde48d12 4375:74e0e1131e01
3518 Lisp_Object child, minor_kid, major_kid; 3518 Lisp_Object child, minor_kid, major_kid;
3519 int minsize; 3519 int minsize;
3520 int line_size; 3520 int line_size;
3521 int defheight, defwidth; 3521 int defheight, defwidth;
3522 3522
3523 /* #### This is very likely incorrect and instead the char_to_pixel_
3524 functions should be called. */
3525 default_face_height_and_width (window, &defheight, &defwidth); 3523 default_face_height_and_width (window, &defheight, &defwidth);
3526 line_size = (set_height ? defheight : defwidth); 3524 line_size = (set_height ? defheight : defwidth);
3527 3525
3528 check_min_window_sizes (); 3526 check_min_window_sizes ();
3529 3527
3530 minsize = (set_height ? window_min_height : window_min_width); 3528 minsize = (set_height ? window_min_height : window_min_width);
3531 minsize *= line_size; 3529 minsize *= line_size;
3532 3530
3533 if (!nodelete 3531 if (!nodelete
3534 && !TOP_LEVEL_WINDOW_P (w) 3532 && !TOP_LEVEL_WINDOW_P (w)
3535 && new_pixsize < minsize) 3533 && (new_pixsize + window_modeline_height (w)) < minsize)
3536 { 3534 {
3537 Fdelete_window (window, Qnil); 3535 Fdelete_window (window, Qnil);
3538 return; 3536 return;
3539 } 3537 }
3540 3538
4367 window = wrap_window (win); 4365 window = wrap_window (win);
4368 f = XFRAME (win->frame); 4366 f = XFRAME (win->frame);
4369 if (EQ (window, FRAME_ROOT_WINDOW (f))) 4367 if (EQ (window, FRAME_ROOT_WINDOW (f)))
4370 invalid_operation ("Won't change only window", Qunbound); 4368 invalid_operation ("Won't change only window", Qunbound);
4371 4369
4372 /* #### This is very likely incorrect and instead the char_to_pixel_
4373 functions should be called. */
4374 default_face_height_and_width (window, &defheight, &defwidth); 4370 default_face_height_and_width (window, &defheight, &defwidth);
4375 4371
4376 while (1) 4372 while (1)
4377 { 4373 {
4378 w = XWINDOW (window); 4374 w = XWINDOW (window);