aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/keyboard.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index 780d76dbb5c..1ec7bfd4aa3 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -544,6 +544,7 @@ Lisp_Object Qswitch_frame;
544Lisp_Object Qdelete_frame; 544Lisp_Object Qdelete_frame;
545Lisp_Object Qiconify_frame; 545Lisp_Object Qiconify_frame;
546Lisp_Object Qmake_frame_visible; 546Lisp_Object Qmake_frame_visible;
547Lisp_Object Qselect_window;
547Lisp_Object Qhelp_echo; 548Lisp_Object Qhelp_echo;
548 549
549/* Symbols to denote kinds of events. */ 550/* Symbols to denote kinds of events. */
@@ -3791,6 +3792,14 @@ kbd_buffer_get_event (kbp, used_mouse_menu)
3791 internal_last_event_frame = frame; 3792 internal_last_event_frame = frame;
3792 kbd_fetch_ptr = event + 1; 3793 kbd_fetch_ptr = event + 1;
3793 } 3794 }
3795 else if (event->kind == SELECT_WINDOW_EVENT)
3796 {
3797 /* Make an event (select-window (WINDOW)). */
3798 obj = Fcons (event->frame_or_window, Qnil);
3799 obj = Fcons (Qselect_window, Fcons (obj, Qnil));
3800
3801 kbd_fetch_ptr = event + 1;
3802 }
3794 else 3803 else
3795 { 3804 {
3796 /* If this event is on a different frame, return a switch-frame this 3805 /* If this event is on a different frame, return a switch-frame this
@@ -10302,7 +10311,8 @@ struct event_head head_table[] = {
10302 {&Qswitch_frame, "switch-frame", &Qswitch_frame}, 10311 {&Qswitch_frame, "switch-frame", &Qswitch_frame},
10303 {&Qdelete_frame, "delete-frame", &Qdelete_frame}, 10312 {&Qdelete_frame, "delete-frame", &Qdelete_frame},
10304 {&Qiconify_frame, "iconify-frame", &Qiconify_frame}, 10313 {&Qiconify_frame, "iconify-frame", &Qiconify_frame},
10305 {&Qmake_frame_visible, "make-frame-visible", &Qmake_frame_visible} 10314 {&Qmake_frame_visible, "make-frame-visible", &Qmake_frame_visible},
10315 {&Qselect_window, "select-window", &Qselect_window}
10306}; 10316};
10307 10317
10308void 10318void
@@ -10968,6 +10978,8 @@ keys_of_keyboard ()
10968 "ignore-event"); 10978 "ignore-event");
10969 initial_define_lispy_key (Vspecial_event_map, "make-frame-visible", 10979 initial_define_lispy_key (Vspecial_event_map, "make-frame-visible",
10970 "ignore-event"); 10980 "ignore-event");
10981 initial_define_lispy_key (Vspecial_event_map, "select-window",
10982 "handle-select-window");
10971 initial_define_lispy_key (Vspecial_event_map, "save-session", 10983 initial_define_lispy_key (Vspecial_event_map, "save-session",
10972 "handle-save-session"); 10984 "handle-save-session");
10973} 10985}