, _pointer_frame_offset (0)
, _trackview_only (trackview_only)
, _move_threshold_passed (false)
- , _starting_point_passed (false)
+ , _starting_point_passed (false)
+ , _initially_vertical (false)
, _was_double_click (false)
, _raw_grab_frame (0)
, _grab_frame (0)
if (active (_editor->mouse_mode) && _move_threshold_passed) {
if (event->motion.state & Gdk::BUTTON1_MASK || event->motion.state & Gdk::BUTTON2_MASK) {
+
+ if (old_move_threshold_passed != _move_threshold_passed) {
+
+ /* just changed */
+
+ if (fabs (current_pointer_y() - _grab_y) > fabs (current_pointer_x() - _grab_x)) {
+ _initially_vertical = true;
+ } else {
+ _initially_vertical = false;
+ }
+
+ cerr << "IV = " << _initially_vertical << endl;
+ }
+
if (!from_autoscroll) {
_editor->maybe_autoscroll (true, allow_vertical_autoscroll (), false);
}
-
+
if (!_editor->autoscroll_active() || from_autoscroll) {
+
- bool first_move = (_move_threshold_passed != old_move_threshold_passed) ||
- from_autoscroll;
+ bool first_move = (_move_threshold_passed != old_move_threshold_passed) || from_autoscroll;
+
motion (event, first_move && !_starting_point_passed);
if (first_move && !_starting_point_passed) {
* @param c true to make copies of the regions being moved, otherwise false.
*/
RegionMoveDrag::RegionMoveDrag (Editor* e, ArdourCanvas::Item* i, RegionView* p, list<RegionView*> const & v, bool b, bool c)
- : RegionMotionDrag (e, i, p, v, b),
- _copy (c)
+ : RegionMotionDrag (e, i, p, v, b)
+ , _copy (c)
{
DEBUG_TRACE (DEBUG::Drags, "New RegionMoveDrag\n");