Window focus handling fixes.

Many windows were not getting key events.
Use magic focus infrastructure (built for widgets) to deliver key events
via window focus in/out.
This commit is contained in:
nick_m 2015-04-02 02:41:49 +11:00
parent 9a4827374c
commit 35f69656e8
11 changed files with 91 additions and 52 deletions

View file

@ -42,10 +42,9 @@ class ArdourDialog : public Gtk::Dialog, public ARDOUR::SessionHandlePtr
ArdourDialog (Gtk::Window& parent, std::string title, bool modal = false, bool use_separator = false);
~ArdourDialog();
bool on_enter_notify_event (GdkEventCrossing*);
bool on_leave_notify_event (GdkEventCrossing*);
bool on_focus_in_event (GdkEventFocus*);
bool on_focus_out_event (GdkEventFocus*);
bool on_delete_event (GdkEventAny*);
bool on_key_press_event (GdkEventKey*);
void on_unmap ();
void on_show ();