Next: , Previous: Deleting Frames, Up: Frames


29.6 Finding All Frames

— Function: frame-list

The function frame-list returns a list of all the frames that have not been deleted. It is analogous to buffer-list for buffers, and includes frames on all terminals. The list that you get is newly created, so modifying the list doesn't have any effect on the internals of Emacs.

— Function: visible-frame-list

This function returns a list of just the currently visible frames. See Visibility of Frames. (Terminal frames always count as “visible”, even though only the selected one is actually displayed.)

— Function: next-frame &optional frame minibuf

The function next-frame lets you cycle conveniently through all the frames on the current display from an arbitrary starting point. It returns the “next” frame after frame in the cycle. If frame is omitted or nil, it defaults to the selected frame (see Input Focus).

The second argument, minibuf, says which frames to consider:

nil
Exclude minibuffer-only frames.
visible
Consider all visible frames.
0
Consider all visible or iconified frames.
a window
Consider only the frames using that particular window as their minibuffer.
anything else
Consider all frames.

— Function: previous-frame &optional frame minibuf

Like next-frame, but cycles through all frames in the opposite direction.

See also next-window and previous-window, in Cyclic Window Ordering.