Function: make-frame-invisible
make-frame-invisible is an interactive function defined in frame.c.
Signature
(make-frame-invisible &optional FRAME FORCE)
Documentation
Make the frame FRAME invisible.
If omitted, FRAME defaults to the currently selected frame. On graphical displays, invisible frames are not updated and are usually not displayed at all, even in a window system's "taskbar".
Normally you may not make FRAME invisible if all other frames are invisible, but if the second optional argument FORCE is non-nil, you may do so.
On a text terminal make FRAME invisible if and only if FRAME is a child frame. If, in that case, FRAME is the selected frame, select the first visible ancestor of FRAME instead.
Key Bindings
Source Code
// Defined in /usr/src/emacs/src/frame.c
{
struct frame *f = decode_live_frame (frame);
XSETFRAME (frame, f);
if (NILP (force) && !other_frames (f, true, false))
error ("Attempt to make invisible the sole visible or iconified frame");
if (FRAME_WINDOW_P (f) && FRAME_TERMINAL (f)->frame_visible_invisible_hook)
FRAME_TERMINAL (f)->frame_visible_invisible_hook (f, false);
if (is_tty_child_frame (f))
{
SET_FRAME_VISIBLE (f, false);
if (EQ (frame, selected_frame))
/* If FRAME is a tty child frame and the selected frame, we have
to select another frame instead. Use the first visible
ancestor as returned by 'mru_rooted_frame'. */
Fselect_frame (mru_rooted_frame (f), Qnil);
}
/* Make menu bar update for the Buffers and Frames menus. */
windows_or_buffers_changed = 16;
return Qnil;
}