]> git.eshelyaron.com Git - emacs.git/commit
Rewrite window resizing routines and fix some minor issues.
authorMartin Rudalics <rudalics@gmx.at>
Tue, 17 May 2011 07:02:58 +0000 (09:02 +0200)
committerMartin Rudalics <rudalics@gmx.at>
Tue, 17 May 2011 07:02:58 +0000 (09:02 +0200)
commitd856716ef7b3df13aeeb5e7fc82848833f29b1ca
treeeca4217568ca3e305d65954c3cd6770452ac708b
parent94c30b6625ebeed1322bbed6d40ff52ee6602520
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.
doc/lispref/ChangeLog
doc/lispref/windows.texi
lisp/ChangeLog
lisp/mouse.el
lisp/window.el
src/ChangeLog
src/frame.c
src/window.c