diff options
author | Nick Mainsbridge <beatroute@iprimus.com.au> | 2008-10-22 18:24:30 +0000 |
---|---|---|
committer | Nick Mainsbridge <beatroute@iprimus.com.au> | 2008-10-22 18:24:30 +0000 |
commit | 33d02c79023f0763321ffc31024ead0f11999f29 (patch) | |
tree | 7bb669c4aadeeba2b48845da637cf24890311254 /gtk2_ardour | |
parent | 6dce8160cff198ebbf1c8b7e045d2b2eac91624f (diff) |
Fix repeated toggling of visual state (zoom to region for example), fix zoom to region with width and height.
git-svn-id: svn://localhost/ardour2/branches/3.0@3998 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/editor.cc | 1 | ||||
-rw-r--r-- | gtk2_ardour/editor_ops.cc | 9 |
2 files changed, 3 insertions, 7 deletions
diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index 8b1bbef831..c27c5cf272 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -4537,6 +4537,7 @@ Editor::use_visual_state (VisualState& vs) set_zoom_focus (vs.zoom_focus); reposition_and_zoom (vs.leftmost_frame, vs.frames_per_unit); + zoomed_to_region = vs.zoomed_to_region; for (list<TAVState>::iterator i = vs.track_states.begin(); i != vs.track_states.end(); ++i) { TrackViewList::iterator t; diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index 952df81aab..283935af77 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -1729,7 +1729,6 @@ Editor::temporal_zoom_region (bool both_axes) nframes64_t end = 0; RegionSelection rs; set<TimeAxisView*> tracks; - double top_y_position = DBL_MAX; get_regions_for_action (rs); @@ -1748,10 +1747,6 @@ Editor::temporal_zoom_region (bool both_axes) } tracks.insert (&((*i)->get_time_axis_view())); - - if ((*i)->get_time_axis_view().y_position < top_y_position) { - top_y_position = (*i)->get_time_axis_view().y_position; - } } /* now comes an "interesting" hack ... make sure we leave a little space @@ -1796,7 +1791,7 @@ Editor::temporal_zoom_region (bool both_axes) temporal_zoom_by_frame (start, end, "zoom to region"); if (both_axes) { - uint32_t per_track_height = (uint32_t) floor ((canvas_height - 10.0) / tracks.size()); + uint32_t per_track_height = (uint32_t) floor ((canvas_height - canvas_timebars_vsize - 10.0) / tracks.size()); /* set visible track heights appropriately */ @@ -1817,7 +1812,7 @@ Editor::temporal_zoom_region (bool both_axes) no_route_list_redisplay = false; redisplay_route_list (); - vertical_adjustment.set_value (std::max (top_y_position - 5.0, 0.0)); + vertical_adjustment.set_value (0.0); no_save_visual = false; } |