diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-11-12 20:03:58 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-11-12 20:03:58 +0000 |
commit | b76635a8fd57adab6064b090736bae14af49624c (patch) | |
tree | 93a9f87bdc98806bd7297def611b909a32591058 /gtk2_ardour | |
parent | 94f413a88fce91ef4dc9c698756fe1b5f76c428e (diff) |
fix key handling in region layering dialog; shortcut for pixel_width() called on an empty string
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@6073 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/region_layering_order_editor.cc | 11 | ||||
-rw-r--r-- | gtk2_ardour/utils.cc | 7 |
2 files changed, 12 insertions, 6 deletions
diff --git a/gtk2_ardour/region_layering_order_editor.cc b/gtk2_ardour/region_layering_order_editor.cc index bd846a1c19..17434c112d 100644 --- a/gtk2_ardour/region_layering_order_editor.cc +++ b/gtk2_ardour/region_layering_order_editor.cc @@ -70,8 +70,6 @@ RegionLayeringOrderEditor::~RegionLayeringOrderEditor () void RegionLayeringOrderEditor::row_activated (const TreeModel::Path& path, TreeViewColumn* column) { - cerr << "Row activated\n"; - if (in_row_change) { return; } @@ -127,6 +125,10 @@ RegionLayeringOrderEditor::refill () TreeModel::Row newrow = *(layering_order_model->append()); newrow[layering_order_columns.name] = (*i)->name(); newrow[layering_order_columns.region] = *i; + + if (i == region_list->begin()) { + layering_order_display.get_selection()->select(newrow); + } } in_row_change = false; @@ -152,15 +154,12 @@ bool RegionLayeringOrderEditor::on_key_press_event (GdkEventKey* ev) { if (ev->keyval == GDK_Return) { - cerr << "grab magic key\n"; Keyboard::magic_widget_grab_focus (); } - bool result = key_press_focus_accelerator_handler (the_editor, ev); - cerr << "event handled: " << result << endl; + bool result = key_press_focus_accelerator_handler (*this, ev); if (ev->keyval == GDK_Return) { - cerr << "drop magic focus\n"; Keyboard::magic_widget_drop_focus (); } diff --git a/gtk2_ardour/utils.cc b/gtk2_ardour/utils.cc index 99a56f355e..49bd38b6f4 100644 --- a/gtk2_ardour/utils.cc +++ b/gtk2_ardour/utils.cc @@ -54,6 +54,10 @@ sigc::signal<void> DPIReset; int pixel_width (const ustring& str, Pango::FontDescription& font) { + if (str.empty()) { + return 0; + } + Label foo; Glib::RefPtr<Pango::Layout> layout = foo.create_pango_layout (""); @@ -429,6 +433,9 @@ key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev) if (GTK_IS_ENTRY(focus) || Keyboard::some_magic_widget_has_focus()) { special_handling_of_unmodified_accelerators = true; } +#ifdef DEBUG_ACCELERATOR_HANDLING + cerr << "Focus widget name " << gtk_widget_get_name(focus) << endl; +#endif } #ifdef GTKOSX |