summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorNick Mainsbridge <beatroute@iprimus.com.au>2008-10-22 18:24:30 +0000
committerNick Mainsbridge <beatroute@iprimus.com.au>2008-10-22 18:24:30 +0000
commit33d02c79023f0763321ffc31024ead0f11999f29 (patch)
tree7bb669c4aadeeba2b48845da637cf24890311254 /gtk2_ardour
parent6dce8160cff198ebbf1c8b7e045d2b2eac91624f (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.cc1
-rw-r--r--gtk2_ardour/editor_ops.cc9
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;
}