Mercurial > emacs
comparison lisp/server.el @ 9252:8c659649649e
(server-switch-buffer): Don't go to an invisible frame.
Move to a non-dedicated window if possible.
Otherwise, make the window non-dedicated.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 04 Oct 1994 04:20:21 +0000 |
parents | 14b8f8a28ace |
children | 7c4393810151 |
comparison
equal
deleted
inserted
replaced
9251:2ecfcd3f778c | 9252:8c659649649e |
---|---|
329 prevent a backup for it.) The variable `server-temp-file-regexp' controls | 329 prevent a backup for it.) The variable `server-temp-file-regexp' controls |
330 which filenames are considered temporary. | 330 which filenames are considered temporary. |
331 | 331 |
332 If invoked with a prefix argument, or if there is no server process running, | 332 If invoked with a prefix argument, or if there is no server process running, |
333 starts server process and that is all. Invoked by \\[server-edit]." | 333 starts server process and that is all. Invoked by \\[server-edit]." |
334 | |
335 (interactive "P") | 334 (interactive "P") |
336 (if (or arg | 335 (if (or arg |
337 (not server-process) | 336 (not server-process) |
338 (memq (process-status server-process) '(signal exit))) | 337 (memq (process-status server-process) '(signal exit))) |
339 (server-start nil) | 338 (server-start nil) |
345 (cond ((windowp server-window) | 344 (cond ((windowp server-window) |
346 (select-window server-window)) | 345 (select-window server-window)) |
347 ((framep server-window) | 346 ((framep server-window) |
348 (select-window (frame-selected-window server-window)))) | 347 (select-window (frame-selected-window server-window)))) |
349 (if (window-minibuffer-p (selected-window)) | 348 (if (window-minibuffer-p (selected-window)) |
350 (select-window (next-window nil 'nomini t))) | 349 (select-window (next-window nil 'nomini 0))) |
350 ;; Move to a non-dedicated window, if we have one. | |
351 (let ((last-window (previous-window nil 'nomini 0))) | |
352 (while (and (window-dedicated-p (selected-window)) | |
353 (not (eq last-window (selected-window)))) | |
354 (select-window (next-window nil 'nomini 0)))) | |
355 (set-window-dedicated-p (selected-window) nil) | |
351 (if next-buffer | 356 (if next-buffer |
352 (if (and (bufferp next-buffer) | 357 (if (and (bufferp next-buffer) |
353 (buffer-name next-buffer)) | 358 (buffer-name next-buffer)) |
354 (switch-to-buffer next-buffer) | 359 (switch-to-buffer next-buffer) |
355 ;; If NEXT-BUFFER is a dead buffer, | 360 ;; If NEXT-BUFFER is a dead buffer, |