@code{fit-frame-to-buffer} (@pxref{Size and Position}) to make a window
exactly as large as the text it contains.
-@defun window-text-pixel-size &optional window from to x-limit y-limit mode-and-header-line buffer
+@defun window-text-pixel-size &optional window from to x-limit y-limit mode-and-header-line
This function returns the size of the text of @var{window}'s buffer in
pixels. @var{window} must be a live window and defaults to the selected
one. The return value is a cons of the maximum pixel-width of any text
@code{mode-line} or @code{header-line}, include only the height of that
line, if present, in the return value. If it is @code{t}, include the
height of both, if present, in the return value.
-
-The optional argument @var{buffer} allows to specify an alternate buffer
-whose text size will be calculated. If @var{buffer} is @code{nil} or
-omitted, then operate on the buffer of @var{window}. If it is @code{t},
-then operate on the current buffer as if it were displayed in
-@var{window}. If it specifies a live buffer, then operate on that
-buffer as if it were displayed in @var{window}.
@end defun
&& it->dpvec + it->current.dpvec_index != it->dpend);
}
-DEFUN ("window-text-pixel-size", Fwindow_text_pixel_size, Swindow_text_pixel_size, 0, 7, 0,
+DEFUN ("window-text-pixel-size", Fwindow_text_pixel_size, Swindow_text_pixel_size, 0, 6, 0,
doc: /* Return the size of the text of WINDOW's buffer in pixels.
WINDOW must be a live window and defaults to the selected one. The
return value is a cons of the maximum pixel-width of any text line and
include the height of the mode- or header-line of WINDOW in the return
value. If it is either the symbol `mode-line' or `header-line', include
only the height of that line, if present, in the return value. If t,
-include the height of both, if present, in the return value.
-
-Optional argument BUFFER nil means to return the size of the text of
-WINDOW's buffer. BUFFER t means to return the size of the text of the
-current buffer as if it were displayed in WINDOW. Else BUFFER has to
-specify a live buffer and this function returns the size of the text of
-BUFFER as if it were displayed in WINDOW. */)
+include the height of both, if present, in the return value. */)
(Lisp_Object window, Lisp_Object from, Lisp_Object to, Lisp_Object x_limit,
- Lisp_Object y_limit, Lisp_Object mode_and_header_line, Lisp_Object buffer)
+ Lisp_Object y_limit, Lisp_Object mode_and_header_line)
{
struct window *w = decode_live_window (window);
+ Lisp_Object buffer = w->contents;
struct buffer *b;
struct it it;
struct buffer *old_b = NULL;
void *itdata = NULL;
int c, max_y = -1, x = 0, y = 0;
- if (EQ (buffer, Qt))
- b = current_buffer;
- else
- {
- if (NILP (buffer))
- buffer = w->contents;
-
- CHECK_BUFFER (buffer);
- if (!BUFFER_LIVE_P (XBUFFER (buffer)))
- error ("Not a live buffer");
+ CHECK_BUFFER (buffer);
+ b = XBUFFER (buffer);
- b = XBUFFER (buffer);
- if (b != current_buffer)
- {
- old_b = current_buffer;
- set_buffer_internal (b);
- }
+ if (b != current_buffer)
+ {
+ old_b = current_buffer;
+ set_buffer_internal (b);
}
if (NILP (from))