From 6177135857039241849fda418bdaf68ca4b09724 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 24 Feb 2011 19:44:13 +0000 Subject: add DEBUG::Accelerators to mildly cut down on cruft in key_press_focus_accelerator_handler() git-svn-id: svn://localhost/ardour2/branches/3.0@8954 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/debug.cc | 1 + gtk2_ardour/debug.h | 1 + gtk2_ardour/utils.cc | 72 +++++++++++++++------------------------------------- 3 files changed, 22 insertions(+), 52 deletions(-) diff --git a/gtk2_ardour/debug.cc b/gtk2_ardour/debug.cc index 9dac857125..01ec3e331d 100644 --- a/gtk2_ardour/debug.cc +++ b/gtk2_ardour/debug.cc @@ -27,4 +27,5 @@ using namespace std; uint64_t PBD::DEBUG::Drags = PBD::new_debug_bit ("drags"); uint64_t PBD::DEBUG::CutNPaste = PBD::new_debug_bit ("cutnpaste"); +uint64_t PBD::DEBUG::Accelerators = PBD::new_debug_bit ("accelerators"); diff --git a/gtk2_ardour/debug.h b/gtk2_ardour/debug.h index 488cbd202c..e54e98ae0a 100644 --- a/gtk2_ardour/debug.h +++ b/gtk2_ardour/debug.h @@ -28,6 +28,7 @@ namespace PBD { namespace DEBUG { extern uint64_t Drags; extern uint64_t CutNPaste; + extern uint64_t Accelerators; } } diff --git a/gtk2_ardour/utils.cc b/gtk2_ardour/utils.cc index 6d0c0a2103..a8e913148d 100644 --- a/gtk2_ardour/utils.cc +++ b/gtk2_ardour/utils.cc @@ -45,6 +45,7 @@ #include "ardour/filesystem_paths.h" #include "ardour_ui.h" +#include "debug.h" #include "public_editor.h" #include "keyboard.h" #include "utils.h" @@ -599,11 +600,6 @@ key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev) bool special_handling_of_unmodified_accelerators = false; bool allow_activating = true; -#undef DEBUG_ACCELERATOR_HANDLING -#ifdef DEBUG_ACCELERATOR_HANDLING - //bool debug = (getenv ("ARDOUR_DEBUG_ACCELERATOR_HANDLING") != 0); - bool debug=true; -#endif if (focus) { if (GTK_IS_ENTRY(focus) || Keyboard::some_magic_widget_has_focus()) { special_handling_of_unmodified_accelerators = true; @@ -617,18 +613,15 @@ key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev) } #endif -#ifdef DEBUG_ACCELERATOR_HANDLING - if (debug) { - cerr << "Win = " << win << " Key event: code = " << ev->keyval << " state = " << hex << ev->state << dec << " special handling ? " - << special_handling_of_unmodified_accelerators - << " magic widget focus ? " - << Keyboard::some_magic_widget_has_focus() - << " allow_activation ? " - << allow_activating - << endl; - } -#endif - + + DEBUG_TRACE (DEBUG::Accelerators, string_compose ("Win = %1 Key event: code = %2 state = %3 special handling ? %4 magic widget focus %5? allow_activation ? %6\n", + win, + ev->keyval, + ev->state + << special_handling_of_unmodified_accelerators + << Keyboard::some_magic_widget_has_focus() + << allow_activating)); + /* This exists to allow us to override the way GTK handles key events. The normal sequence is: @@ -670,10 +663,8 @@ key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev) guint keyval_without_alt = osx_keyval_without_alt (ev->keyval); if (keyval_without_alt != GDK_VoidSymbol) { -#ifdef DEBUG_ACCELERATOR_HANDLING - cerr << "Remapped " << gdk_keyval_name (ev->keyval) << " to " << gdk_keyval_name (keyval_without_alt) << endl; - -#endif ev->keyval = keyval_without_alt; + DEBUG_TRACE (DEBUG::Accelerators, string_compose ("Remapped %1 to %2\n", gdk_keyval_name (ev->keyval), gdk_keyval_name (keyval_without_alt))); + ev->keyval = keyval_without_alt; } } } @@ -703,11 +694,7 @@ key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev) /* no special handling or there are modifiers in effect: accelerate first */ -#ifdef DEBUG_ACCELERATOR_HANDLING - if (debug) { - cerr << "\tactivate, then propagate\n"; - } -#endif + DEBUG_TRACE (DEBUG::Accelerators, "\tactivate, then propagate\n"); if (allow_activating) { if (gtk_window_activate_key (win, ev)) { @@ -715,46 +702,27 @@ key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev) } } -#ifdef DEBUG_ACCELERATOR_HANDLING - if (debug) { - cerr << "\tnot accelerated, now propagate\n"; - } -#endif + DEBUG_TRACE (DEBUG::Accelerators, "\tnot accelerated, now propagate\n"); + return gtk_window_propagate_key_event (win, ev); } /* no modifiers, propagate first */ -#ifdef DEBUG_ACCELERATOR_HANDLING - if (debug) { - cerr << "\tpropagate, then activate\n"; - } -#endif - if (!gtk_window_propagate_key_event (win, ev)) { -#ifdef DEBUG_ACCELERATOR_HANDLING - if (debug) { - cerr << "\tpropagation didn't handle, so activate\n"; - } -#endif + DEBUG_TRACE (DEBUG::Accelerators, "\tpropagate, then activate\n"); + if (!gtk_window_propagate_key_event (win, ev)) { + DEBUG_TRACE (DEBUG::Accelerators, "\tpropagation didn't handle, so activate\n"); if (allow_activating) { return gtk_window_activate_key (win, ev); } } else { -#ifdef DEBUG_ACCELERATOR_HANDLING - if (debug) { - cerr << "\thandled by propagate\n"; - } -#endif + DEBUG_TRACE (DEBUG::Accelerators, "\thandled by propagate\n"); return true; } -#ifdef DEBUG_ACCELERATOR_HANDLING - if (debug) { - cerr << "\tnot handled\n"; - } -#endif + DEBUG_TRACE (DEBUG::Accelerators, "\tnot handled\n"); return true; } -- cgit v1.2.3