Fix internal/external snap type restoration.
authorDavid Robillard <d@drobilla.net>
Thu, 8 Jan 2015 00:51:18 +0000 (19:51 -0500)
committerDavid Robillard <d@drobilla.net>
Thu, 8 Jan 2015 00:51:18 +0000 (19:51 -0500)
gtk2_ardour/editor.cc
gtk2_ardour/editor.h

index 1c9af5af9dd433cc6a4b3d2c02f15a7b6d6fd8c7..b7ec7d43b2bed3f24be865413ad6ddc10a1331d1 100644 (file)
@@ -680,7 +680,6 @@ Editor::Editor ()
        _snap_mode = SnapOff;
        set_snap_mode (_snap_mode);
        set_mouse_mode (MouseObject, true);
-        pre_internal_mouse_mode = MouseObject;
         pre_internal_snap_type = _snap_type;
         pre_internal_snap_mode = _snap_mode;
         internal_snap_type = _snap_type;
@@ -2038,6 +2037,12 @@ Editor::set_snap_to (SnapType st)
 {
        unsigned int snap_ind = (unsigned int)st;
 
+       if (internal_editing()) {
+               internal_snap_type = st;
+       } else {
+               pre_internal_snap_type = st;
+       }
+
        _snap_type = st;
 
        if (snap_ind > snap_type_strings.size() - 1) {
index 43b3182c96a93a35415486a0629b8922f6a18297..9261b01a7e44b390685cb7f5ddb788d0e34c07c2 100644 (file)
@@ -572,7 +572,6 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD
        void set_samples_per_pixel (framecnt_t);
 
        Editing::MouseMode mouse_mode;
-       Editing::MouseMode pre_internal_mouse_mode;
        Editing::SnapType  pre_internal_snap_type;
        Editing::SnapMode  pre_internal_snap_mode;
        Editing::SnapType  internal_snap_type;