diff options
Diffstat (limited to 'gtk2_ardour/editor_canvas.cc')
-rw-r--r-- | gtk2_ardour/editor_canvas.cc | 16 |
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 (); |