# HG changeset patch # User michaels # Date 1043316581 0 # Node ID 78781398fc4c6ac718ad292b135ad7ac6163c4cc # Parent 416490619c01525e52907adc14f2ff44b77eb7fa [xemacs-hg @ 2003-01-23 10:09:41 by michaels] 2003-01-10 Mike Sperber * window-xemacs.el: Revert his change 2003-01-10 Mike Sperber * window-xemacs.el (window-reduce-to-one): Rewrite in terms of `delete-other-windows.' (window-find-buffer-subwindow): Add. It caused subtle breakage. (And add a comment to that effect.) diff -r 416490619c01 -r 78781398fc4c lisp/ChangeLog --- a/lisp/ChangeLog Thu Jan 23 02:16:42 2003 +0000 +++ b/lisp/ChangeLog Thu Jan 23 10:09:41 2003 +0000 @@ -1,3 +1,30 @@ +2003-01-10 Mike Sperber + + * window-xemacs.el: Revert his change + + 2003-01-10 Mike Sperber + + * window-xemacs.el (window-reduce-to-one): Rewrite in terms of + `delete-other-windows.' + (window-find-buffer-subwindow): Add. + + It caused subtle breakage. (And add a comment to that effect.) + +2003-01-13 Mike Sperber + + * packages.el: + * find-paths.el: Revert this change + + 2000-04-01 Mike Sperber + + * packages.el (packages-find-package-directories): Added support + for external package hierarchies with in-place installations. + + * find-paths.el (paths-root-in-place-p): Added. + (paths-find-emacs-directory): Added support for external + directories with in-place installations. + (paths-find-site-directory): Ditto. + 2003-01-19 Mike Sperber * startup.el (normal-top-level): Compute `emacs-data-roots.' Call diff -r 416490619c01 -r 78781398fc4c lisp/window-xemacs.el --- a/lisp/window-xemacs.el Thu Jan 23 02:16:42 2003 +0000 +++ b/lisp/window-xemacs.el Thu Jan 23 10:09:41 2003 +0000 @@ -325,18 +325,22 @@ (if combination-start (window-reduce-to-one combination-start)))) +;; Note that simply using `delete-other-windows' causes obscure +;; breakage. --Mike + (defun window-reduce-to-one (window) "Make sure only one subwindow of WINDOW is left." - (let ((buffer-window (window-find-buffer-subwindow window))) - (delete-other-windows buffer-window))) - -(defun window-find-buffer-subwindow (window) - "Find a subwindow of window which contains a buffer." - (while (not (window-buffer window)) - (if (window-first-vchild window) - (setq window (window-first-vchild window)) - (setq window (window-first-hchild window)))) - window) + (let ((window (window-next-child window))) + (while window + (if (window-live-p window) + (let ((next (window-next-child window))) + (delete-window window) + (setq window next))))) + (cond + ((window-first-hchild window) + (window-reduce-to-one (window-first-hchild window))) + ((window-first-vchild window) + (window-reduce-to-one (window-first-vchild window))))) (defun restore-saved-window (configuration window saved-window direction) "Within CONFIGURATION, restore WINDOW to the state of SAVED-WINDOW."