summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/ardour_dropdown.cc11
-rw-r--r--gtk2_ardour/ardour_dropdown.h4
-rw-r--r--gtk2_ardour/midi_time_axis.cc2
3 files changed, 16 insertions, 1 deletions
diff --git a/gtk2_ardour/ardour_dropdown.cc b/gtk2_ardour/ardour_dropdown.cc
index 78100aa952..5c0e25fd24 100644
--- a/gtk2_ardour/ardour_dropdown.cc
+++ b/gtk2_ardour/ardour_dropdown.cc
@@ -49,6 +49,7 @@ using namespace std;
ArdourDropdown::ArdourDropdown (Element e)
+ : _scrolling_disabled(false)
{
// signal_button_press_event().connect (sigc::mem_fun(*this, &ArdourDropdown::on_mouse_pressed));
@@ -74,6 +75,10 @@ ArdourDropdown::on_scroll_event (GdkEventScroll* ev)
{
using namespace Menu_Helpers;
+ if (_scrolling_disabled) {
+ return false;
+ }
+
const MenuItem * current_active = _menu.get_active();
const MenuList& items = _menu.items ();
int c = 0;
@@ -142,4 +147,8 @@ ArdourDropdown::AddMenuElem (Menu_Helpers::Element e)
items.push_back (e);
}
-
+void
+ArdourDropdown::disable_scrolling()
+{
+ _scrolling_disabled = true;
+}
diff --git a/gtk2_ardour/ardour_dropdown.h b/gtk2_ardour/ardour_dropdown.h
index 7069768610..638f54c8b9 100644
--- a/gtk2_ardour/ardour_dropdown.h
+++ b/gtk2_ardour/ardour_dropdown.h
@@ -42,8 +42,12 @@ class ArdourDropdown : public ArdourButton
void clear_items ();
void AddMenuElem (Gtk::Menu_Helpers::Element e);
+ void disable_scrolling();
+
private:
Gtk::Menu _menu;
+
+ bool _scrolling_disabled;
};
#endif /* __gtk2_ardour_ardour_dropdown_h__ */
diff --git a/gtk2_ardour/midi_time_axis.cc b/gtk2_ardour/midi_time_axis.cc
index 9564ed239c..8ff5d56d70 100644
--- a/gtk2_ardour/midi_time_axis.cc
+++ b/gtk2_ardour/midi_time_axis.cc
@@ -121,6 +121,8 @@ MidiTimeAxisView::MidiTimeAxisView (PublicEditor& ed, Session* sess, ArdourCanva
, controller_menu (0)
, _step_editor (0)
{
+ _midnam_model_selector.disable_scrolling();
+ _midnam_custom_device_mode_selector.disable_scrolling();
}
void