# HG changeset patch # User Jim Blandy # Date 732696784 0 # Node ID 872a3a2c3fedb9402269252e047829f1de28d76e # Parent bb88d48c290fb903c0adbe5664bb617f056ff3c4 * frame.c (Fhandle_switch_frame): Renamed from Fselect_frame. Doc changed in anticipation of new purpose. (Fselect_frame): Just call Fhandle_switch_frame for now. diff -r bb88d48c290f -r 872a3a2c3fed src/frame.c --- a/src/frame.c Sun Mar 21 06:50:50 1993 +0000 +++ b/src/frame.c Sun Mar 21 06:53:04 1993 +0000 @@ -324,17 +324,27 @@ } DEFUN ("select-frame", Fselect_frame, Sselect_frame, 1, 2, "e", - "Select the frame FRAME. FRAME's selected window becomes \"the\"\n\ -selected window. If the optional parameter NO-ENTER is non-nil, don't\n\ -focus on that frame.\n\ + "Select the frame FRAME.\n\ +Subseqent editing commands apply to its selected window.\n\ +The selection of FRAME lasts until the next time the user does\n\ +something to select a different frame, or until the next time this\n\ +function is called.") + (frame, no_enter) + Lisp_Object frame, no_enter; +{ + return Fhandle_switch_frame (frame, no_enter); +} + + +DEFUN ("handle-switch-frame", Fhandle_switch_frame, Shandle_switch_frame, 1, 2, "e", + "Handle a switch-frame event EVENT.\n\ +Switch-frame events is usually bound to this function.\n\ +A switch-frame event tells Emacs that the window manager has requested\n\ +that the user's events be directed to the frame mentioned in the event.\n\ +This function selects the selected window of the frame of EVENT.\n\ \n\ -This function is interactive, and may be bound to the ``switch-frame''\n\ -event; when invoked this way, it switches to the frame named in the\n\ -event. When called from lisp, FRAME may be a ``switch-frame'' event;\n\ -if it is, select the frame named in the event.\n\ -\n\ -Changing the selected frame can change focus redirections. See\n\ -`redirect-frame-focus' for details.") +If EVENT is frame object, handle it as if it were a switch-frame event\n\ +to that frame.") (frame, no_enter) Lisp_Object frame, no_enter; { @@ -641,7 +651,7 @@ /* Don't let the frame remain selected. */ if (f == selected_frame) - Fselect_frame (next_frame (frame, Qt), Qnil); + Fhandle_switch_frame (next_frame (frame, Qt), Qnil); /* Don't allow minibuf_window to remain on a deleted frame. */ if (EQ (f->minibuffer_window, minibuf_window)) @@ -1463,6 +1473,7 @@ defsubr (&Sframep); defsubr (&Sframe_live_p); + defsubr (&Shandle_switch_frame); defsubr (&Sselect_frame); defsubr (&Sselected_frame); defsubr (&Swindow_frame); @@ -1503,7 +1514,7 @@ keys_of_frame () { - initial_define_lispy_key (global_map, "switch-frame", "select-frame"); + initial_define_lispy_key (global_map, "switch-frame", "handle-switch-frame"); } #else /* not MULTI_FRAME */