Rewrite window resizing routines and fix some minor issues.
* frame.c (make_frame): Use other_buffer_safely.
(store_frame_param): Just store val in the buffer_list and
buried_buffer_list slots.
* window.c: Remove constant Qset.
(Fwindow_new_total_size): Rename to Fwindow_new_total_size.
(Fwindow_new_normal_size): Rename to Fwindow_new_normal.
(replace_window, make_window): Use floats for normal_lines and
normal_cols.
(run_window_configuration_change_hook): Record current buffer
first and selected frame afterwards to assure that the current
buffer is correctly reestablished. Rename count1 to count.
(Fresize_window_total): Rename to Fset_window_new_total.
(Fresize_window_normal): Rename to Fset_window_new_normal.
(resize_window_apply): Remove the Qset related branches
(Fsplit_window_internal): Rename horizontal argument to side.
New optional argument normal_size. Simplify assignment of normal
sizes which is mostly done in split-window itself now.
* mouse.el (mouse-drag-mode-line-1): Don't use window
configurations any more.
* window.el (window-child-count, normalize-live-frame)
(normalize-any-window, normalize-live-window): Fix doc-strings.
(window-internal-p): Remove.
(window-last-child): New function.
(make-window-atom): Call window-child instead of
window-internal-p.
(window-min-delta, window-min-delta-1, window-max-delta)
(window-max-delta-1, window-resizable, window-resizable-p): Rename
argument SIDE to TRAIL.
(resize-window-reset-1, resize-mini-window): Call set-window-new-total.
(resize-window-safe-window): Remove.
(resize-window): Reword error message. Use
set-window-new-normal and rewrite associated code.
(resize-subwindows-skip-p): Call window-new-normal.
(resize-subwindows-normal): Major rewrite. Rename arguments SIDE
and DELTA to TRAIL and THIS-DELTA. New argument OTHER-DELTA.
(resize-subwindows): Major rewrite. New arguments WIDNOW and
EDGE. Rename argument SIDE to TRAIL.
(resize-other-windows): Major rewrite. Rename argument SIDE to
TRAIL. New argument EDGE.
(resize-this-window): Minor rewrite. Rename arguments ADD-TOTAL
and SIDE to ADD and TRAIL. New argument EDGE.
(resize-root-window, resize-root-window-vertically): Clarify
doc-strings.
(adjust-window-trailing-edge): Major rewrite.
(delete-window): Fix doc-string. Call set-window-new-normal.
(split-window): Rename argument HORIZONTAL to SIDE. Handle normal
sizes more intuitively. Call split-window-internal with new
normal-size argument.
(split-window-keep-point): Replace split-window-vertically by
split-window-above-each-other.
(split-window-vertically): Rename to
split-window-above-each-other, provide alias for old name.
(split-window-horizontally): Rename to
split-window-side-by-side. Provide alias for old name.
(balance-windows-1): Call window-new-total and
set-window-new-total.
(balance-windows-2): Call window-new-total, set-window-new-normal
and set-window-new-total.
(display-buffer-alist): Fix doc-string.
(ctl-x-map): Bind split-window-above-each-other and
split-window-side-by-side instead of split-window-vertically and
split-window-horizontally.
* windows.texi (Basic Windows): Remove description of
window-internal-p.
(Splitting Windows): New nomenclature for window splitting
commands.