;ELC   
;;; Compiled by rms@psilocin.ai.mit.edu on Sat Jun  6 14:10:54 1998
;;; from file /gd/gnu/emacs/lisp/rsz-mini.el
;;; in Emacs version 20.2.94.1
;;; with bytecomp version 2.45
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`rsz-mini.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(custom-declare-group 'resize-minibuffer nil "Dynamically resize minibuffer to display entire contents" :group 'frames)
#@144 *If non-`nil', resize the minibuffer so its entire contents are visible.
You must modify via \[customize] for this variable to have an effect.
(custom-declare-variable 'resize-minibuffer-mode 'nil '(#$ . -725) :set (lambda (symbol value) (resize-minibuffer-mode (if value 1 -1))) :initialize 'custom-initialize-default :type 'boolean :group 'resize-minibuffer :require 'rsz-mini :version "20.3")
#@175 *Maximum size the minibuffer window is allowed to become.
If less than 1 or not a number, the limit is the height of the frame in
which the active minibuffer window resides.
(custom-declare-variable 'resize-minibuffer-window-max-height 'nil '(#$ . -1128) :type '(choice (const nil) integer) :group 'resize-minibuffer)
#@219 *Allow making minibuffer exactly the size to display all its contents.
If `nil', the minibuffer window can temporarily increase in size but
never get smaller while it is active.  Any other value allows exact
resizing.
(custom-declare-variable 'resize-minibuffer-window-exactly 't '(#$ . -1453) :type 'boolean :group 'resize-minibuffer)
#@161 *Allow changing the frame height of minibuffer frames.
If non-`nil' and the active minibuffer is the sole window in its frame,
allow changing the frame height.
(custom-declare-variable 'resize-minibuffer-frame 'nil '(#$ . -1796) :type 'boolean :group 'resize-minibuffer)
#@109 *Maximum size the minibuffer frame is allowed to become.
If less than 1 or not a number, there is no limit.
(custom-declare-variable 'resize-minibuffer-frame-max-height 'nil '(#$ . -2074))
#@224 *Allow making minibuffer frame exactly the size to display all its contents.
If `nil', the minibuffer frame can temporarily increase in size but
never get smaller while it is active.  Any other value allows exact
resizing.
(custom-declare-variable 'resize-minibuffer-frame-exactly 't '(#$ . -2270) :type 'boolean :group 'resize-minibuffer)
(byte-code "\302\300!\204 \303\300	B\303\207" [resize-minibuffer-frame-original-height current-load-list boundp nil] 2)
#@1084 Toggle resize-minibuffer mode.
With argument, enable resize-minibuffer mode if and only if argument
is positive.

When this minor mode is enabled, the minibuffer is dynamically resized to
contain the entire region of text put in it as you type.

The variable `resize-minibuffer-mode' is set to t or nil depending on
whether this mode is active or not.

The maximum height to which the minibuffer can grow is controlled by the
variable `resize-minibuffer-window-max-height'.

The variable `resize-minibuffer-window-exactly' determines whether the
minibuffer window should ever be shrunk to make it no larger than needed to
display its contents.

When using a window system, it is possible for a minibuffer to be the sole
window in a frame.  Since that window is already its maximum size, the only
way to make more text visible at once is to increase the size of the frame.
The variable `resize-minibuffer-frame' controls whether this should be
done.  The variables `resize-minibuffer-frame-max-height' and
`resize-minibuffer-frame-exactly' are analogous to their window
counterparts.
(defalias 'resize-minibuffer-mode #[(&optional prefix) "\203\f \302!\303V\202 	?\304\305\306\"\207" [prefix resize-minibuffer-mode prefix-numeric-value 0 add-hook minibuffer-setup-hook resize-minibuffer-setup] 3 (#$ . 2741) "P"])
(defalias 'resize-minibuffer-setup #[nil "\205O 	\2036 \305\306 \236A\307=\2036 \n\205O \310\303!\210\311 \312\304!\210\313\304\302\314\315$\210\312\316!\210\313\316\317\320\315$\210\302 \207\310\304!\210\321\f!\313\304\322\314#\210\310\316!\210\313\316\323\"\210\322 \207" [resize-minibuffer-mode window-system resize-minibuffer-frame resize-minibuffer-frame-original-height post-command-hook minibuffer frame-parameters only make-local-variable frame-height make-local-hook add-hook append t minibuffer-exit-hook resize-minibuffer-frame-restore nil copy-sequence resize-minibuffer-window resize-minibuffer-window-restore] 5])
#@279 Return number of window lines occupied by text in region.
The number of window lines may be greater than the number of actual lines
in the buffer if any wrap on the display due to their length.

Optional arguments START and END default to point-min and point-max,
respectively.
(defalias 'resize-minibuffer-count-window-lines #[(&optional start end) "\204 e	\204\f d	U\203 \302\207\212\214~\210	}\210b\210\303\304 !*\207" [start end 0 vertical-motion buffer-size] 2 (#$ . 4696)])
(defalias 'resize-minibuffer-window #[nil "\304 \305 =\2054 \306 \307 T\n\247\203 \n\310V\203 \n^\203( 	U\202+ 	X\2063 \311	Z!*\207" [lines height resize-minibuffer-window-max-height resize-minibuffer-window-exactly selected-window minibuffer-window window-height resize-minibuffer-count-window-lines 0 enlarge-window] 3])
(defalias 'resize-minibuffer-window-restore #[nil "\300 \301 =?\206 \302 \303V\205 \304\303\302 Z!\210\305\306!\207" [minibuffer-window selected-window window-height 1 enlarge-window sit-for 0] 3])
(defalias 'resize-minibuffer-frame #[nil "\305 \306 T\n\247\203 \n\307V\203 \n^	V\203( \310\311\312 !\313 #\202A \205A 	\fV\205A 	W\205A \310\311\312 !\313 #*\207" [lines height resize-minibuffer-frame-max-height resize-minibuffer-frame-exactly resize-minibuffer-frame-original-height frame-height resize-minibuffer-count-window-lines 0 set-frame-size window-frame minibuffer-window frame-width] 4])
(defalias 'resize-minibuffer-frame-restore #[nil "\301\302\303 !\304 #\207" [resize-minibuffer-frame-original-height set-frame-size window-frame minibuffer-window frame-width] 4])
(byte-code "\203 \300\301!\210\302\303!\207" [resize-minibuffer-mode 1 provide rsz-mini] 2)
