unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#5567: `next-window' does not behave as documented WRT visible frames
@ 2010-02-12  1:14 Michael Shields
  2011-03-06  2:15 ` Glenn Morris
  0 siblings, 1 reply; 2+ messages in thread
From: Michael Shields @ 2010-02-12  1:14 UTC (permalink / raw)
  To: 5567


[-- Attachment #1.1: Type: text/plain, Size: 482 bytes --]

`next-window' and related functions like `display-buffer' say in their
docstrings and in the source code comments that an argument of 0 or 'visible
will consider windows on visible or visible-or-iconified frames.  However,
the actual behavior is to consider only frames on the current terminal.  The
attached patch updates the documentation to match the behavior.

Legal note: I have a copyright assignment on file, and my employer, Google,
also has a copyright assignment on file.

[-- Attachment #1.2: Type: text/html, Size: 523 bytes --]

[-- Attachment #2: emacs-next-window.txt --]
[-- Type: text/plain, Size: 7008 bytes --]

# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: shields@msrl.com-20100210003434-sitwjhpd5pkg2qmx
# target_branch: file:///usr/local/google/homedirs/mshields\
#   /opensource/emacs/trunk/
# testament_sha1: f07ce7b3eab9e608d8dca44bb30999296cec1213
# timestamp: 2010-02-09 16:37:04 -0800
# base_revision_id: cyd@stupidchicken.com-20100209015857-\
#   uwzcr43ykr0y1ugv
# 
# Begin patch
=== modified file 'lisp/window.el'
--- lisp/window.el	2010-01-14 18:59:31 +0000
+++ lisp/window.el	2010-02-10 00:34:34 +0000
@@ -105,11 +105,12 @@
 when it is active.
 
 The optional arg ALL-FRAMES t means count windows on all frames.
-If it is `visible', count windows on all visible frames.
-ALL-FRAMES nil or omitted means count only the selected frame,
-plus the minibuffer it uses (which may be on another frame).
-ALL-FRAMES 0 means count all windows in all visible or iconified frames.
-If ALL-FRAMES is anything else, count only the selected frame."
+If it is `visible', count windows on all visible frames on the
+current terminal.  ALL-FRAMES nil or omitted means count only the
+selected frame, plus the minibuffer it uses (which may be on
+another frame).  ALL-FRAMES 0 means count all windows in all
+visible or iconified frames on the current terminal.  If
+ALL-FRAMES is anything else, count only the selected frame."
   (let ((base-window (selected-window)))
     (if (and nomini (eq base-window (minibuffer-window)))
 	(setq base-window (next-window base-window)))
@@ -168,9 +169,9 @@
 ALL-FRAMES t means cycle through all windows on all existing
  frames.
 ALL-FRAMES `visible' means cycle through all windows on all
- visible frames.
+ visible frames on the current terminal.
 ALL-FRAMES 0 means cycle through all windows on all visible and
- iconified frames.
+ iconified frames on the current terminal.
 ALL-FRAMES a frame means cycle through all windows on that frame
  only.
 Anything else means cycle through all windows on WINDOW's frame
@@ -1066,9 +1067,11 @@
 already displayed in some window on one of these frames simply
 return that window.  Possible values of FRAME are:
 
-`visible' - consider windows on all visible frames.
+`visible' - consider windows on all visible frames on the current
+terminal.
 
-0 - consider windows on all visible or iconified frames.
+0 - consider windows on all visible or iconified frames on the
+current terminal.
 
 t - consider windows on all frames.
 
@@ -1078,7 +1081,7 @@
 last non-minibuffer frame\) only.  If, however, either
 `display-buffer-reuse-frames' or `pop-up-frames' is non-nil
 \(non-nil and not graphic-only on a text-only terminal),
-consider all visible or iconified frames."
+consider all visible or iconified frames on the current terminal."
   (interactive "BDisplay buffer:\nP")
   (let* ((can-use-selected-window
 	  ;; The selected window is usable unless either NOT-THIS-WINDOW

=== modified file 'src/window.c'
--- src/window.c	2010-01-13 08:35:10 +0000
+++ src/window.c	2010-02-10 00:34:34 +0000
@@ -1823,8 +1823,10 @@
 
    ALL_FRAMES	t means search all frames,
 		nil means search just current frame,
-		`visible' means search just visible frames,
-		0 means search visible and iconified frames,
+		`visible' means search just visible frames on the
+                current terminal,
+		0 means search visible and iconified frames on the
+                current terminal,
 		a window means search the frame that window belongs to,
 		a frame means consider windows on that frame, only.  */
 
@@ -1891,8 +1893,8 @@
 
 
 /* Decode arguments as allowed by Fnext_window, Fprevious_window, and
-   Fwindow_list.  See there for the meaning of WINDOW, MINIBUF, and
-   ALL_FRAMES.  */
+   Fwindow_list.  See candidate_window_p for the meaning of WINDOW,
+   MINIBUF, and ALL_FRAMES.  */
 
 static void
 decode_next_window_args (window, minibuf, all_frames)
@@ -1927,12 +1929,6 @@
     ;
   else if (!EQ (*all_frames, Qt))
     *all_frames = Qnil;
-
-  /* Now *ALL_FRAMES is t meaning search all frames, nil meaning
-     search just current frame, `visible' meaning search just visible
-     frames, 0 meaning search visible and iconified frames, or a
-     window, meaning search the frame that window belongs to, or a
-     frame, meaning consider windows on that frame, only.  */
 }
 
 
@@ -2032,9 +2028,9 @@
  windows on all frames that share that minibuffer too.
 ALL-FRAMES t means consider all windows on all existing frames.
 ALL-FRAMES `visible' means consider all windows on all visible
- frames.
+ frames on the current terminal.
 ALL-FRAMES 0 means consider all windows on all visible and
- iconified frames.
+ iconified frames on the current terminal.
 ALL-FRAMES a frame means consider all windows on that frame only.
 Anything else means consider all windows on WINDOW's frame and no
  others.

# Begin bundle
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
s7acAhA9y7eK/RaT7l1q6zifqLuSKcKEgJp3hGA=

^ permalink raw reply	[flat|nested] 2+ messages in thread

* bug#5567: `next-window' does not behave as documented WRT visible frames
  2010-02-12  1:14 bug#5567: `next-window' does not behave as documented WRT visible frames Michael Shields
@ 2011-03-06  2:15 ` Glenn Morris
  0 siblings, 0 replies; 2+ messages in thread
From: Glenn Morris @ 2011-03-06  2:15 UTC (permalink / raw)
  To: 5567-done

Version: 24.1

Michael Shields wrote:

> `next-window' and related functions like `display-buffer' say in their
> docstrings and in the source code comments that an argument of 0 or
> 'visible will consider windows on visible or visible-or-iconified
> frames. However, the actual behavior is to consider only frames on the
> current terminal. The attached patch updates the documentation to
> match the behavior.

Thank you for the patch, which is now applied. Sorry for the delay.

> Legal note: I have a copyright assignment on file, and my employer, Google,
> also has a copyright assignment on file.

For the record; your assignment appears to only be for Gnus, not for Emacs.
However, this change is small enough not to need an assignment.





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-03-06  2:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-02-12  1:14 bug#5567: `next-window' does not behave as documented WRT visible frames Michael Shields
2011-03-06  2:15 ` Glenn Morris

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).