Fix scrollwheel operation in editor.
[ardour.git] / gtk2_ardour / editor_keyboard.cc
index 32b797a1a0d5d059b5a8d24418a8bae66df047e9..a721c54ab79685f0038dfb759c731800e9dc45db 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2004 Paul Davis 
+    Copyright (C) 2004 Paul Davis
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -19,6 +19,7 @@
 
 #include "ardour/audioregion.h"
 #include "ardour/playlist.h"
+#include "ardour/session.h"
 #include "ardour/location.h"
 
 #include "pbd/memento_command.h"
@@ -27,6 +28,7 @@
 #include "region_view.h"
 #include "selection.h"
 #include "keyboard.h"
+#include "editor_drag.h"
 
 #include "i18n.h"
 
@@ -50,10 +52,11 @@ Editor::kbd_driver (sigc::slot<void,GdkEvent*> theslot, bool use_track_canvas, b
 
        /* any use of "keyboard mouse buttons" invalidates an existing grab
        */
-       
-       if (drag_info.item) {
-               drag_info.item->ungrab (GDK_CURRENT_TIME);
-               drag_info.item = 0;
+
+       if (_drag) {
+               _drag->item()->ungrab (GDK_CURRENT_TIME);
+               delete _drag;
+               _drag = 0;
        }
 
        if (doit) {
@@ -99,16 +102,16 @@ Editor::kbd_mute_unmute_region ()
                commit_reversible_command ();
 
        } else if (entered_regionview) {
-               
+
                begin_reversible_command (_("mute region"));
                XMLNode &before = entered_regionview->region()->playlist()->get_state();
-               
+
                entered_regionview->region()->set_muted (!entered_regionview->region()->muted());
-               
+
                XMLNode &after = entered_regionview->region()->playlist()->get_state();
                session->add_command (new MementoCommand<ARDOUR::Playlist>(*(entered_regionview->region()->playlist()), &before, &after));
                commit_reversible_command();
-               
+
        }
 }