]> git.lyx.org Git - features.git/blobdiff - src/RowPainter.cpp
Avoid rounding issue when painting selection
[features.git] / src / RowPainter.cpp
index 91dfb63e4d5331c6f4d9808394380ca360c67437..55155716bea43c2a7afac6cc6055210b0a3c2de7 100644 (file)
@@ -640,8 +640,9 @@ void RowPainter::paintSelection() const
                        double x2 = e.pos2x(to);
                        if (x1 > x2)
                                swap(x1, x2);
-                       pi_.pain.fillRectangle(int(x + x1), y1, int(x2 - x1), y2 - y1,
-                                              Color_selection);
+                       // the 3rd argument is written like that to avoid rounding issues
+                       pi_.pain.fillRectangle(int(x + x1), y1, int(x2 + x) - int(x1 + x),
+                                              y2 - y1, Color_selection);
                }
                x += e.full_width();
        }