diff options
| author | Martin Rudalics | 2025-05-27 10:45:04 +0200 |
|---|---|---|
| committer | Martin Rudalics | 2025-05-27 10:45:04 +0200 |
| commit | 93934b645bcda5cc07ead14c35615a44efae0681 (patch) | |
| tree | 9254bd1dc9a1a9f3d17d3049981969dafade2370 | |
| parent | 42a002f31f0931c6ef2dedc55d20ab8ae046cbab (diff) | |
| download | emacs-93934b645bcda5cc07ead14c35615a44efae0681.tar.gz emacs-93934b645bcda5cc07ead14c35615a44efae0681.zip | |
Have 'delete-other-frames' only delete frames on same terminal (Bug#78583)
* lisp/frame.el (delete-other-frames): Only delete frames on
same terminal as FRAME's (Bug#78583).
| -rw-r--r-- | lisp/frame.el | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lisp/frame.el b/lisp/frame.el index 6a746023902..ec582096110 100644 --- a/lisp/frame.el +++ b/lisp/frame.el | |||
| @@ -2837,12 +2837,14 @@ deleting them." | |||
| 2837 | (interactive "i\nP") | 2837 | (interactive "i\nP") |
| 2838 | (setq frame (window-normalize-frame frame)) | 2838 | (setq frame (window-normalize-frame frame)) |
| 2839 | (let ((minibuffer-frame (window-frame (minibuffer-window frame))) | 2839 | (let ((minibuffer-frame (window-frame (minibuffer-window frame))) |
| 2840 | (terminal (frame-terminal frame)) | ||
| 2840 | (parent (frame-parent frame)) | 2841 | (parent (frame-parent frame)) |
| 2841 | (frames (frame-list))) | 2842 | (frames (frame-list))) |
| 2842 | ;; In a first round consider minibuffer-less frames only. | 2843 | ;; In a first round consider minibuffer-less frames only. |
| 2843 | (dolist (this frames) | 2844 | (dolist (this frames) |
| 2844 | (unless (or (eq this frame) | 2845 | (unless (or (eq this frame) |
| 2845 | (eq this minibuffer-frame) | 2846 | (eq this minibuffer-frame) |
| 2847 | (not (eq (frame-terminal this) terminal)) | ||
| 2846 | (eq (window-frame (minibuffer-window this)) this) | 2848 | (eq (window-frame (minibuffer-window this)) this) |
| 2847 | ;; When FRAME is a child frame, delete its siblings | 2849 | ;; When FRAME is a child frame, delete its siblings |
| 2848 | ;; only. | 2850 | ;; only. |
| @@ -2854,6 +2856,7 @@ deleting them." | |||
| 2854 | (dolist (this frames) | 2856 | (dolist (this frames) |
| 2855 | (unless (or (eq this frame) | 2857 | (unless (or (eq this frame) |
| 2856 | (eq this minibuffer-frame) | 2858 | (eq this minibuffer-frame) |
| 2859 | (not (eq (frame-terminal this) terminal)) | ||
| 2857 | ;; When FRAME is a child frame, delete its siblings | 2860 | ;; When FRAME is a child frame, delete its siblings |
| 2858 | ;; only. | 2861 | ;; only. |
| 2859 | (and parent (not (eq (frame-parent this) parent))) | 2862 | (and parent (not (eq (frame-parent this) parent))) |