Rewrite handling of side and atomic windows.
* window.el (display-buffer-in-atom-window, window--major-non-side-window) (window--major-side-window, display-buffer-in-major-side-window) (delete-side-window, display-buffer-in-side-window): New functions. (window--side-check, window-deletable-p, delete-window) (delete-other-windows, split-window): Handle side windows and atomic windows appropriately. (window--display-buffer): Call display-buffer-record-window also when the window buffer did not change.
Showing with 409 additions and 85 deletions