summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_canvas.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/editor_canvas.cc')
-rw-r--r--gtk2_ardour/editor_canvas.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/gtk2_ardour/editor_canvas.cc b/gtk2_ardour/editor_canvas.cc
index f761cfd42b..9cd23e0112 100644
--- a/gtk2_ardour/editor_canvas.cc
+++ b/gtk2_ardour/editor_canvas.cc
@@ -698,6 +698,22 @@ Editor::entered_track_canvas (GdkEventCrossing */*ev*/)
}
void
+Editor::ensure_time_axis_view_is_visible (const TimeAxisView& tav)
+{
+ double begin = tav.y_position();
+
+ double v = vertical_adjustment.get_value ();
+
+ if (begin < v || begin > v + _canvas_height) {
+ /* try to put the TimeAxisView roughly central */
+ if (begin >= _canvas_height/2.0) {
+ begin -= _canvas_height/2.0;
+ }
+ vertical_adjustment.set_value (begin);
+ }
+}
+
+void
Editor::tie_vertical_scrolling ()
{
scroll_canvas_vertically ();