Mercurial > hg > xemacs-beta
view tests/redisplay-tests.el @ 5105:d76a51b29d91
fix Stephen's bug with frame sizing
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2010-03-05 Ben Wing <ben@xemacs.org>
* frame.c:
* frame.c (Fframe_pixel_height):
* frame.c (Fframe_displayable_pixel_height):
* frame.c (Fframe_pixel_width):
* frame.c (Fframe_displayable_pixel_width):
* frame.c (Fset_frame_pixel_height):
* frame.c (Fset_frame_displayable_pixel_height):
* frame.c (Fset_frame_pixel_width):
* frame.c (Fset_frame_displayable_pixel_width):
* frame.c (get_frame_char_size):
* frame.c (change_frame_size_1):
Make it so that `frame-pixel-height', `set-frame-pixel-height', etc.
use updated values for the displayable or total pixel size that
will reflect what will happen as of the next redisplay. This
basically means using the character-cell height and converting
on-the-fly to pixel units. In the process, make sure FRAME_CHARWIDTH/
FRAME_CHARHEIGHT are always correct and change
get_frame_char_size() to simply use them; the old logic in that
function was inlined into change_frame_size_1(), which is the only
place that needs the logic.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 06 Mar 2010 00:01:04 -0600 |
parents | 3078fd1074e8 |
children | 308d34e9f07d |
line wrap: on
line source
;; Copyright (C) 2000 Free Software Foundation, Inc. ;; Author: Yoshiki Hayashi <yoshiki@xemacs.org> ;; Maintainer: Yoshiki Hayashi <yoshiki@xemacs.org> ;; Created: 2000 ;; Keywords: tests ;; This file is part of XEmacs. ;; XEmacs is free software; you can redistribute it and/or modify it ;; under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; XEmacs is distributed in the hope that it will be useful, but ;; WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;; General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with XEmacs; see the file COPYING. If not, write to the Free ;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA ;; 02111-1307, USA. ;;; Synched up with: Not in FSF. ;;; Commentary: ;; Redisplay related tests. ;; This used to crash XEmacs. (when (featurep 'mule) (let ((buffer (generate-new-buffer "*split test*"))) (set-window-buffer (selected-window) buffer) (split-window-vertically) (insert (make-char 'japanese-jisx0208 36 44)) (backward-char) (redraw-frame) (delete-other-windows) (split-window) (kill-buffer buffer) (delete-other-windows)))