diff --git a/src/servers/app/drawing/Painter/Painter.cpp b/src/servers/app/drawing/Painter/Painter.cpp index 510dab8227..f8a6943b36 100644 --- a/src/servers/app/drawing/Painter/Painter.cpp +++ b/src/servers/app/drawing/Painter/Painter.cpp @@ -342,12 +342,22 @@ Painter::StrokeLine(BPoint a, BPoint b) return _Clipped(touched); } } + // do the pixel center offset here - a.x += 0.5; - a.y += 0.5; - b.x += 0.5; - b.y += 0.5; - + // TODO review this : + // in case it's the same pixel, we offset differently to have something drawn + if (a == b) { + a.x += 0.25; + a.y += 0.25; + b.x += 0.75; + b.y += 0.75; + } else { + a.x += 0.5; + a.y += 0.5; + b.x += 0.5; + b.y += 0.5; + } + agg::path_storage path; path.move_to(a.x, a.y); path.line_to(b.x, b.y);