* window.c: Try to deal coherently with deleted windows:
authorJim Blandy <jimb@redhat.com>
Mon, 19 Oct 1992 18:46:29 +0000 (18:46 +0000)
committerJim Blandy <jimb@redhat.com>
Mon, 19 Oct 1992 18:46:29 +0000 (18:46 +0000)
commit605be8af79110be3db1bcb76575f82651f99379d
tree7ae671cb54f719297867b2d1f4d5723084df1105
parent896adf849920c1066cbbddad809e44a07a2b8b46
* window.c: Try to deal coherently with deleted windows:
* (Flive_window_p): New function.
(Qlive_window_p): New variable, to name it in type errors.
(syms_of_window): Defsubr Slive_window_p, init and staticpro
Qlive_window_p.
(decode_window): Use CHECK_LIVE_WINDOW instead of
CHECK_WINDOW; the only thing a user should be able to do to a dead
window is check its type.
(Fcoordinates_in_window_p, Fnext_window, Fprevious_window,
Fdelete_other_windows, Fselect_window, Fsplit_window,
Fscroll_other_window): Use CHECK_LIVE_WINDOW instead of
CHECK_WINDOW.
(Fdelete_window): If WINDOW is a deleted window, do nothing;
there's no harm in allowing people to delete deleted windows.
Delete all of WINDOW's subwindows, too.
(delete_all_subwindows): Set the buffer, vchild, and hchild of the
windows we delete all to nil.

* window.c (Fwindow_minibuffer_p): Make the WINDOW argument
optional, like all the other window-querying functions.

* window.c (Fpos_visible_in_window_p): Use decode_window to handle
the WINDOW argument, instead of writing out that function's code.

* window.c (check_frame_size): Don't define this extern; that
doesn't mean anything.

* window.c (Fdelete_window): Choose an alternative when we delete
any frame's selected window, not just when we delete the selected
frame's selected window.
src/window.c