From aaff07f2c96128414dedb2badccdc36f618e297f Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 15 Sep 2023 09:59:59 -0600 Subject: [PATCH] editor cursors: fix position computation The cairo 0.5 pixel offset for odd-width lines is handled by Canvas::Line and is not needed in the EditorCursor code --- gtk2_ardour/editor_cursors.cc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gtk2_ardour/editor_cursors.cc b/gtk2_ardour/editor_cursors.cc index 9159b2cb06..39de7942e9 100644 --- a/gtk2_ardour/editor_cursors.cc +++ b/gtk2_ardour/editor_cursors.cc @@ -81,12 +81,14 @@ EditorCursor::~EditorCursor () void EditorCursor::set_position (samplepos_t sample) { - if (_current_sample != sample) { PositionChanged (sample); } + if (_current_sample != sample) { + PositionChanged (sample); + } - double const new_pos = _editor.sample_to_pixel_unrounded (sample); + const double new_pos = _editor.sample_to_pixel (sample); - if (rint(new_pos) != rint(_track_canvas_item->x ())) { - _track_canvas_item->set_x (new_pos + 0.5); //accommodate the 1/2 pixel "line" offset in cairo + if (new_pos != _track_canvas_item->x ()) { + _track_canvas_item->set_x (new_pos); } _current_sample = sample;