diff options
| author | Stefan Monnier <monnier@iro.umontreal.ca> | 2007-10-02 20:43:54 +0000 |
|---|---|---|
| committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2007-10-02 20:43:54 +0000 |
| commit | de509a6071aa4d046e666860468bb7d8bf134e02 (patch) | |
| tree | 8f62462bd3b3dfb6d058ebc8a1d0b4f9f5f3c14f | |
| parent | 766ec949f8ce882abcac06aebe208fc4a39b47a9 (diff) | |
| download | emacs-de509a6071aa4d046e666860468bb7d8bf134e02.tar.gz | |
(candidate_window_p): Only consider as visible frames that
are on the same terminal.
| -rw-r--r-- | src/window.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/window.c b/src/window.c index 0bec3948518..ca4c41f5e79 100644 --- a/src/window.c +++ b/src/window.c @@ -36,6 +36,7 @@ Boston, MA 02110-1301, USA. */ #include "dispextern.h" #include "blockinput.h" #include "intervals.h" +#include "termhooks.h" /* For FRAME_TERMINAL. */ #ifdef HAVE_X_WINDOWS #include "xterm.h" @@ -1794,7 +1795,10 @@ candidate_window_p (window, owindow, minibuf, all_frames) else if (EQ (all_frames, Qvisible)) { FRAME_SAMPLE_VISIBILITY (f); - candidate_p = FRAME_VISIBLE_P (f); + candidate_p = FRAME_VISIBLE_P (f) + && (FRAME_TERMINAL (XFRAME (w->frame)) + == FRAME_TERMINAL (XFRAME (selected_frame))); + } else if (INTEGERP (all_frames) && XINT (all_frames) == 0) { @@ -1810,7 +1814,9 @@ candidate_window_p (window, owindow, minibuf, all_frames) || (FRAME_X_P (f) && f->output_data.x->asked_for_visible && !f->output_data.x->has_been_visible) #endif - ); + ) + && (FRAME_TERMINAL (XFRAME (w->frame)) + == FRAME_TERMINAL (XFRAME (selected_frame))); } else if (WINDOWP (all_frames)) candidate_p = (EQ (FRAME_MINIBUF_WINDOW (f), all_frames) |
