From 2e0fa8943a05f2de2f1fd6f2bacd415096d25da0 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Sun, 6 Jun 2021 08:05:59 -0600 Subject: [PATCH] extend API of ARDOUR_UI_UTILS::emulate_key_event() to allow it to pass modifiers too --- gtk2_ardour/utils.cc | 4 ++-- gtk2_ardour/utils.h | 2 +- gtk2_ardour/video_monitor.cc | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/gtk2_ardour/utils.cc b/gtk2_ardour/utils.cc index 1fd4f7c26d..4666c47dc2 100644 --- a/gtk2_ardour/utils.cc +++ b/gtk2_ardour/utils.cc @@ -368,7 +368,7 @@ ARDOUR_UI_UTILS::relay_key_press (GdkEventKey* ev, Gtk::Window* win) } bool -ARDOUR_UI_UTILS::emulate_key_event (unsigned int keyval) +ARDOUR_UI_UTILS::emulate_key_event (unsigned int keyval, int state) { GdkDisplay *display = gtk_widget_get_display (GTK_WIDGET(ARDOUR_UI::instance()->main_window().gobj())); GdkKeymap *keymap = gdk_keymap_get_for_display (display); @@ -385,7 +385,7 @@ ARDOUR_UI_UTILS::emulate_key_event (unsigned int keyval) ev.window = main_window.get_window()->gobj(); ev.send_event = FALSE; ev.time = 0; - ev.state = 0; + ev.state = state; ev.keyval = keyval; ev.length = 0; ev.string = const_cast (""); diff --git a/gtk2_ardour/utils.h b/gtk2_ardour/utils.h index bbf4233398..dbb1366754 100644 --- a/gtk2_ardour/utils.h +++ b/gtk2_ardour/utils.h @@ -82,7 +82,7 @@ void set_color_from_rgba (Gdk::Color&, uint32_t); bool relay_key_press (GdkEventKey* ev, Gtk::Window* win); bool key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev); -bool emulate_key_event (unsigned int); +bool emulate_key_event (unsigned int, int state); Glib::RefPtr get_xpm (std::string); std::vector get_icon_sets (); diff --git a/gtk2_ardour/video_monitor.cc b/gtk2_ardour/video_monitor.cc index 78c90d61fb..fba9892f95 100644 --- a/gtk2_ardour/video_monitor.cc +++ b/gtk2_ardour/video_monitor.cc @@ -266,7 +266,7 @@ VideoMonitor::is_started () void VideoMonitor::forward_keyevent (unsigned int keyval) { - emulate_key_event (keyval); + emulate_key_event (keyval, 0); } void